bpp-core  2.2.0
bpp::OneDimensionOptimizationTools Class Reference

Tools of one parameter-functions optimizations. More...

#include <Bpp/Numeric/Function/OneDimensionOptimizationTools.h>

Public Member Functions

 OneDimensionOptimizationTools ()
 
virtual ~OneDimensionOptimizationTools ()
 

Static Public Member Functions

static Bracket bracketMinimum (double a, double b, Function *function, ParameterList parameters)
 Bracket a minimum. More...
 
static unsigned int lineMinimization (DirectionFunction &f1dim, ParameterList &parameters, std::vector< double > &xi, double tolerance, OutputStream *profiler=0, OutputStream *messenger=0, unsigned int verbose=2)
 
static unsigned int lineSearch (DirectionFunction &f1dim, ParameterList &parameters, std::vector< double > &xi, std::vector< double > &gradient, OutputStream *profiler=0, OutputStream *messenger=0, unsigned int verbose=2)
 Search a 'sufficiently low' value for a function in a given direction. More...
 

Static Public Attributes

static double GLIMIT = 100.0
 Maximum magnification allowed for a parabolic-fit step. More...
 

Detailed Description

Tools of one parameter-functions optimizations.

For now, contains only one method to bracket a minimum.

Definition at line 91 of file OneDimensionOptimizationTools.h.

Constructor & Destructor Documentation

◆ OneDimensionOptimizationTools()

bpp::OneDimensionOptimizationTools::OneDimensionOptimizationTools ( )
inline

Definition at line 94 of file OneDimensionOptimizationTools.h.

◆ ~OneDimensionOptimizationTools()

virtual bpp::OneDimensionOptimizationTools::~OneDimensionOptimizationTools ( )
inlinevirtual

Definition at line 95 of file OneDimensionOptimizationTools.h.

Member Function Documentation

◆ bracketMinimum()

Bracket OneDimensionOptimizationTools::bracketMinimum ( double  a,
double  b,
Function function,
ParameterList  parameters 
)
static

Bracket a minimum.

Given a function func, and given distinct initial points x1 and x2, this routine searches in the downhill direction (defined by the function as evaluated at the initial points) and returns a Bracket object with new points a.x, b.x and c.x that bracket a minimum of the function. Also returned are the function values at the three points, a.f, b.f and c.f.

Parameters
a,bTwo initial values for the parameter.
functionThe function to bracket.
parametersThe parameter to use as a variable.
Returns
A bracket object.

Definition at line 63 of file OneDimensionOptimizationTools.cpp.

References bpp::Bracket::a, bpp::NumTools::abs(), bpp::Bracket::b, bpp::Bracket::c, bpp::BracketPoint::f, bpp::NumConstants::GOLDEN_RATIO_PHI(), bpp::NumTools::max(), bpp::Bracket::setA(), bpp::Bracket::setB(), bpp::Bracket::setC(), bpp::NumTools::sign(), bpp::NumConstants::VERY_TINY(), and bpp::BracketPoint::x.

Referenced by bpp::GoldenSectionSearch::doInit(), and bpp::BrentOneDimension::doInit().

◆ lineMinimization()

◆ lineSearch()

unsigned int OneDimensionOptimizationTools::lineSearch ( DirectionFunction f1dim,
ParameterList parameters,
std::vector< double > &  xi,
std::vector< double > &  gradient,
OutputStream profiler = 0,
OutputStream messenger = 0,
unsigned int  verbose = 2 
)
static

Member Data Documentation

◆ GLIMIT

double OneDimensionOptimizationTools::GLIMIT = 100.0
static

Maximum magnification allowed for a parabolic-fit step.

Definition at line 134 of file OneDimensionOptimizationTools.h.


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