iterative-solver 0.0
 
Loading...
Searching...
No Matches
OptimizeExample.cpp

Example for minimising a function

#include "ExampleProblem.h"
#include <iostream>
#include <molpro/linalg/itsolv/SolverFactory.h>
#include <molpro/mpi.h>
int main(int argc, char* argv[]) {
molpro::mpi::init();
{
auto problem = ExampleProblem(argc > 1 ? std::stoi(argv[1]) : 20);
using Rvector = decltype(problem)::container_t;
Rvector c(problem.n, 0), g(problem.n);
c[0] = 1;
if (not solver->solve(c, g, problem))
std::cout << "failed" << std::endl;
else
std::cout << "converged in " << solver->statistics().iterations << " iterations" << std::endl;
solver->solution(c, g);
}
molpro::mpi::finalize();
}
#include <molpro/linalg/itsolv/SolverFactory-implementation.h>
#include <vector>
std::map<size_t, double>>;
Definition DistrArraySpan.h:7
Factory for creating instances of specific solver implementations from the corresponding Options obje...
Definition SolverFactory.h:74
std::unique_ptr< LinearEigensystem< R, Q, P > > create_LinearEigensystem(const LinearEigensystemOptions &options, const std::shared_ptr< ArrayHandlers< R, Q, P > > &handlers=std::make_shared< molpro::linalg::itsolv::ArrayHandlers< R, Q, P > >())
Definition SolverFactory.h:111