![]() |
Open CASCADE Technology Reference Manual 8.0.1
|
#include <BRepApprox_BSpParFunctionOfMyBSplGradientOfTheComputeLineOfApprox.hxx>

Public Member Functions | |
| BRepApprox_BSpParFunctionOfMyBSplGradientOfTheComputeLineOfApprox (const BRepApprox_TheMultiLineOfApprox &SSP, const int FirstPoint, const int LastPoint, const occ::handle< NCollection_HArray1< AppParCurves_ConstraintCouple > > &TheConstraints, const math_Vector &Parameters, const NCollection_Array1< double > &Knots, const NCollection_Array1< int > &Mults, const int NbPol) | |
| initializes the fields of the function. The approximating curve has <NbPol> control points. | |
| int | NbVariables () const override |
| returns the number of variables of the function. It corresponds to the number of MultiPoints. | |
| bool | Value (const math_Vector &X, double &F) override |
| this method computes the new approximation of the MultiLine SSP and calculates F = sum (||Pui - Bi*Pi||2) for each point of the MultiLine. | |
| bool | Gradient (const math_Vector &X, math_Vector &G) override |
| returns the gradient G of the sum above for the parameters Xi. | |
| bool | Values (const math_Vector &X, double &F, math_Vector &G) override |
| returns the value F=sum(||Pui - Bi*Pi||)2. returns the value G = grad(F) for the parameters Xi. | |
| const math_Vector & | NewParameters () const |
| returns the new parameters of the MultiLine. | |
| AppParCurves_MultiBSpCurve | CurveValue () |
| returns the MultiBSpCurve approximating the set after computing the value F or Grad(F). | |
| double | Error (const int IPoint, const int CurveIndex) |
| returns the distance between the MultiPoint of range IPoint and the curve CurveIndex. | |
| double | MaxError3d () const |
| returns the maximum distance between the points and the MultiBSpCurve. | |
| double | MaxError2d () const |
| returns the maximum distance between the points and the MultiBSpCurve. | |
| const math_Matrix & | FunctionMatrix () const |
| returns the function matrix used to approximate the multiline. | |
| const math_Matrix & | DerivativeFunctionMatrix () const |
| returns the derivative function matrix used to approximate the multiline. | |
| const math_IntegerVector & | Index () const |
| Returns the indexes of the first non null values of A and DA. The values are non null from Index(ieme point) +1 to Index(ieme point) + degree +1. | |
| AppParCurves_Constraint | FirstConstraint (const occ::handle< NCollection_HArray1< AppParCurves_ConstraintCouple > > &TheConstraints, const int FirstPoint) const |
| AppParCurves_Constraint | LastConstraint (const occ::handle< NCollection_HArray1< AppParCurves_ConstraintCouple > > &TheConstraints, const int LastPoint) const |
| void | SetFirstLambda (const double l1) |
| void | SetLastLambda (const double l2) |
| Public Member Functions inherited from math_MultipleVarFunction | |
| virtual int | 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 () |
Protected Member Functions | |
| void | Perform (const math_Vector &X) |
| this method is used each time Value or Gradient is needed. | |
| BRepApprox_BSpParFunctionOfMyBSplGradientOfTheComputeLineOfApprox::BRepApprox_BSpParFunctionOfMyBSplGradientOfTheComputeLineOfApprox | ( | const BRepApprox_TheMultiLineOfApprox & | SSP, |
| const int | FirstPoint, | ||
| const int | LastPoint, | ||
| const occ::handle< NCollection_HArray1< AppParCurves_ConstraintCouple > > & | TheConstraints, | ||
| const math_Vector & | Parameters, | ||
| const NCollection_Array1< double > & | Knots, | ||
| const NCollection_Array1< int > & | Mults, | ||
| const int | NbPol ) |
initializes the fields of the function. The approximating curve has <NbPol> control points.
| AppParCurves_MultiBSpCurve BRepApprox_BSpParFunctionOfMyBSplGradientOfTheComputeLineOfApprox::CurveValue | ( | ) |
returns the MultiBSpCurve approximating the set after computing the value F or Grad(F).
| const math_Matrix & BRepApprox_BSpParFunctionOfMyBSplGradientOfTheComputeLineOfApprox::DerivativeFunctionMatrix | ( | ) | const |
returns the derivative function matrix used to approximate the multiline.
| double BRepApprox_BSpParFunctionOfMyBSplGradientOfTheComputeLineOfApprox::Error | ( | const int | IPoint, |
| const int | CurveIndex ) |
returns the distance between the MultiPoint of range IPoint and the curve CurveIndex.
| AppParCurves_Constraint BRepApprox_BSpParFunctionOfMyBSplGradientOfTheComputeLineOfApprox::FirstConstraint | ( | const occ::handle< NCollection_HArray1< AppParCurves_ConstraintCouple > > & | TheConstraints, |
| const int | FirstPoint ) const |
| const math_Matrix & BRepApprox_BSpParFunctionOfMyBSplGradientOfTheComputeLineOfApprox::FunctionMatrix | ( | ) | const |
returns the function matrix used to approximate the multiline.
|
overridevirtual |
returns the gradient G of the sum above for the parameters Xi.
Implements math_MultipleVarFunctionWithGradient.
| const math_IntegerVector & BRepApprox_BSpParFunctionOfMyBSplGradientOfTheComputeLineOfApprox::Index | ( | ) | const |
Returns the indexes of the first non null values of A and DA. The values are non null from Index(ieme point) +1 to Index(ieme point) + degree +1.
| AppParCurves_Constraint BRepApprox_BSpParFunctionOfMyBSplGradientOfTheComputeLineOfApprox::LastConstraint | ( | const occ::handle< NCollection_HArray1< AppParCurves_ConstraintCouple > > & | TheConstraints, |
| const int | LastPoint ) const |
| double BRepApprox_BSpParFunctionOfMyBSplGradientOfTheComputeLineOfApprox::MaxError2d | ( | ) | const |
returns the maximum distance between the points and the MultiBSpCurve.
| double BRepApprox_BSpParFunctionOfMyBSplGradientOfTheComputeLineOfApprox::MaxError3d | ( | ) | const |
returns the maximum distance between the points and the MultiBSpCurve.
|
overridevirtual |
returns the number of variables of the function. It corresponds to the number of MultiPoints.
Implements math_MultipleVarFunctionWithGradient.
| const math_Vector & BRepApprox_BSpParFunctionOfMyBSplGradientOfTheComputeLineOfApprox::NewParameters | ( | ) | const |
returns the new parameters of the MultiLine.
|
protected |
this method is used each time Value or Gradient is needed.
| void BRepApprox_BSpParFunctionOfMyBSplGradientOfTheComputeLineOfApprox::SetFirstLambda | ( | const double | l1 | ) |
| void BRepApprox_BSpParFunctionOfMyBSplGradientOfTheComputeLineOfApprox::SetLastLambda | ( | const double | l2 | ) |
|
overridevirtual |
this method computes the new approximation of the MultiLine SSP and calculates F = sum (||Pui - Bi*Pi||2) for each point of the MultiLine.
Implements math_MultipleVarFunctionWithGradient.
|
overridevirtual |
returns the value F=sum(||Pui - Bi*Pi||)2. returns the value G = grad(F) for the parameters Xi.
Implements math_MultipleVarFunctionWithGradient.