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

- Main Page
- Namespaces
- Classes
- Files
- Directories

- Class List
- Class Index
- Class Hierarchy
- Class Members

Public Member Functions | Properties | Private Member Functions | Private Attributes

# IG::Num::ScalarFunctionRadial Class Reference

Radial scalar functions. More...

Inheritance diagram for IG::Num::ScalarFunctionRadial:
[legend]
Collaboration diagram for IG::Num::ScalarFunctionRadial:
[legend]

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:

  function | A real-valued function of one parameter that defined the radial function.
  transformation | Affine 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:

  function | A 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:

  parameters | Vector of parameters where derivatives are evaluated.
  gradient | Vector 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:

  parameters | Vector of parameters where derivatives are evaluated.
  hessian | Matrix where second derivatives (Hessian) are stored.

Implements IG::Num::ScalarFunctionBase.

## Member Data Documentation

IRealFunction IG::Num::ScalarFunctionRadial::_function`[private]`

double IG::Num::ScalarFunctionRadial::_epsilon`[private]`

## 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:

- FunctionScalarRadial.cs

All Classes Namespaces Files Functions Variables Enumerations Properties Events