Open CASCADE Technology
7.4.0
|
This class implements the Brent method to find the root of a function located within two bounds. No knowledge of the derivative is required. More...
#include <math_BracketedRoot.hxx>
Public Member Functions | |
math_BracketedRoot (math_Function &F, const Standard_Real Bound1, const Standard_Real Bound2, const Standard_Real Tolerance, const Standard_Integer NbIterations=100, const Standard_Real ZEPS=1.0e-12) | |
The Brent method is used to find the root of the function F between the bounds Bound1 and Bound2 on the function F. If F(Bound1)*F(Bound2) >0 the Brent method fails. The tolerance required for the root is given by Tolerance. The solution is found when : abs(Xi - Xi-1) <= Tolerance; The maximum number of iterations allowed is given by NbIterations. More... | |
Standard_Boolean | IsDone () const |
Returns true if the computations are successful, otherwise returns false. More... | |
Standard_Real | Root () const |
returns the value of the root. Exception NotDone is raised if the minimum was not found. More... | |
Standard_Real | Value () const |
returns the value of the function at the root. Exception NotDone is raised if the minimum was not found. More... | |
Standard_Integer | NbIterations () const |
returns the number of iterations really done during the computation of the Root. Exception NotDone is raised if the minimum was not found. More... | |
void | Dump (Standard_OStream &o) const |
Prints on the stream o information on the current state of the object. More... | |
This class implements the Brent method to find the root of a function located within two bounds. No knowledge of the derivative is required.
math_BracketedRoot::math_BracketedRoot | ( | math_Function & | F, |
const Standard_Real | Bound1, | ||
const Standard_Real | Bound2, | ||
const Standard_Real | Tolerance, | ||
const Standard_Integer | NbIterations = 100 , |
||
const Standard_Real | ZEPS = 1.0e-12 |
||
) |
The Brent method is used to find the root of the function F between the bounds Bound1 and Bound2 on the function F. If F(Bound1)*F(Bound2) >0 the Brent method fails. The tolerance required for the root is given by Tolerance. The solution is found when : abs(Xi - Xi-1) <= Tolerance; The maximum number of iterations allowed is given by NbIterations.
void math_BracketedRoot::Dump | ( | Standard_OStream & | o | ) | const |
Prints on the stream o information on the current state of the object.
Standard_Boolean math_BracketedRoot::IsDone | ( | ) | const |
Returns true if the computations are successful, otherwise returns false.
Standard_Integer math_BracketedRoot::NbIterations | ( | ) | const |
returns the number of iterations really done during the computation of the Root. Exception NotDone is raised if the minimum was not found.
Standard_Real math_BracketedRoot::Root | ( | ) | const |
returns the value of the root. Exception NotDone is raised if the minimum was not found.
Standard_Real math_BracketedRoot::Value | ( | ) | const |
returns the value of the function at the root. Exception NotDone is raised if the minimum was not found.