Open CASCADE Technology  6.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions
math_BracketedRoot Class Reference

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. <br>

Exception NotDone is raised if the minimum was not found.
More...

 
Standard_Real Value () const
 
 returns the value of the function at the root. <br>

Exception NotDone is raised if the minimum was not found.
More...

 
Standard_Integer NbIterations () const
 
 returns the number of iterations really done during the <br>

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...
 

Detailed Description

This class implements the Brent method to find the root of a function
located within two bounds. No knowledge of the derivative is required.

Constructor & Destructor Documentation

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.

Member Function Documentation

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 <br>

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. <br>

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. <br>

Exception NotDone is raised if the minimum was not found.


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