IGLib 1.4
The IGLib base library for development of numerical, technical and business applications.
|
Radial scalar functions. More...
Public Member Functions | |
ScalarFunctionRadialUntransformed (IRealFunction function) | |
override double | Value (IVector x) |
Returns the value of this function at the specified parameter. | |
override void | GradientPlain (IVector x, IVector gradient) |
Returns the first derivative of this function at the specified parameter. | |
override void | HessianPlain (IVector x, IMatrix hessian) |
Returns the second derivative (Hessian) of this function at the specified arameter. | |
Protected Member Functions | |
ScalarFunctionRadialUntransformed () | |
Properties | |
virtual IRealFunction | Function [get, set] |
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 Attributes | |
IRealFunction | _function |
double | _epsilon |
Radial scalar functions.
$A Igor xx Nov10;
IG::Num::ScalarFunctionRadialUntransformed::ScalarFunctionRadialUntransformed | ( | ) | [inline, protected] |
IG::Num::ScalarFunctionRadialUntransformed::ScalarFunctionRadialUntransformed | ( | IRealFunction | function | ) | [inline] |
override double IG::Num::ScalarFunctionRadialUntransformed::Value | ( | IVector | x | ) | [inline] |
Returns the value of this function at the specified parameter.
Implements IG::Num::IScalarFunctionUntransformed.
override void IG::Num::ScalarFunctionRadialUntransformed::GradientPlain | ( | IVector | x, |
IVector | gradient | ||
) | [inline] |
Returns the first derivative of this function at the specified parameter.
parameters | Vector of parameters where derivatives are evaluated. |
gradient | Vector where first derivatives (gradient) are stored. |
Implements IG::Num::IScalarFunctionUntransformed.
override void IG::Num::ScalarFunctionRadialUntransformed::HessianPlain | ( | IVector | x, |
IMatrix | hessian | ||
) | [inline] |
Returns the second derivative (Hessian) of this function at the specified arameter.
parameters | Vector of parameters where derivatives are evaluated. |
hessian | Matrix where second derivatives (Hessian) are stored. |
Implements IG::Num::IScalarFunctionUntransformed.
double IG::Num::ScalarFunctionRadialUntransformed::_epsilon [private] |
virtual IRealFunction IG::Num::ScalarFunctionRadialUntransformed::Function [get, set] |
Reimplemented in IG::Num::ScalarFunctionRadialUntransformedOneParametric.
double IG::Num::ScalarFunctionRadialUntransformed::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::ScalarFunctionRadialUntransformed::Name [get] |
Returns a short name of the function.
Implements IG::Num::IScalarFunctionUntransformed.
override string IG::Num::ScalarFunctionRadialUntransformed::Description [get] |
Returns a short description of the function.
Implements IG::Num::IScalarFunctionUntransformed.
override bool IG::Num::ScalarFunctionRadialUntransformed::ValueDefined [get, set] |
Tells whether value of the function is defined by implementation.
Implements IG::Num::IScalarFunctionUntransformed.
override bool IG::Num::ScalarFunctionRadialUntransformed::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::ScalarFunctionRadialUntransformed::HessianDefined [get, set] |
Tells whether the second derivative is defined for this function (by implementation, not mathematically)
Implements IG::Num::IScalarFunctionUntransformed.