Conjugate Gradient minimization. More...

#include <numeric_optimization.h>

Inheritance diagram for SolverConjugateGradient:

Public Member Functions

 SolverConjugateGradient (int, ObjectiveScalarInterface &)
 
 ~SolverConjugateGradient (void)
 
void solve (double *p)
 returns the location of the minimum More...
 
void test (double *x)
 tests the objective function in the neighborhood of the supplied point More...
 
- Public Member Functions inherited from Diagnostic
 Diagnostic (void)
 
void setVerbosity (int verbosity)
 sets the verbosity level for this instance More...
 
int verbosity (void) const
 

Public Attributes

int verbosityLocal
 
double * g
 
double * h
 
double * xi
 
double * pcom
 
double * xicom
 
double * xt
 
double * df
 
int ITMAX
 the maximum allowed number of iterations More...
 
double EPS
 a small number to rectify the special case of converging to exactly zero function value; is a small number that protects against trying to achieve fractional accuracy for a minimum that happens to be exactly zero. More...
 
double TOL
 the tolerance passed to dbrent More...
 
double GOLD
 the default ratio by which successive intervals are magnified in mnbrak More...
 
double GLIMIT
 the maximum magnification allowed for a parabolic-fit step. More...
 
double TINY
 used to prevent any possible division by zero in mnbrak_ More...
 
double FTOL
 convergence tolerance on the function value More...
 
int iter
 the number of iterations that were performed More...
 
double fret
 

Protected Member Functions

double f1dim_ (double x)
 
double df1dim_ (double x)
 
void mov3_ (double &a, double &b, double &c, const double d, const double e, const double f)
 
void dlinmin_ (double *p)
 
double dbrent_ (double, double, double, double, double *)
 
void shft3_ (double &a, double &b, double &c, const double d)
 
void mnbrak_ (double *, double *, double *, double *, double *, double *)
 
- Protected Member Functions inherited from Diagnostic
virtual ~Diagnostic ()=default
 

Protected Attributes

int n_
 number of functions and of unknowns More...
 
ObjectiveScalarInterfaceofp_
 class to contain the function to be minimized More...
 
- Protected Attributes inherited from Diagnostic
int verbosityInstance
 

Detailed Description

Conjugate Gradient minimization.

#include <libpf/core/numeric_optimization.h>

Remarks
Warning
Thread safe:
Extendable:
Platform dependencies:

Constructor & Destructor Documentation

◆ SolverConjugateGradient()

SolverConjugateGradient::SolverConjugateGradient ( int  ,
ObjectiveScalarInterface  
)

◆ ~SolverConjugateGradient()

SolverConjugateGradient::~SolverConjugateGradient ( void  )

Member Function Documentation

◆ dbrent_()

double SolverConjugateGradient::dbrent_ ( double  ,
double  ,
double  ,
double  ,
double *   
)
protected

◆ df1dim_()

double SolverConjugateGradient::df1dim_ ( double  x)
protected

◆ dlinmin_()

void SolverConjugateGradient::dlinmin_ ( double *  p)
protected

◆ f1dim_()

double SolverConjugateGradient::f1dim_ ( double  x)
protected

◆ mnbrak_()

void SolverConjugateGradient::mnbrak_ ( double *  ,
double *  ,
double *  ,
double *  ,
double *  ,
double *   
)
protected

◆ mov3_()

void SolverConjugateGradient::mov3_ ( double &  a,
double &  b,
double &  c,
const double  d,
const double  e,
const double  f 
)
protected

◆ shft3_()

void SolverConjugateGradient::shft3_ ( double &  a,
double &  b,
double &  c,
const double  d 
)
protected

◆ solve()

void SolverConjugateGradient::solve ( double *  p)

returns the location of the minimum

◆ test()

void SolverConjugateGradient::test ( double *  x)

tests the objective function in the neighborhood of the supplied point

Member Data Documentation

◆ df

double * SolverConjugateGradient::df

◆ EPS

double SolverConjugateGradient::EPS

a small number to rectify the special case of converging to exactly zero function value; is a small number that protects against trying to achieve fractional accuracy for a minimum that happens to be exactly zero.

◆ fret

double SolverConjugateGradient::fret

the minimum value of the function

◆ FTOL

double SolverConjugateGradient::FTOL

convergence tolerance on the function value

◆ g

double* SolverConjugateGradient::g

◆ GLIMIT

double SolverConjugateGradient::GLIMIT

the maximum magnification allowed for a parabolic-fit step.

◆ GOLD

double SolverConjugateGradient::GOLD

the default ratio by which successive intervals are magnified in mnbrak

◆ h

double * SolverConjugateGradient::h

◆ iter

int SolverConjugateGradient::iter

the number of iterations that were performed

◆ ITMAX

int SolverConjugateGradient::ITMAX

the maximum allowed number of iterations

◆ n_

int SolverConjugateGradient::n_
protected

number of functions and of unknowns

◆ ofp_

ObjectiveScalarInterface* SolverConjugateGradient::ofp_
protected

class to contain the function to be minimized

◆ pcom

double* SolverConjugateGradient::pcom

◆ TINY

double SolverConjugateGradient::TINY

used to prevent any possible division by zero in mnbrak_

◆ TOL

double SolverConjugateGradient::TOL

the tolerance passed to dbrent

◆ verbosityLocal

int SolverConjugateGradient::verbosityLocal

◆ xi

double * SolverConjugateGradient::xi

◆ xicom

double * SolverConjugateGradient::xicom

◆ xt

double* SolverConjugateGradient::xt

The documentation for this class was generated from the following file: