class HCL_UMinProductDomainHess_d : public HCL_Base

HCL_UMinProductDomainHess_d is the abstract base class for unconstrained minimization algorithms designed for problems in which the objective function is defined on a product space

Inheritance:


Public Classes

enum
Termination codes
PossibleMinimizer
Possible local minimizer
PossibleConvergence
Possible convergence
LineSearchFailed
Line search failed
PossibleDivergence
Possible divergence
IterationLimit
Iteration limit reached
InaccurateGradient
Possible inaccurate gradient calculation

Public Methods

virtual HCL_EvalFunctionalProductDomainHess_d& LastEval ()
LastEval returns a reference to the functional's evaluation object at the most recent point
virtual int Minimize ( HCL_FunctionalProductDomainHess_d & f, HCL_ProductVector_d & x )
Minimize attempts to find a local minimizer of the functional f, using x as a starting guess
virtual Table& Parameters ()
Access to parameter table
virtual void SetScaling ( HCL_LinearOpAdj_d * S, HCL_LinearSolver_d * lsolver )
SetScaling defines a new inner product in terms of a symmetric, positive definite operator S: <x,y> = (x,Sy)
virtual void SetScaling ( HCL_LinearOpAdjInv_d * S )
Alternate version of SetScaling.
virtual void UnSetScaling ()
UnSetScaling returns the inner product to the default.

Public

enum
Termination codes
PossibleMinimizer
Possible local minimizer
PossibleConvergence
Possible convergence
LineSearchFailed
Line search failed
PossibleDivergence
Possible divergence
IterationLimit
Iteration limit reached
InaccurateGradient
Possible inaccurate gradient calculation

Inherited from HCL_Base:

Public Methods

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

Private Fields

int ReferenceCount

Documentation

HCL_UMinProductDomainHess_d is the abstract base class for unconstrained minimization algorithms designed for problems in which the objective function is defined on a product space. The suffix "Hess" indicates that first and second derivative information is used. In the context of HCL, this means that an object of this type will minimize a HCL_FunctionalProductDomainHess_d.

All objects derived from HCL_UMinProductDomainHess_d have five methods:

enum
Termination codes

PossibleMinimizer
Possible local minimizer. The algorithm has succeeded in reducing the norm of the gradient below the tolerance specified by the user.

PossibleConvergence
Possible convergence. The algorithm took a step shorter than the minimum step length specified by the user.

LineSearchFailed
Line search failed. The line search was unable to reduce the function value.

PossibleDivergence
Possible divergence. The algorithm took 5 consecutive steps exceeding the maximum step length specified by the user.

IterationLimit
Iteration limit reached. The algorithm was unable to meet the stopping criteria in the number of iterations allowed.

InaccurateGradient
Possible inaccurate gradient calculation. The negative gradient was not a descent direction. Note that the minimizer does perform any other check of the accuracy of the gradient calculation. The HCL_FunctionalGrad_d class has a method CheckGrad to compare the analytic gradient against finite differences, but the implementor of the functional is responsible for calling this method explicitly.

virtual Table& Parameters()
Access to parameter table. Algorithmic parameters can be accessed with Parameters().GetValue( "NAME",val ) or changed with Parameters().PutValue( "NAME",val ).

virtual HCL_EvalFunctionalProductDomainHess_d& LastEval()
LastEval returns a reference to the functional's evaluation object at the most recent point. Thus, after the minimization has completed, the calling routine has access to the last function value and gradient.

virtual void SetScaling( HCL_LinearOpAdj_d * S, HCL_LinearSolver_d * lsolver )
SetScaling defines a new inner product in terms of a symmetric, positive definite operator S: <x,y> = (x,Sy)

virtual void SetScaling( HCL_LinearOpAdjInv_d * S )
Alternate version of SetScaling.

virtual void UnSetScaling()
UnSetScaling returns the inner product to the default.

virtual int Minimize( HCL_FunctionalProductDomainHess_d & f, HCL_ProductVector_d & x )
Minimize attempts to find a local minimizer of the functional f, using x as a starting guess. The return value is the termination code, as given above.


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