MoochoPack::CheckConvergence_Strategy Class Reference

Strategy interface for performing convergence checks. More...

#include <MoochoPack_CheckConvergence_Strategy.hpp>

Inheritance diagram for MoochoPack::CheckConvergence_Strategy:
Inheritance graph
[legend]

List of all members.

Public Types

enum  EOptErrorCheck { OPT_ERROR_REDUCED_GRADIENT_LAGR, OPT_ERROR_GRADIENT_LAGR }
enum  EScaleKKTErrorBy { SCALE_BY_ONE, SCALE_BY_NORM_2_X, SCALE_BY_NORM_INF_X }

Public Member Functions

 STANDARD_MEMBER_COMPOSITION_MEMBERS (EOptErrorCheck, opt_error_check)
 <<std member="" comp>="">> members for whether to check the reduced or full gradient of the Lagrangian.
 STANDARD_MEMBER_COMPOSITION_MEMBERS (EScaleKKTErrorBy, scale_opt_error_by)
 <<std member="" comp>="">> members for how the optimality condition should be scaled
 STANDARD_MEMBER_COMPOSITION_MEMBERS (EScaleKKTErrorBy, scale_feas_error_by)
 <<std member="" comp>="">> members for how the feasibility condition should be scaled
 STANDARD_MEMBER_COMPOSITION_MEMBERS (EScaleKKTErrorBy, scale_comp_error_by)
 <<std member="" comp>="">> members for how the complimentarity condition should be scaled
 STANDARD_MEMBER_COMPOSITION_MEMBERS (bool, scale_opt_error_by_Gf)
 <<std member="" comp>="">> members for whether the optimality conditions should be scaled by the
 CheckConvergence_Strategy (EOptErrorCheck opt_error_check=OPT_ERROR_REDUCED_GRADIENT_LAGR, EScaleKKTErrorBy scale_opt_error_by=SCALE_BY_ONE, EScaleKKTErrorBy scale_feas_error_by=SCALE_BY_ONE, EScaleKKTErrorBy scale_comp_error_by=SCALE_BY_ONE, bool scale_opt_error_by_Gf=true)
 
virtual bool Converged (Algorithm &_algo)=0
 
virtual void print_step (const Algorithm &_algo, std::ostream &out, const std::string &L) const =0
 

Detailed Description

Strategy interface for performing convergence checks.

This object can not change the flow of control or do anything fancy. It just checks convergence by calculating norm errors and comparing with tolerance It can update iteration quantities if desired.

See the printed documentation generated by this->print_step().

Definition at line 47 of file MoochoPack_CheckConvergence_Strategy.hpp.


Member Enumeration Documentation

Enumerator:
OPT_ERROR_REDUCED_GRADIENT_LAGR 
OPT_ERROR_GRADIENT_LAGR 

Definition at line 51 of file MoochoPack_CheckConvergence_Strategy.hpp.

Enumerator:
SCALE_BY_ONE 
SCALE_BY_NORM_2_X 
SCALE_BY_NORM_INF_X 

Definition at line 62 of file MoochoPack_CheckConvergence_Strategy.hpp.


Constructor & Destructor Documentation

MoochoPack::CheckConvergence_Strategy::CheckConvergence_Strategy ( EOptErrorCheck  opt_error_check = OPT_ERROR_REDUCED_GRADIENT_LAGR,
EScaleKKTErrorBy  scale_opt_error_by = SCALE_BY_ONE,
EScaleKKTErrorBy  scale_feas_error_by = SCALE_BY_ONE,
EScaleKKTErrorBy  scale_comp_error_by = SCALE_BY_ONE,
bool  scale_opt_error_by_Gf = true 
)

*******************************************

Definition at line 39 of file MoochoPack_CheckConvergence_Strategy.cpp.


Member Function Documentation

MoochoPack::CheckConvergence_Strategy::STANDARD_MEMBER_COMPOSITION_MEMBERS ( EOptErrorCheck  ,
opt_error_check   
)

<<std member="" comp>="">> members for whether to check the reduced or full gradient of the Lagrangian.

MoochoPack::CheckConvergence_Strategy::STANDARD_MEMBER_COMPOSITION_MEMBERS ( EScaleKKTErrorBy  ,
scale_opt_error_by   
)

<<std member="" comp>="">> members for how the optimality condition should be scaled

MoochoPack::CheckConvergence_Strategy::STANDARD_MEMBER_COMPOSITION_MEMBERS ( EScaleKKTErrorBy  ,
scale_feas_error_by   
)

<<std member="" comp>="">> members for how the feasibility condition should be scaled

MoochoPack::CheckConvergence_Strategy::STANDARD_MEMBER_COMPOSITION_MEMBERS ( EScaleKKTErrorBy  ,
scale_comp_error_by   
)

<<std member="" comp>="">> members for how the complimentarity condition should be scaled

MoochoPack::CheckConvergence_Strategy::STANDARD_MEMBER_COMPOSITION_MEMBERS ( bool  ,
scale_opt_error_by_Gf   
)

<<std member="" comp>="">> members for whether the optimality conditions should be scaled by the

virtual bool MoochoPack::CheckConvergence_Strategy::Converged ( Algorithm _algo  )  [pure virtual]
virtual void MoochoPack::CheckConvergence_Strategy::print_step ( const Algorithm _algo,
std::ostream &  out,
const std::string &  L 
) const [pure virtual]

The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Generated on Wed Apr 13 10:17:42 2011 for MOOCHO (Single Doxygen Collection) by  doxygen 1.6.3