The purpose of the class HCL_FunctionalDefaultEval is to relieve the implementor of a derived functional class from the necessity of also defining a derived evaluation class if there is no need to do so
![]() | HCL_FunctionalDefaultEval_d ( const HCL_Functional_d * ff, const HCL_Vector_d & in ) Usual constructor; requires a pointer to a functional and a reference to the input vector |
![]() | Domain () const Domain returns a reference to the domain of the underlying functional |
![]() | Value () const Value computes the value of the functional at x. |
![]() | Gradient (HCL_Vector_d & y ) const Gradient computes the gradient of the functional at x and stores it in y |
![]() | Hessian () const Hessian computes the Hessian of the functional |
![]() | Write ( ostream & str ) const Debugging information |
![]() | HessianImage ( const HCL_Vector_d & dx, HCL_Vector_d & dy ) const HessianImage computes the image of the Hessian on dx, yielding dy |
![]() | HessianInvImage ( const HCL_Vector_d & dy, HCL_Vector_d & dx ) const HessianInvImage computes the image of the inverse Hessian on dy, yielding dx |
The purpose of the class HCL_FunctionalDefaultEval is to relieve the implementor of a derived functional class from the necessity of also defining a derived evaluation class if there is no need to do so. The purpose of the evaluation class is to represent the triple. If the implementor of the derived functional class has overridden the protected methods Value1, Gradient1, and either Hessian1 or HessianImage, HessianInvImage, then this default evaluation class can call those methods to compute the value, gradient, or Hessian of the functional. To make this possible, the constructor of HCL_FunctionalDefaultEval saves a copy of x and a pointer to the functional class.
See the documentation for HCL_EvaluateFunctional for more information about evaluation objects for functionals.
This class is concrete: all of its methods are implemented.
virtual void HessianInvImage( const HCL_Vector_d & dy, HCL_Vector_d & dx ) const
HCL_FunctionalDefaultEval_d( const HCL_Functional_d * ff, const HCL_Vector_d & in )
virtual HCL_VectorSpace_d& Domain() const
virtual double Value() const
virtual void Gradient(HCL_Vector_d & y ) const
virtual HCL_LinearOp_d* Hessian() const
virtual ostream& Write( ostream & str ) const
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