class HCL_EvalLinCombFcnl_d : public HCL_EvaluateFunctional_d

This class represents the "evaluation" object for HCL_LinCombFcnl_d, which implements a linear combination of real-valued functionals:

Inheritance:


Public Methods

HCL_EvalLinCombFcnl_d ( HCL_VectorSpace_d * d, int n )
Usual constructor; takes the domain and the number of terms
virtual HCL_VectorSpace_d& Domain () const
Domain space access
virtual double Value () const
Value computes the value of the function.
virtual void Gradient ( HCL_Vector_d & g ) const
Gradient computes the gradient of the function.
virtual HCL_LinearOp_d* Hessian () const
Hessian computes the Hessian of the function.
void SetNext ( HCL_EvaluateFunctional_d * eval, double w )
SetNext allows the next term in the linear combination to be added
const HCL_EvaluateFunctional_d& GetTerm ( int ) const
GetTerm extracts one of the evaluation objects from the linear combination
virtual ostream& Write ( ostream & str ) const
Debugging information

Inherited from HCL_EvaluateFunctional_d:

Public Methods

virtual double ValueRef() const
virtual const HCL_Vector_d& GradientRef() const
virtual const HCL_LinearOp_d& HessianRef() const

Protected Methods

virtual void HessianImage( const HCL_Vector_d & dx, HCL_Vector_d & dy ) const
virtual void HessianInvImage( const HCL_Vector_d & dy, HCL_Vector_d & dx ) const

Inherited from HCL_Base:

Public Methods

void IncCount() const
void DecCount() const
int Count() const

Documentation

This class represents the "evaluation" object for HCL_LinCombFcnl_d, which implements a linear combination of real-valued functionals: . The evaluation object is an object knowing how to compute the triple , i.e. the value, gradient, and Hessian of the functional at a single point. For more details, see HCL_LinCombFcnl_d and HCL_EvaluateFunctional_d.
HCL_EvalLinCombFcnl_d( HCL_VectorSpace_d * d, int n )
Usual constructor; takes the domain and the number of terms. Each of the terms in the linear combination, consisting of a scalar and a HCL_EvaluateFunctional_d, must be added with the SetNext method.

virtual HCL_VectorSpace_d& Domain() const
Domain space access. Returns a reference to the domain of the functional, which is required to be a vector space.

virtual double Value() const
Value computes the value of the function.

virtual void Gradient( HCL_Vector_d & g ) const
Gradient computes the gradient of the function.

virtual HCL_LinearOp_d* Hessian() const
Hessian computes the Hessian of the function.

void SetNext( HCL_EvaluateFunctional_d * eval, double w )
SetNext allows the next term in the linear combination to be added. This method takes the evaluation object and the weight.

const HCL_EvaluateFunctional_d& GetTerm( int ) const
GetTerm extracts one of the evaluation objects from the linear combination. In this way, one can efficiently access the individual values, gradients, and Hessian of the terms in the linear combination.

virtual ostream& Write( ostream & str ) const
Debugging information. Prints out the weights and the individual evaluation objects.


This class has no child classes.

alphabetic index hierarchy of classes


this page has been generated automatically by doc++

(c)opyright by Malte Zöckler, Roland Wunderling
contact: doc++@zib.de