Theoretica
Scientific Computing
Loading...
Searching...
No Matches
multi_extrema.h File Reference

Search of extrema of multivariate functions. More...

#include "../core/constants.h"
#include "../autodiff/autodiff.h"
#include "./extrema.h"
#include <functional>

Go to the source code of this file.

Namespaces

namespace  theoretica
 Main namespace of the library which contains all functions and objects.
 

Functions

template<typename Vector = vec<real>, typename ReturnVector = Vector, typename DualObjectiveFunction , autodiff::enable_scalar_field< DualObjectiveFunction > = true>
ReturnVector theoretica::multi_minimize_grad (DualObjectiveFunction f, Vector guess, real gamma=OPTIMIZATION_MINGRAD_GAMMA, real tolerance=OPTIMIZATION_MINGRAD_TOLERANCE, unsigned int max_iter=OPTIMIZATION_MINGRAD_ITER)
 Find a local minimum of the given multivariate function using fixed-step gradient descent.
 
template<typename Vector = vec<real>, typename ReturnVector = Vector, typename DualObjectiveFunction , autodiff::enable_scalar_field< DualObjectiveFunction > = true>
ReturnVector theoretica::multi_maximize_grad (DualObjectiveFunction f, Vector guess, real gamma=OPTIMIZATION_MINGRAD_GAMMA, real tolerance=OPTIMIZATION_MINGRAD_TOLERANCE, unsigned int max_iter=OPTIMIZATION_MINGRAD_ITER)
 Find a local maximum of the given multivariate function using fixed-step gradient descent.
 
template<typename Vector = vec<real>, typename ReturnVector = Vector, typename DualObjectiveFunction , autodiff::enable_scalar_field< DualObjectiveFunction > = true>
ReturnVector theoretica::multi_minimize_lingrad (DualObjectiveFunction f, Vector guess, real tolerance=OPTIMIZATION_MINGRAD_TOLERANCE, unsigned int max_iter=OPTIMIZATION_MINGRAD_ITER)
 Find a local minimum of the given multivariate function using gradient descent with linear search.
 
template<typename Vector = vec<real>, typename ReturnVector = Vector, typename DualObjectiveFunction , autodiff::enable_scalar_field< DualObjectiveFunction > = true>
ReturnVector theoretica::multi_maximize_lingrad (DualObjectiveFunction f, Vector guess, real tolerance=OPTIMIZATION_MINGRAD_TOLERANCE, unsigned int max_iter=OPTIMIZATION_MINGRAD_ITER)
 Find a local maximum of the given multivariate function using gradient descent with linear search.
 
template<typename Vector = vec<real>, typename ReturnVector = Vector, typename DualObjectiveFunction , autodiff::enable_scalar_field< DualObjectiveFunction > = true>
ReturnVector theoretica::multi_minimize (DualObjectiveFunction f, Vector guess, real tolerance=OPTIMIZATION_MINGRAD_TOLERANCE)
 Use the best available algorithm to find a local minimum of the given multivariate function.
 
template<typename Vector = vec<real>, typename ReturnVector = Vector, typename DualObjectiveFunction , autodiff::enable_scalar_field< DualObjectiveFunction > = true>
ReturnVector theoretica::multi_maximize (DualObjectiveFunction f, Vector guess, real tolerance=OPTIMIZATION_MINGRAD_TOLERANCE)
 Use the best available algorithm to find a local maximum of the given multivariate function.
 

Detailed Description

Search of extrema of multivariate functions.