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

IG::Num::ScalarFunctionBase Class Reference

Base class for scalar functions with affine transformation of co-ordinates. The reference function is defined while the actual function is defined as that reference function of transformed coordinates. If transformation is not specified then function reduces to the reference one. More...

Inheritance diagram for IG::Num::ScalarFunctionBase:
Collaboration diagram for IG::Num::ScalarFunctionBase:

List of all members.

Public Member Functions

 ScalarFunctionBase (IAffineTransformation transf)
 Constructs a scalar function that is identical to some reference funciton acting on affine transformed parameters.
abstract double ReferenceValue (IVector parameters)
 Returns the value of this function at the specified parameter in the reference coordinate system.
abstract void ReferenceGradientPlain (IVector parameters, IVector gradient)
 Calculates the first derivative (gradient) of this function at the specified parameter in the reference coordinate system.
abstract void ReferenceHessianPlain (IVector parameters, IMatrix hessian)
 Calculates the second derivative (Hessian) of this function at the specified parameters in the reference coordinate system.
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

 ScalarFunctionBase ()
 Default constructor for scalar functions of affine transformed parameters. Constructs untransformed reference function.

Protected Attributes

IVector _refParam
IVector _refGrad
IMatrix _refHess

Properties

virtual IAffineTransformation Transformation [get, set]
 Transformation of parameters. Actual function is evaluated as some reference function evaluated at inverse affine-transformed parameters.

Private Attributes

IAffineTransformation _transf

Detailed Description

Base class for scalar functions with affine transformation of co-ordinates. The reference function is defined while the actual function is defined as that reference function of transformed coordinates. If transformation is not specified then function reduces to the reference one.

$A Igor xx May10 Dec10;


Constructor & Destructor Documentation

IG::Num::ScalarFunctionBase::ScalarFunctionBase ( ) [inline, protected]

Default constructor for scalar functions of affine transformed parameters. Constructs untransformed reference function.

IG::Num::ScalarFunctionBase::ScalarFunctionBase ( IAffineTransformation  transf) [inline]

Constructs a scalar function that is identical to some reference funciton acting on affine transformed parameters.

Parameters:
transfAffine transformation of parameters from the reference to the actual coordinate system. If null then parameters are not transformed.

Member Function Documentation

abstract void IG::Num::ScalarFunctionBase::ReferenceGradientPlain ( IVector  parameters,
IVector  gradient 
) [pure virtual]
abstract void IG::Num::ScalarFunctionBase::ReferenceHessianPlain ( IVector  parameters,
IMatrix  hessian 
) [pure virtual]
override double IG::Num::ScalarFunctionBase::Value ( IVector  x) [inline, virtual]

Returns the value of this function at the specified parameter.

Implements IG::Num::ScalarFunctionUntransformedBase.

override void IG::Num::ScalarFunctionBase::GradientPlain ( 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::ScalarFunctionUntransformedBase.

override void IG::Num::ScalarFunctionBase::HessianPlain ( 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::ScalarFunctionUntransformedBase.


Member Data Documentation


Property Documentation

virtual IAffineTransformation IG::Num::ScalarFunctionBase::Transformation [get, set]

Transformation of parameters. Actual function is evaluated as some reference function evaluated at inverse affine-transformed parameters.

Implements IG::Num::IScalarFunction.


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