#include <math_FRPR.hxx>
Public Member Functions | |
void * | operator new (size_t, void *anAddress) |
void * | operator new (size_t size) |
void | operator delete (void *anAddress) |
Standard_EXPORT | math_FRPR (math_MultipleVarFunctionWithGradient &F, const math_Vector &StartingPoint, const Standard_Real Tolerance, const Standard_Integer NbIterations=200, const Standard_Real ZEPS=1.0e-12) |
Computes FRPR minimization function F from input vector StartingPoint. The solution F = Fi is found when 2.0 * abs(Fi - Fi-1) <= Tolerance * (abs(Fi) + abs(Fi-1) + ZEPS). The maximum number of iterations allowed is given by NbIterations. . | |
Standard_EXPORT | math_FRPR (math_MultipleVarFunctionWithGradient &F, const Standard_Real Tolerance, const Standard_Integer NbIterations=200, const Standard_Real ZEPS=1.0e-12) |
Purpose Initializes the computation of the minimum of F. Warning A call to the Perform method must be made after this initialization to compute the minimum of the function. . | |
virtual Standard_EXPORT void | Delete () |
virtual Standard_EXPORT | ~math_FRPR () |
Standard_EXPORT void | Perform (math_MultipleVarFunctionWithGradient &F, const math_Vector &StartingPoint) |
Use this method after a call to the initialization constructor to compute the minimum of function F. Warning The initialization constructor must have been called before the Perform method is called . | |
virtual Standard_EXPORT Standard_Boolean | IsSolutionReached (math_MultipleVarFunctionWithGradient &F) |
The solution F = Fi is found when : 2.0 * abs(Fi - Fi-1) <= Tolerance * (abs(Fi) + abs(Fi-1)) + ZEPS. The maximum number of iterations allowed is given by NbIterations. . | |
Standard_Boolean | IsDone () const |
Returns true if the computations are successful, otherwise returns false. . | |
const math_Vector & | Location () const |
returns the location vector of the minimum. Exception NotDone is raised if the minimum was not found. | |
void | Location (math_Vector &Loc) const |
outputs the location vector of the minimum in Loc. Exception NotDone is raised if the minimum was not found. Exception DimensionError is raised if the range of Loc is not equal to the range of the StartingPoint. | |
Standard_Real | Minimum () const |
returns the value of the minimum. Exception NotDone is raised if the minimum was not found. | |
const math_Vector & | Gradient () const |
returns the gradient vector at the minimum. Exception NotDone is raised if the minimum was not found. | |
void | Gradient (math_Vector &Grad) const |
outputs the gradient vector at the minimum in Grad. Exception NotDone is raised if the minimum was not found. Exception DimensionError is raised if the range of Grad is not equal to the range of the StartingPoint. | |
Standard_Integer | NbIterations () const |
returns the number of iterations really done during the computation of the minimum. Exception NotDone is raised if the minimum was not found. | |
Standard_EXPORT void | Dump (Standard_OStream &o) const |
Prints on the stream o information on the current state of the object. Is used to redefine the operator <<. . | |
Protected Attributes | |
math_Vector | TheLocation |
math_Vector | TheGradient |
Standard_Real | TheMinimum |
Standard_Real | PreviousMinimum |
Standard_Real | XTol |
Standard_Real | EPSZ |
Private Attributes | |
Standard_Boolean | Done |
Standard_Integer | Iter |
Standard_Integer | State |
math_Status | TheStatus |
Standard_Integer | Itermax |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|