1
0
mirror of https://github.com/aportelli/LatAnalyze.git synced 2024-09-19 21:25:36 +01:00
LatAnalyze/examples/exMin.cpp

32 lines
685 B
C++

#include <LatAnalyze/Functional/CompiledFunction.hpp>
#include <LatAnalyze/Numerical/GslMinimizer.hpp>
using namespace std;
using namespace Latan;
int main(int argc, char* argv[])
{
string source;
if (argc != 2)
{
cerr << "usage: " << argv[0] << " <function>" << endl;
return EXIT_FAILURE;
}
source = argv[1];
DoubleFunction f = compile(source, 1);
GslMinimizer minimize;
DVec init(1);
double min;
init(0) = 0.1;
minimize.setInit(init);
minimize.setVerbosity(Minimizer::Verbosity::Debug);
min = minimize(f)(0);
cout << "function minimum = " << min << endl;
return EXIT_SUCCESS;
}