| 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 | Protected Member Functions | Properties | Private Member Functions | Private Attributes

# IG::Num::ScalarFunctionTransformed Class Reference

Scalar function that is defined as some reference function evaluated at inverse affine-trasformed parameters. This class is typically used to convert scalar functions without affine transformation of coordinates (interface IScalafunctionUntransformed) to those that support affine transformation of coordinates. More...

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

List of all members.

## Public Member Functions
| ScalarFunctionTransformed (IScalarFunctionUntransformed referenceFunction, IAffineTransformation transf)
| Constructor. Creates a new scalar function based on a reference function evaluated at inverse affine transformed parameters.
override double | ReferenceValue (IVector parameters)
| Returns the value of this function at the specified parameter in the reference coordinate system.
override void | ReferenceGradientPlain (IVector parameters, IVector gradient)
| Calculates the first derivative (gradient) of this function at the specified parameter in the reference coordinate system.
override void | ReferenceHessianPlain (IVector parameters, IMatrix hessian)
| Calculates the second derivative (Hessian) of this function at the specified parameters in the reference coordinate system.
## Protected Member Functions
virtual void | SetName (string value)
| Sets name of the function.
virtual void | SetDescription (string value)
| Sets a short description of a function.
## Properties
override string | Name`[get]`
| Gets function name.
override string | Description`[get]`
| Gets a short description of the function.
IScalarFunctionUntransformed | ReferenceFunction`[get, set]`
| Reference function that is used for evaluation of the current scalar function. The current function is defined as this reference function evaluated at inverse Affine transformed coordinates.
override bool | ValueDefined`[get, set]`
| Tells whether the first derivative is defined for this function (by implementation, not mathematically)
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
| ScalarFunctionTransformed ()
| Default constructor disabled.
## Private Attributes
string | _nameDerived
string | _descriptionDerived
IScalarFunctionUntransformed | _referenceFunction

## Detailed Description

Scalar function that is defined as some reference function evaluated at inverse affine-trasformed parameters. This class is typically used to convert scalar functions without affine transformation of coordinates (interface IScalafunctionUntransformed) to those that support affine transformation of coordinates.

$A Igor xx;

## Constructor & Destructor Documentation

IG::Num::ScalarFunctionTransformed::ScalarFunctionTransformed | ( |  | ) | `[inline, private]`

Default constructor disabled.

IG::Num::ScalarFunctionTransformed::ScalarFunctionTransformed | ( | IScalarFunctionUntransformed | referenceFunction,
|  | IAffineTransformation | transf
| ) |  | `[inline]`

Constructor. Creates a new scalar function based on a reference function evaluated at inverse affine transformed parameters.

Parameters:

  referenceFunction | The reference function that is used for evaluation of the current function. Value of the current function equals value of the reference function at inverse affine transformed parameters.
  transf |

## Member Function Documentation

virtual void IG::Num::ScalarFunctionTransformed::SetName | ( | string | value | ) | `[inline, protected, virtual]`

Sets name of the function.

Parameters:

  value | Function name to be set.

virtual void IG::Num::ScalarFunctionTransformed::SetDescription | ( | string | value | ) | `[inline, protected, virtual]`

Sets a short description of a function.

Parameters:

  value | String to which function description is set.

override double IG::Num::ScalarFunctionTransformed::ReferenceValue | ( | IVector | parameters | ) | `[inline, virtual]`

Returns the value of this function at the specified parameter in the reference coordinate system.

Parameters:

  parameters | Vector of parameters (in the REFERENCE system) where function is evaluated.

Implements IG::Num::ScalarFunctionBase.

override void IG::Num::ScalarFunctionTransformed::ReferenceGradientPlain | ( | IVector | parameters,
|  | IVector | gradient
| ) |  | `[inline, virtual]`

Calculates the first derivative (gradient) of this function at the specified parameter in the reference coordinate system.

Parameters:

  parameters | Vector of parameters (in the REFERENCE system) where derivatives are evaluated.
  gradient | Vector where first derivatives (gradient) are stored.

Implements IG::Num::ScalarFunctionBase.

override void IG::Num::ScalarFunctionTransformed::ReferenceHessianPlain | ( | IVector | parameters,
|  | IMatrix | hessian
| ) |  | `[inline, virtual]`

Calculates the second derivative (Hessian) of this function at the specified parameters in the reference coordinate system.

Parameters:

  parameters | Vector of parameters (in the REFERENCE system) where Hessian is evaluated.
  hessian | Matrix where second derivatives (Hessian) are stored.

Implements IG::Num::ScalarFunctionBase.

## Member Data Documentation

string IG::Num::ScalarFunctionTransformed::_nameDerived`[private]`

string IG::Num::ScalarFunctionTransformed::_descriptionDerived`[private]`

IScalarFunctionUntransformed IG::Num::ScalarFunctionTransformed::_referenceFunction`[private]`

## Property Documentation

override string IG::Num::ScalarFunctionTransformed::Name`[get]`

Gets function name.

Implements IG::Num::IScalarFunctionUntransformed.

override string IG::Num::ScalarFunctionTransformed::Description`[get]`

Gets a short description of the function.

Implements IG::Num::IScalarFunctionUntransformed.

IScalarFunctionUntransformed IG::Num::ScalarFunctionTransformed::ReferenceFunction`[get, set]`

Reference function that is used for evaluation of the current scalar function. The current function is defined as this reference function evaluated at inverse Affine transformed coordinates.

override bool IG::Num::ScalarFunctionTransformed::ValueDefined`[get, set]`

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

Implements IG::Num::IScalarFunctionUntransformed.

override bool IG::Num::ScalarFunctionTransformed::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::ScalarFunctionTransformed::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:

- FunctionScalarTransformed.cs

All Classes Namespaces Files Functions Variables Enumerations Properties Events