This class implements a combination of Newton-Raphson and bissection methods to find the root of the function between two bounds. Knowledge of the derivative is required.
More...
#include <math_BissecNewton.hxx>
|
| math_BissecNewton (const Standard_Real theXTolerance) |
| Constructor.
|
|
void | Perform (math_FunctionWithDerivative &F, const Standard_Real Bound1, const Standard_Real Bound2, const Standard_Integer NbIterations=100) |
| A combination of Newton-Raphson and bissection methods is done to find the root of the function F between the bounds Bound1 and Bound2 on the function F. The tolerance required on the root is given by TolX. The solution is found when: abs(Xi - Xi-1) <= TolX and F(Xi) * F(Xi-1) <= 0 The maximum number of iterations allowed is given by NbIterations.
|
|
virtual Standard_Boolean | IsSolutionReached (math_FunctionWithDerivative &theFunction) |
| This method is called at the end of each iteration to check if the solution has been found. It can be redefined in a sub-class to implement a specific test to stop the iterations.
|
|
Standard_Boolean | IsDone () const |
| Tests is the root has been successfully found.
|
|
Standard_Real | Root () const |
| returns the value of the root. Exception NotDone is raised if the minimum was not found.
|
|
Standard_Real | Derivative () const |
| returns the value of the derivative at the root. Exception NotDone is raised if the minimum was not found.
|
|
Standard_Real | Value () const |
| returns the value of the function at the root. 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 redifine the operator <<.
|
|
virtual | ~math_BissecNewton () |
| Destructor.
|
|
This class implements a combination of Newton-Raphson and bissection methods to find the root of the function between two bounds. Knowledge of the derivative is required.
◆ math_BissecNewton()
math_BissecNewton::math_BissecNewton |
( |
const Standard_Real | theXTolerance | ) |
|
Constructor.
- Parameters
-
theXTolerance | - algorithm tolerance. |
◆ ~math_BissecNewton()
virtual math_BissecNewton::~math_BissecNewton |
( |
| ) |
|
|
virtual |
◆ Derivative()
returns the value of the derivative at the root. Exception NotDone is raised if the minimum was not found.
◆ Dump()
Prints on the stream o information on the current state of the object. Is used to redifine the operator <<.
◆ IsDone()
Tests is the root has been successfully found.
◆ IsSolutionReached()
This method is called at the end of each iteration to check if the solution has been found. It can be redefined in a sub-class to implement a specific test to stop the iterations.
◆ Perform()
A combination of Newton-Raphson and bissection methods is done to find the root of the function F between the bounds Bound1 and Bound2 on the function F. The tolerance required on the root is given by TolX. The solution is found when: abs(Xi - Xi-1) <= TolX and F(Xi) * F(Xi-1) <= 0 The maximum number of iterations allowed is given by NbIterations.
◆ Root()
returns the value of the root. Exception NotDone is raised if the minimum was not found.
◆ Value()
returns the value of the function at the root. Exception NotDone is raised if the minimum was not found.
◆ df
◆ dx
◆ TheStatus
◆ XTol
The documentation for this class was generated from the following file: