MOOCHO (Single Doxygen Collection)  Version of the Day
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Types | Public Member Functions | Private Member Functions | List of all members
MoochoPack::UpdateReducedSigma_Step Class Reference

Standard class for updating the reduced sigma for interior point optimization. More...

#include <MoochoPack_UpdateReducedSigma_Step.hpp>

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

Public Types

enum  e_update_methods {
  ALWAYS_EXPLICIT, BFGS_PRIMAL, BFGS_DUAL_NO_CORRECTION, BFGS_DUAL_EXPLICIT_CORRECTION,
  BFGS_DUAL_SCALING_CORRECTION
}
 
- Public Types inherited from IterationPack::AlgorithmStep
typedef size_t poss_type
 

Public Member Functions

 STANDARD_MEMBER_COMPOSITION_MEMBERS (e_update_methods, update_method)
 update method for the reduced sigma term update_method = always_explicit; update_method = BFGS_primal; update_method = BFGS_dual_no_correction; update_method = BFGS_dual_explicit_correction; *** (default) update_method = BFGS_dual_scaling_correction; These options determine exactly how the reduced sigma term will be updated. More...
 
 UpdateReducedSigma_Step (const e_update_methods update_method=ALWAYS_EXPLICIT)
 
- Public Member Functions inherited from IterationPack::AlgorithmStep
virtual ~AlgorithmStep ()
 
virtual void initialize_step (Algorithm &algo, poss_type step_poss, EDoStepType type, poss_type assoc_step_poss)
 Called by Algorithm just before the algorithm is run. More...
 
virtual void inform_updated (Algorithm &algo, poss_type step_poss, EDoStepType type, poss_type assoc_step_poss)
 Called by Algorithm to inform when a runtime configuration change is finihed. More...
 
virtual void finalize_step (Algorithm &algo, poss_type step_poss, EDoStepType type, poss_type assoc_step_poss)
 Called by Algorithm just after an algorithm is terminiated. More...
 

Private Member Functions

void FormReducedSigmaExplicitly (NLPAlgo &algo, IpState &s, EJournalOutputLevel olevel, std::ostream &out)
 

Overridden from AlgorithmStep

bool do_step (Algorithm &algo, poss_type step_poss, IterationPack::EDoStepType type, poss_type assoc_step_poss)
 
void print_step (const IterationPack::Algorithm &algo, poss_type step_poss, IterationPack::EDoStepType type, poss_type assoc_step_poss, std::ostream &out, const std::string &leading_str) const
 Called by Algorithm::print_algorithm() to print out what this step does in Matlab like format. More...
 

Detailed Description

Standard class for updating the reduced sigma for interior point optimization.

Definition at line 63 of file MoochoPack_UpdateReducedSigma_Step.hpp.

Member Enumeration Documentation

Enumerator
ALWAYS_EXPLICIT 
BFGS_PRIMAL 
BFGS_DUAL_NO_CORRECTION 
BFGS_DUAL_EXPLICIT_CORRECTION 
BFGS_DUAL_SCALING_CORRECTION 

Definition at line 68 of file MoochoPack_UpdateReducedSigma_Step.hpp.

Constructor & Destructor Documentation

MoochoPack::UpdateReducedSigma_Step::UpdateReducedSigma_Step ( const e_update_methods  update_method = ALWAYS_EXPLICIT)

Constructor.

Definition at line 67 of file MoochoPack_UpdateReducedSigma_Step.cpp.

Member Function Documentation

MoochoPack::UpdateReducedSigma_Step::STANDARD_MEMBER_COMPOSITION_MEMBERS ( e_update_methods  ,
update_method   
)

update method for the reduced sigma term update_method = always_explicit; update_method = BFGS_primal; update_method = BFGS_dual_no_correction; update_method = BFGS_dual_explicit_correction; *** (default) update_method = BFGS_dual_scaling_correction; These options determine exactly how the reduced sigma term will be updated.

always_explicit : the full Z_kT*Sigma*Zk at each step (expensive) BFGS_primal : a BFGS update of mu*X^-2 (exact at solution) BFGS_dual_no_correction : update with Z_kT*Sigma*Z_k*pz (no correction when mu changes) BFGS_dual_explicit_correction : same as above (do an explicit calculation when mu changes) BFGS_dual_scaling_correction : same as above (scale by mu_kp1/mu_k when mu changes)

bool MoochoPack::UpdateReducedSigma_Step::do_step ( Algorithm algo,
poss_type  step_poss,
IterationPack::EDoStepType  type,
poss_type  assoc_step_poss 
)
virtual
void MoochoPack::UpdateReducedSigma_Step::print_step ( const IterationPack::Algorithm algo,
poss_type  step_poss,
IterationPack::EDoStepType  type,
poss_type  assoc_step_poss,
std::ostream &  out,
const std::string &  leading_str 
) const
virtual

Called by Algorithm::print_algorithm() to print out what this step does in Matlab like format.

The default does nothing.

Reimplemented from IterationPack::AlgorithmStep.

Definition at line 127 of file MoochoPack_UpdateReducedSigma_Step.cpp.

void MoochoPack::UpdateReducedSigma_Step::FormReducedSigmaExplicitly ( NLPAlgo algo,
IpState s,
EJournalOutputLevel  olevel,
std::ostream &  out 
)
private

Definition at line 144 of file MoochoPack_UpdateReducedSigma_Step.cpp.


The documentation for this class was generated from the following files: