Open CASCADE Technology 7.8.0
|
The abstract class MultipleVarFunctionWithGradient describes the virtual functions associated with a multiple variable function. More...
#include <math_MultipleVarFunctionWithGradient.hxx>
Public Member Functions | |
virtual Standard_Integer | NbVariables () const =0 |
Returns the number of variables of the function. | |
virtual Standard_Boolean | Value (const math_Vector &X, Standard_Real &F)=0 |
Computes the values of the Functions <F> for the variable <X>. Returns True if the computation was done successfully, False otherwise. | |
virtual Standard_Boolean | Gradient (const math_Vector &X, math_Vector &G)=0 |
Computes the gradient <G> of the functions for the variable <X>. Returns True if the computation was done successfully, False otherwise. | |
virtual Standard_Boolean | Values (const math_Vector &X, Standard_Real &F, math_Vector &G)=0 |
computes the value <F> and the gradient <G> of the functions for the variable <X>. Returns True if the computation was done successfully, False otherwise. | |
Public Member Functions inherited from math_MultipleVarFunction | |
virtual Standard_Integer | GetStateNumber () |
return the state of the function corresponding to the latestt call of any methods associated to the function. This function is called by each of the algorithms described later which define the function Integer Algorithm::StateNumber(). The algorithm has the responsibility to call this function when it has found a solution (i.e. a root or a minimum) and has to maintain the association between the solution found and this StateNumber. Byu default, this method returns 0 (which means for the algorithm: no state has been saved). It is the responsibility of the programmer to decide if he needs to save the current state of the function and to return an Integer that allows retrieval of the state. | |
virtual | ~math_MultipleVarFunction () |
The abstract class MultipleVarFunctionWithGradient describes the virtual functions associated with a multiple variable function.
|
pure virtual |
Computes the gradient <G> of the functions for the variable <X>. Returns True if the computation was done successfully, False otherwise.
Implemented in Extrema_GlobOptFuncCS, AppDef_BSpParFunctionOfMyBSplGradientOfBSplineCompute, AppDef_ParFunctionOfMyGradientbisOfBSplineCompute, AppDef_ParFunctionOfMyGradientOfCompute, AppDef_ParFunctionOfTheGradient, AppDef_TheFunction, BRepApprox_BSpParFunctionOfMyBSplGradientOfTheComputeLineOfApprox, BRepApprox_ParFunctionOfMyGradientbisOfTheComputeLineOfApprox, BRepApprox_ParFunctionOfMyGradientOfTheComputeLineBezierOfApprox, Extrema_GlobOptFuncCCC1, Extrema_GlobOptFuncCCC2, GeomInt_BSpParFunctionOfMyBSplGradientOfTheComputeLineOfWLApprox, GeomInt_ParFunctionOfMyGradientbisOfTheComputeLineOfWLApprox, GeomInt_ParFunctionOfMyGradientOfTheComputeLineBezierOfWLApprox, Extrema_FuncPSDist, FairCurve_Energy, GeomConvert_FuncCylinderLSDist, GeomConvert_FuncSphereLSDist, and math_MultipleVarFunctionWithHessian.
|
pure virtual |
Returns the number of variables of the function.
Implements math_MultipleVarFunction.
Implemented in AppDef_BSpParFunctionOfMyBSplGradientOfBSplineCompute, AppDef_ParFunctionOfMyGradientbisOfBSplineCompute, AppDef_ParFunctionOfMyGradientOfCompute, AppDef_ParFunctionOfTheGradient, AppDef_TheFunction, BRepApprox_BSpParFunctionOfMyBSplGradientOfTheComputeLineOfApprox, BRepApprox_ParFunctionOfMyGradientbisOfTheComputeLineOfApprox, BRepApprox_ParFunctionOfMyGradientOfTheComputeLineBezierOfApprox, Extrema_GlobOptFuncCCC1, Extrema_GlobOptFuncCCC2, Extrema_GlobOptFuncCS, GeomInt_BSpParFunctionOfMyBSplGradientOfTheComputeLineOfWLApprox, GeomInt_ParFunctionOfMyGradientbisOfTheComputeLineOfWLApprox, GeomInt_ParFunctionOfMyGradientOfTheComputeLineBezierOfWLApprox, math_MultipleVarFunctionWithHessian, Extrema_FuncPSDist, FairCurve_Energy, GeomConvert_FuncCylinderLSDist, and GeomConvert_FuncSphereLSDist.
|
pure virtual |
Computes the values of the Functions <F> for the variable <X>. Returns True if the computation was done successfully, False otherwise.
Implements math_MultipleVarFunction.
Implemented in Extrema_GlobOptFuncCS, FairCurve_Energy, AppDef_BSpParFunctionOfMyBSplGradientOfBSplineCompute, AppDef_ParFunctionOfMyGradientbisOfBSplineCompute, AppDef_ParFunctionOfMyGradientOfCompute, AppDef_ParFunctionOfTheGradient, AppDef_TheFunction, BRepApprox_BSpParFunctionOfMyBSplGradientOfTheComputeLineOfApprox, BRepApprox_ParFunctionOfMyGradientbisOfTheComputeLineOfApprox, BRepApprox_ParFunctionOfMyGradientOfTheComputeLineBezierOfApprox, Extrema_GlobOptFuncCCC1, Extrema_GlobOptFuncCCC2, GeomInt_BSpParFunctionOfMyBSplGradientOfTheComputeLineOfWLApprox, GeomInt_ParFunctionOfMyGradientbisOfTheComputeLineOfWLApprox, GeomInt_ParFunctionOfMyGradientOfTheComputeLineBezierOfWLApprox, Extrema_FuncPSDist, GeomConvert_FuncCylinderLSDist, GeomConvert_FuncSphereLSDist, and math_MultipleVarFunctionWithHessian.
|
pure virtual |
computes the value <F> and the gradient <G> of the functions for the variable <X>. Returns True if the computation was done successfully, False otherwise.
Implemented in Extrema_GlobOptFuncCS, FairCurve_Energy, AppDef_BSpParFunctionOfMyBSplGradientOfBSplineCompute, AppDef_ParFunctionOfMyGradientbisOfBSplineCompute, AppDef_ParFunctionOfMyGradientOfCompute, AppDef_ParFunctionOfTheGradient, AppDef_TheFunction, BRepApprox_BSpParFunctionOfMyBSplGradientOfTheComputeLineOfApprox, BRepApprox_ParFunctionOfMyGradientbisOfTheComputeLineOfApprox, BRepApprox_ParFunctionOfMyGradientOfTheComputeLineBezierOfApprox, Extrema_GlobOptFuncCCC1, Extrema_GlobOptFuncCCC2, GeomInt_BSpParFunctionOfMyBSplGradientOfTheComputeLineOfWLApprox, GeomInt_ParFunctionOfMyGradientbisOfTheComputeLineOfWLApprox, GeomInt_ParFunctionOfMyGradientOfTheComputeLineBezierOfWLApprox, Extrema_FuncPSDist, GeomConvert_FuncCylinderLSDist, GeomConvert_FuncSphereLSDist, and math_MultipleVarFunctionWithHessian.