Open CASCADE Technology
7.1.0.beta

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.0e12)  
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  Xi1) <= 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.0e12 

) 
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  Xi1) <= 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.