class HCL_BigMFcnl_d : public HCL_Functional_d

HCL_BigMFcnl_d implements a "big-M" functional for the problem of finding a vector satisfying (that is, the goal is to find a point strictly satisfying )

Inheritance:


Public Methods

HCL_BigMFcnl_d ( HCL_LinearOp_d * AA, HCL_Vector_d * bb, double MM, double eeps )
Usual constructor; takes a pointer to the linear operator, a pointer to the right-hand side vector, the scalar , and the scalar
virtual HCL_VectorSpace_d& Domain () const
Domain space access
virtual HCL_EvaluateFunctional_d* Evaluate ( const HCL_Vector_d & x ) const
Evaluate creates an "evaluation" object, which knows how to compute the function value, gradient,and Hessian at the given x
virtual ostream& Write ( ostream & str ) const
Debugging information

Inherited from HCL_Functional_d:

Public Methods

virtual double MaxStep( const HCL_Vector_d & x, const HCL_Vector_d & dir) const
virtual double Value( const HCL_Vector_d & x ) const
virtual void Gradient( const HCL_Vector_d & x, HCL_Vector_d & g ) const
virtual HCL_LinearOp_d* Hessian( const HCL_Vector_d & x ) const
void Scan( const HCL_Vector_d & x, const HCL_Vector_d & dx, int N, double hmin, double hmax, char * fname = NULL )
int CheckGrad( const HCL_Vector_d & x, const HCL_Vector_d & y, ostream & str, int n=10, double hmin=0.1, double hmax=1.0 )
int CheckHess( const HCL_Vector_d &, const HCL_Vector_d &, ostream & str, int n=10, double hmin=0.1, double hmax=1.0 )

Protected Methods

virtual double Value1( const HCL_Vector_d & x ) const
virtual void Gradient1( const HCL_Vector_d & x, HCL_Vector_d & y ) const
virtual void HessianImage( const HCL_Vector_d & x, const HCL_Vector_d & dx, HCL_Vector_d & dy ) const
virtual void HessianInvImage( const HCL_Vector_d & x, const HCL_Vector_d & dy, HCL_Vector_d & dx ) const
virtual HCL_LinearOp_d* Hessian1( const HCL_Vector_d & x ) const

Inherited from HCL_Base:

Public Methods

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

Documentation

HCL_BigMFcnl_d implements a "big-M" functional for the problem of finding a vector satisfying (that is, the goal is to find a point strictly satisfying ). The big-M functional is defined by

Note that the domain (the space of ) is implemented as a product space using HCL_GenericProductSpace_d.

For a general description of the methods of a functional class, see the documentation for the base class HCL_Functional.

HCL_BigMFcnl_d( HCL_LinearOp_d * AA, HCL_Vector_d * bb, double MM, double eeps )
Usual constructor; takes a pointer to the linear operator, a pointer to the right-hand side vector, the scalar , and the scalar

virtual HCL_VectorSpace_d& Domain() const
Domain space access. Returns a reference to the HCL_VectorSpace_d which forms the domain of the functional.

virtual HCL_EvaluateFunctional_d* Evaluate( const HCL_Vector_d & x ) const
Evaluate creates an "evaluation" object, which knows how to compute the function value, gradient,and Hessian at the given x

virtual ostream& Write( ostream & str ) const
Debugging information


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