This class implements the Brent's method to find the minimum of a function of a single variable. No knowledge of the derivative is required.
More...
#include <math_BrentMinimum.hxx>
|
| | math_BrentMinimum (const double TolX, const int NbIterations=100, const double ZEPS=1.0e-12) |
| | This constructor should be used in a sub-class to initialize correctly all the fields of this class.
|
| |
| | math_BrentMinimum (const double TolX, const double Fbx, const int NbIterations=100, const double ZEPS=1.0e-12) |
| | This constructor should be used in a sub-class to initialize correctly all the fields of this class. It has to be used if F(Bx) is known.
|
| |
| virtual | ~math_BrentMinimum () |
| | Destructor.
|
| |
| void | Perform (math_Function &F, const double Ax, const double Bx, const double Cx) |
| | Brent minimization is performed on function F from a given bracketing triplet of abscissas Ax, Bx, Cx (such that Bx is between Ax and Cx, F(Bx) is less than both F(Bx) and F(Cx)) The solution is found when: abs(Xi - Xi-1) <= TolX * abs(Xi) + ZEPS;.
|
| |
| virtual bool | IsSolutionReached (math_Function &theFunction) |
| | This method is called at the end of each iteration to check if the solution is found. It can be redefined in a sub-class to implement a specific test to stop the iterations.
|
| |
| bool | IsDone () const |
| | Returns true if the computations are successful, otherwise returns false.
|
| |
| double | Location () const |
| | returns the location value of the minimum. Exception NotDone is raised if the minimum was not found.
|
| |
| double | Minimum () const |
| | returns the value of the minimum. Exception NotDone is raised if the minimum was not found.
|
| |
| int | NbIterations () const |
| | returns the number of iterations really done during the computation of the minimum. Exception NotDone is raised if the minimum was not found.
|
| |
| void | Dump (Standard_OStream &o) const |
| | Prints on the stream o information on the current state of the object. Is used to redefine the operator <<.
|
| |
This class implements the Brent's method to find the minimum of a function of a single variable. No knowledge of the derivative is required.
◆ math_BrentMinimum() [1/2]
| math_BrentMinimum::math_BrentMinimum |
( |
const double | TolX, |
|
|
const int | NbIterations = 100, |
|
|
const double | ZEPS = 1.0e-12 ) |
This constructor should be used in a sub-class to initialize correctly all the fields of this class.
◆ math_BrentMinimum() [2/2]
| math_BrentMinimum::math_BrentMinimum |
( |
const double | TolX, |
|
|
const double | Fbx, |
|
|
const int | NbIterations = 100, |
|
|
const double | ZEPS = 1.0e-12 ) |
This constructor should be used in a sub-class to initialize correctly all the fields of this class. It has to be used if F(Bx) is known.
◆ ~math_BrentMinimum()
| virtual math_BrentMinimum::~math_BrentMinimum |
( |
| ) |
|
|
virtual |
◆ Dump()
Prints on the stream o information on the current state of the object. Is used to redefine the operator <<.
◆ IsDone()
| bool math_BrentMinimum::IsDone |
( |
| ) |
const |
Returns true if the computations are successful, otherwise returns false.
◆ IsSolutionReached()
This method is called at the end of each iteration to check if the solution is found. It can be redefined in a sub-class to implement a specific test to stop the iterations.
◆ Location()
| double math_BrentMinimum::Location |
( |
| ) |
const |
returns the location value of the minimum. Exception NotDone is raised if the minimum was not found.
◆ Minimum()
| double math_BrentMinimum::Minimum |
( |
| ) |
const |
returns the value of the minimum. Exception NotDone is raised if the minimum was not found.
◆ NbIterations()
| int math_BrentMinimum::NbIterations |
( |
| ) |
const |
returns the number of iterations really done during the computation of the minimum. Exception NotDone is raised if the minimum was not found.
◆ Perform()
Brent minimization is performed on function F from a given bracketing triplet of abscissas Ax, Bx, Cx (such that Bx is between Ax and Cx, F(Bx) is less than both F(Bx) and F(Cx)) The solution is found when: abs(Xi - Xi-1) <= TolX * abs(Xi) + ZEPS;.
◆ EPSZ
| double math_BrentMinimum::EPSZ |
|
protected |
◆ fv
◆ fw
◆ fx
◆ XTol
| double math_BrentMinimum::XTol |
|
protected |
The documentation for this class was generated from the following file: