Open CASCADE Technology 7.8.0
|
Functional for search of extremum of the distance between point P and surface S, starting from approximate solution (u0, v0). More...
#include <Extrema_FuncPSNorm.hxx>
Functional for search of extremum of the distance between point P and surface S, starting from approximate solution (u0, v0).
The class inherits math_FunctionSetWithDerivatives and thus is intended for use in math_FunctionSetRoot algorithm .
Denoting derivatives of the surface S(u,v) by u and v, respectively, as Su and Sv, the two functions to be nullified are:
F1(u,v) = (S - P) * Su F2(u,v) = (S - P) * Sv
The derivatives of the functional are:
Duf1(u,v) = Su^2 + (S-P) * Suu; Dvf1(u,v) = Su * Sv + (S-P) * Suv Duf2(u,v) = Sv * Su + (S-P) * Suv = Dvf1 Dvf2(u,v) = Sv^2 + (S-P) * Svv
Here * denotes scalar product, and ^2 is square power.
Extrema_FuncPSNorm::Extrema_FuncPSNorm | ( | ) |
Extrema_FuncPSNorm::Extrema_FuncPSNorm | ( | const gp_Pnt & | P, |
const Adaptor3d_Surface & | S | ||
) |
|
overridevirtual |
Calculate Fi'(U,V).
Implements math_FunctionSetWithDerivatives.
|
overridevirtual |
Save the found extremum.
Reimplemented from math_FunctionSet.
void Extrema_FuncPSNorm::Initialize | ( | const Adaptor3d_Surface & | S | ) |
sets the field mysurf of the function.
|
overridevirtual |
Returns the number of equations of the function.
Implements math_FunctionSetWithDerivatives.
Standard_Integer Extrema_FuncPSNorm::NbExt | ( | ) | const |
Return the number of found extrema.
|
overridevirtual |
Returns the number of variables of the function.
Implements math_FunctionSetWithDerivatives.
const Extrema_POnSurf & Extrema_FuncPSNorm::Point | ( | const Standard_Integer | N | ) | const |
Returns the Nth extremum.
Standard_Real Extrema_FuncPSNorm::SquareDistance | ( | const Standard_Integer | N | ) | const |
Return the value of the Nth distance.
|
overridevirtual |
Calculate Fi(U,V).
Implements math_FunctionSetWithDerivatives.
|
overridevirtual |
Calculate Fi(U,V) and Fi'(U,V).
Implements math_FunctionSetWithDerivatives.