IGLib 1.4
The IGLib base library for development of numerical, technical and business applications.

IG::Num::ScalarFunctionRadial Class Reference

Radial scalar functions. More...

Inheritance diagram for IG::Num::ScalarFunctionRadial:
Collaboration diagram for IG::Num::ScalarFunctionRadial:

List of all members.

Public Member Functions

 ScalarFunctionRadial (IRealFunction function, IAffineTransformation transf)
 Constructor. Creates a new radial function without specifying coordinate transformation.
 ScalarFunctionRadial (IRealFunction function)
 Constructor. Creates a new radial function without specifying coordinate transformation.
override double ReferenceValue (IVector x)
 Returns the value of this function at the specified parameter.
override void ReferenceGradientPlain (IVector x, IVector gradient)
 Returns the first derivative of this function at the specified parameter.
override void ReferenceHessianPlain (IVector x, IMatrix hessian)
 Returns the second derivative (Hessian) of this function at the specified arameter.

Properties

virtual IRealFunction Function [get, set]
 Gets or sets a real-valued function of one variable that defines the current radial function.
double Epsilon [get, set]
 Gets or sets a small number used as criteria of where to calculate things (especially derivatives) in a special way in order to overcome singularities in expressions. For example, some expressions contain divisions by vector norm. When vector norm is close to 0, this results in nearly singular terms, which must be replaced by suitable limits.
override string Name [get]
 Returns a short name of the function.
override string Description [get]
 Returns a short description of the function.
override bool ValueDefined [get, set]
 Tells whether value of the function is defined by implementation.
override bool GradientDefined [get, set]
 Tells whether the first derivative is defined for this function (by implementation, not mathematically)
override bool HessianDefined [get, set]
 Tells whether the second derivative is defined for this function (by implementation, not mathematically)

Private Member Functions

 ScalarFunctionRadial ()

Private Attributes

IRealFunction _function
double _epsilon

Detailed Description

Radial scalar functions.

$A Igor xx Nov10;


Constructor & Destructor Documentation

IG::Num::ScalarFunctionRadial::ScalarFunctionRadial ( ) [inline, private]
IG::Num::ScalarFunctionRadial::ScalarFunctionRadial ( IRealFunction  function,
IAffineTransformation  transf 
) [inline]

Constructor. Creates a new radial function without specifying coordinate transformation.

Parameters:
functionA real-valued function of one parameter that defined the radial function.
transformationAffine transformation of coordinates. Actual function is calculated as some reference function evaluated at inverse affine transformed parameters. If null then transformation is not applied.
IG::Num::ScalarFunctionRadial::ScalarFunctionRadial ( IRealFunction  function) [inline]

Constructor. Creates a new radial function without specifying coordinate transformation.

Parameters:
functionA real-valued function of one parameter that defined the radial function.

Member Function Documentation

override double IG::Num::ScalarFunctionRadial::ReferenceValue ( IVector  x) [inline, virtual]

Returns the value of this function at the specified parameter.

Implements IG::Num::ScalarFunctionBase.

override void IG::Num::ScalarFunctionRadial::ReferenceGradientPlain ( IVector  x,
IVector  gradient 
) [inline, virtual]

Returns the first derivative of this function at the specified parameter.

Parameters:
parametersVector of parameters where derivatives are evaluated.
gradientVector where first derivatives (gradient) are stored.

Implements IG::Num::ScalarFunctionBase.

override void IG::Num::ScalarFunctionRadial::ReferenceHessianPlain ( IVector  x,
IMatrix  hessian 
) [inline, virtual]

Returns the second derivative (Hessian) of this function at the specified arameter.

Parameters:
parametersVector of parameters where derivatives are evaluated.
hessianMatrix where second derivatives (Hessian) are stored.

Implements IG::Num::ScalarFunctionBase.


Member Data Documentation


Property Documentation

virtual IRealFunction IG::Num::ScalarFunctionRadial::Function [get, set]

Gets or sets a real-valued function of one variable that defines the current radial function.

Reimplemented in IG::Num::ScalarFunctionRadialOneParametric, and IG::Num::ScalarFunctionRadialParametric.

double IG::Num::ScalarFunctionRadial::Epsilon [get, set]

Gets or sets a small number used as criteria of where to calculate things (especially derivatives) in a special way in order to overcome singularities in expressions. For example, some expressions contain divisions by vector norm. When vector norm is close to 0, this results in nearly singular terms, which must be replaced by suitable limits.

override string IG::Num::ScalarFunctionRadial::Name [get]

Returns a short name of the function.

Implements IG::Num::IScalarFunctionUntransformed.

override string IG::Num::ScalarFunctionRadial::Description [get]

Returns a short description of the function.

Implements IG::Num::IScalarFunctionUntransformed.

override bool IG::Num::ScalarFunctionRadial::ValueDefined [get, set]

Tells whether value of the function is defined by implementation.

Implements IG::Num::IScalarFunctionUntransformed.

override bool IG::Num::ScalarFunctionRadial::GradientDefined [get, set]

Tells whether the first derivative is defined for this function (by implementation, not mathematically)

Implements IG::Num::IScalarFunctionUntransformed.

override bool IG::Num::ScalarFunctionRadial::HessianDefined [get, set]

Tells whether the second derivative is defined for this function (by implementation, not mathematically)

Implements IG::Num::IScalarFunctionUntransformed.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Enumerations Properties Events