This library is in the LinearAlgebra
folder but in fact it concerns
general tools of optimization of univariate and multivariate cost
functionals, which are typically non-linear.
Look at the README.md
file for more details on its usage. It is
rather simple, you need to inherit from some base classes defined in
the library and override some methods to be able to provide the
functional and, when needed, the gradient and the Hessian.
It is a header-only library. To make it available to other examples of the PACS course you need to do
make install
If you want to try some of the examples, follow what is written in the README.md
file to understand how they are constructed. In the forlder src/examples
you have a working Makefile to compile them using the workflow of the course.
Read the original README.md
file form more information on the library.
-To use a third party library to perform numerical computations. You do not need to reinvent the weel, try to build you code leveraging existing available tools.
I have prepared some Makefiles to make this utility similar to the others. But they only do basic things. The developer of CppNumericalSolver
has infact used a different tool to handle automatic compilation and production of documentation: bazel.