Open CASCADE Technology  6.9.0
Public Member Functions
Extrema_FuncExtPS Class Reference

Functional for search of extremum of the distance between point P and surface S, starting from approximate solution (u0, v0). More...

#include <Extrema_FuncExtPS.hxx>

Inheritance diagram for Extrema_FuncExtPS:
Inheritance graph
[legend]

Public Member Functions

 Extrema_FuncExtPS ()
 
 Extrema_FuncExtPS (const gp_Pnt &P, const Adaptor3d_Surface &S)
 
void Initialize (const Adaptor3d_Surface &S)
 sets the field mysurf of the function. More...
 
void SetPoint (const gp_Pnt &P)
 sets the field mysurf of the function. More...
 
Standard_Integer NbVariables () const
 Returns the number of variables of the function. More...
 
Standard_Integer NbEquations () const
 Returns the number of equations of the function. More...
 
Standard_Boolean Value (const math_Vector &UV, math_Vector &F)
 Calculate Fi(U,V). More...
 
Standard_Boolean Derivatives (const math_Vector &UV, math_Matrix &DF)
 Calculate Fi'(U,V). More...
 
Standard_Boolean Values (const math_Vector &UV, math_Vector &F, math_Matrix &DF)
 Calculate Fi(U,V) and Fi'(U,V). More...
 
virtual Standard_Integer GetStateNumber ()
 Save the found extremum. More...
 
Standard_Integer NbExt () const
 Return the number of found extrema. More...
 
Standard_Real SquareDistance (const Standard_Integer N) const
 Return the value of the Nth distance. More...
 
const Extrema_POnSurfPoint (const Standard_Integer N) const
 Returns the Nth extremum. More...
 
- Public Member Functions inherited from math_FunctionSet
virtual ~math_FunctionSet ()
 

Detailed Description

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.

Constructor & Destructor Documentation

Extrema_FuncExtPS::Extrema_FuncExtPS ( )
Extrema_FuncExtPS::Extrema_FuncExtPS ( const gp_Pnt P,
const Adaptor3d_Surface S 
)

Member Function Documentation

Standard_Boolean Extrema_FuncExtPS::Derivatives ( const math_Vector UV,
math_Matrix DF 
)
virtual

Calculate Fi'(U,V).

Implements math_FunctionSetWithDerivatives.

virtual Standard_Integer Extrema_FuncExtPS::GetStateNumber ( )
virtual

Save the found extremum.

Reimplemented from math_FunctionSet.

void Extrema_FuncExtPS::Initialize ( const Adaptor3d_Surface S)

sets the field mysurf of the function.

Standard_Integer Extrema_FuncExtPS::NbEquations ( ) const
virtual

Returns the number of equations of the function.

Implements math_FunctionSetWithDerivatives.

Standard_Integer Extrema_FuncExtPS::NbExt ( ) const

Return the number of found extrema.

Standard_Integer Extrema_FuncExtPS::NbVariables ( ) const
virtual

Returns the number of variables of the function.

Implements math_FunctionSetWithDerivatives.

const Extrema_POnSurf& Extrema_FuncExtPS::Point ( const Standard_Integer  N) const

Returns the Nth extremum.

void Extrema_FuncExtPS::SetPoint ( const gp_Pnt P)

sets the field mysurf of the function.

Standard_Real Extrema_FuncExtPS::SquareDistance ( const Standard_Integer  N) const

Return the value of the Nth distance.

Standard_Boolean Extrema_FuncExtPS::Value ( const math_Vector UV,
math_Vector F 
)
virtual

Calculate Fi(U,V).

Implements math_FunctionSetWithDerivatives.

Standard_Boolean Extrema_FuncExtPS::Values ( const math_Vector UV,
math_Vector F,
math_Matrix DF 
)
virtual

Calculate Fi(U,V) and Fi'(U,V).

Implements math_FunctionSetWithDerivatives.


The documentation for this class was generated from the following file: