Open CASCADE Technology  7.2.0
Public Member Functions

math_FunctionAllRoots Class Reference

This algorithm uses a sample of the function to find all intervals on which the function is null, and afterwards uses the FunctionRoots algorithm to find the points where the function is null outside the "null intervals". Knowledge of the derivative is required. More...

#include <math_FunctionAllRoots.hxx>

Public Member Functions

 math_FunctionAllRoots (math_FunctionWithDerivative &F, const math_FunctionSample &S, const Standard_Real EpsX, const Standard_Real EpsF, const Standard_Real EpsNul)
 The algorithm uses the sample to find intervals on which the function is null. An interval is found if, for at least two consecutive points of the sample, Ui and Ui+1, we get |F(Ui)|<=EpsNul and |F(Ui+1)|<=EpsNul. The real bounds of an interval are computed with the FunctionRoots. algorithm. Between two intervals, the roots of the function F are calculated using the FunctionRoots algorithm. More...
 
Standard_Boolean IsDone () const
 Returns True if the computation has been done successfully. More...
 
Standard_Integer NbIntervals () const
 Returns the number of intervals on which the function is Null. An exception is raised if IsDone returns False. More...
 
void GetInterval (const Standard_Integer Index, Standard_Real &A, Standard_Real &B) const
 Returns the interval of parameter of range Index. An exception is raised if IsDone returns False; An exception is raised if Index<=0 or Index >Nbintervals. More...
 
void GetIntervalState (const Standard_Integer Index, Standard_Integer &IFirst, Standard_Integer &ILast) const
 returns the State Number associated to the interval Index. An exception is raised if IsDone returns False; An exception is raised if Index<=0 or Index >Nbintervals. More...
 
Standard_Integer NbPoints () const
 returns the number of points where the function is Null. An exception is raised if IsDone returns False. More...
 
Standard_Real GetPoint (const Standard_Integer Index) const
 Returns the parameter of the point of range Index. An exception is raised if IsDone returns False; An exception is raised if Index<=0 or Index >NbPoints. More...
 
Standard_Integer GetPointState (const Standard_Integer Index) const
 returns the State Number associated to the point Index. An exception is raised if IsDone returns False; An exception is raised if Index<=0 or Index >Nbintervals. More...
 
void Dump (Standard_OStream &o) const
 Prints on the stream o information on the current state of the object. More...
 

Detailed Description

This algorithm uses a sample of the function to find all intervals on which the function is null, and afterwards uses the FunctionRoots algorithm to find the points where the function is null outside the "null intervals". Knowledge of the derivative is required.

Constructor & Destructor Documentation

◆ math_FunctionAllRoots()

math_FunctionAllRoots::math_FunctionAllRoots ( math_FunctionWithDerivative F,
const math_FunctionSample S,
const Standard_Real  EpsX,
const Standard_Real  EpsF,
const Standard_Real  EpsNul 
)

The algorithm uses the sample to find intervals on which the function is null. An interval is found if, for at least two consecutive points of the sample, Ui and Ui+1, we get |F(Ui)|<=EpsNul and |F(Ui+1)|<=EpsNul. The real bounds of an interval are computed with the FunctionRoots. algorithm. Between two intervals, the roots of the function F are calculated using the FunctionRoots algorithm.

Member Function Documentation

◆ Dump()

void math_FunctionAllRoots::Dump ( Standard_OStream o) const

Prints on the stream o information on the current state of the object.

◆ GetInterval()

void math_FunctionAllRoots::GetInterval ( const Standard_Integer  Index,
Standard_Real A,
Standard_Real B 
) const

Returns the interval of parameter of range Index. An exception is raised if IsDone returns False; An exception is raised if Index<=0 or Index >Nbintervals.

◆ GetIntervalState()

void math_FunctionAllRoots::GetIntervalState ( const Standard_Integer  Index,
Standard_Integer IFirst,
Standard_Integer ILast 
) const

returns the State Number associated to the interval Index. An exception is raised if IsDone returns False; An exception is raised if Index<=0 or Index >Nbintervals.

◆ GetPoint()

Standard_Real math_FunctionAllRoots::GetPoint ( const Standard_Integer  Index) const

Returns the parameter of the point of range Index. An exception is raised if IsDone returns False; An exception is raised if Index<=0 or Index >NbPoints.

◆ GetPointState()

Standard_Integer math_FunctionAllRoots::GetPointState ( const Standard_Integer  Index) const

returns the State Number associated to the point Index. An exception is raised if IsDone returns False; An exception is raised if Index<=0 or Index >Nbintervals.

◆ IsDone()

Standard_Boolean math_FunctionAllRoots::IsDone ( ) const

Returns True if the computation has been done successfully.

◆ NbIntervals()

Standard_Integer math_FunctionAllRoots::NbIntervals ( ) const

Returns the number of intervals on which the function is Null. An exception is raised if IsDone returns False.

◆ NbPoints()

Standard_Integer math_FunctionAllRoots::NbPoints ( ) const

returns the number of points where the function is Null. An exception is raised if IsDone returns False.


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