|
Public Member Functions |
void * | operator new (size_t, void *anAddress) |
void * | operator new (size_t size) |
void | operator delete (void *anAddress) |
virtual Standard_Integer | NbVariables () const |
| returns the number of variables of the energy.
|
virtual Standard_EXPORT Standard_Boolean | Value (const math_Vector &X, Standard_Real &E) |
| computes the values of the Energys E for the
variable <x>.
Returns True if the computation was done successfully,
False otherwise.
|
virtual Standard_EXPORT Standard_Boolean | Gradient (const math_Vector &X, math_Vector &G) |
| computes the gradient <g> of the energys for the
variable <x>.
Returns True if the computation was done successfully,
False otherwise.
|
virtual Standard_EXPORT Standard_Boolean | Values (const math_Vector &X, Standard_Real &E, math_Vector &G) |
| computes the Energy <e> and the gradient <g> of the
energy for the variable <x>.
Returns True if the computation was done successfully,
False otherwise.
|
virtual Standard_EXPORT Standard_Boolean | Values (const math_Vector &X, Standard_Real &E, math_Vector &G, math_Matrix &H) |
| computes the Energy <e>, the gradient <g> and the
Hessian <h> of the energy for the variable <x>.
Returns True if the computation was done
successfully, False otherwise.
|
virtual Standard_EXPORT Standard_Boolean | Variable (math_Vector &X) const |
| compute the variables <x> wich correspond with the field <mypoles>
|
const Handle_TColgp_HArray1OfPnt2d & | Poles () const |
| return the poles
|
Protected Member Functions |
Standard_EXPORT | FairCurve_Energy (const Handle(TColgp_HArray1OfPnt2d)&Poles, const Standard_Integer ConstrOrder1, const Standard_Integer ConstrOrder2, const Standard_Boolean WithAuxValue=Standard_False, const Standard_Real Angle1=0, const Standard_Real Angle2=0, const Standard_Integer Degree=2, const Standard_Real Curvature1=0, const Standard_Real Curvature2=0) |
| Angles corresspond to the Ox axis
ConstrOrder1(2) can be equal to 0, 1 or 2
.
|
Standard_EXPORT void | Gradient1 (const math_Vector &TheVector, math_Vector &G) |
| It is use internaly to make the Gradient Vector <g>
.
|
Standard_EXPORT void | Hessian1 (const math_Vector &TheVector, math_Matrix &H) |
| It is use internaly to make the Hessian Matrix <h>
.
|
virtual Standard_EXPORT void | ComputePoles (const math_Vector &X) |
| compute the poles wich correspond with the variable X
|
Standard_Integer | Indice (const Standard_Integer i, const Standard_Integer j) const |
Standard_EXPORT void | ComputePolesG1 (const Standard_Integer Side, const Standard_Real Lambda, const gp_Pnt2d &P1, gp_Pnt2d &P2) const |
| compute the pole wich depend of variables and G1 constraint
|
Standard_EXPORT void | ComputePolesG2 (const Standard_Integer Side, const Standard_Real Lambda, const Standard_Real Rho, const gp_Pnt2d &P1, gp_Pnt2d &P2) const |
| compute the pole wich depend of variables and G2 constraint
|
virtual Standard_EXPORT Standard_Boolean | Compute (const Standard_Integer DerivativeOrder, math_Vector &Result)=0 |
| compute the energy (and derivatives) in intermediat format
|
Protected Attributes |
Handle_TColgp_HArray1OfPnt2d | MyPoles |
Standard_Integer | MyContrOrder1 |
Standard_Integer | MyContrOrder2 |
Standard_Boolean | MyWithAuxValue |
Standard_Integer | MyNbVar |
Private Attributes |
Standard_Integer | MyNbValues |
TColgp_Array1OfXY | MyLinearForm |
TColgp_Array1OfXY | MyQuadForm |
math_Vector | MyGradient |
math_Vector | MyHessian |