Ipopt  3.12.12
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Public Member Functions | Private Attributes | List of all members
Ipopt::CGPenaltyData Class Reference

Class to organize all the additional data required by the Chen-Goldfarb penalty function algorithm. More...

#include <IpCGPenaltyData.hpp>

+ Inheritance diagram for Ipopt::CGPenaltyData:

Public Member Functions

bool Initialize (const Journalist &jnlst, const OptionsList &options, const std::string &prefix)
 This method must be called to initialize the global algorithmic parameters. More...
 
bool InitializeDataStructures ()
 Initialize Data Structures. More...
 
SmartPtr< const IteratesVectordelta_cgpen () const
 Delta for the Chen-Goldfarb search direction. More...
 
void set_delta_cgpen (SmartPtr< IteratesVector > &delta_pen)
 Set the delta_cgpen - like the trial point, this method copies the pointer for efficiency (no copy and to keep cache tags the same) so after you call set, you cannot modify the data. More...
 
void set_delta_cgpen (SmartPtr< const IteratesVector > &delta_pen)
 Set the delta_cgpen - like the trial point, this method copies the pointer for efficiency (no copy and to keep cache tags the same) so after you call set, you cannot modify the data. More...
 
SmartPtr< const IteratesVectordelta_cgfast () const
 Delta for the fast Chen-Goldfarb search direction. More...
 
void set_delta_cgfast (SmartPtr< IteratesVector > &delta_fast)
 Set the delta_cgpen - like the trial point, this method copies the pointer for efficiency (no copy and to keep cache tags the same) so after you call set, you cannot modify the data. More...
 
Number CurrPenaltyPert ()
 
void SetCurrPenaltyPert (Number curr_penalty_pert)
 
void SetNeverTryPureNewton (bool never_try_pure_Newton)
 
Index NeverTryPureNewton ()
 
Index restor_iter ()
 
void SetRestorIter (Index restor_iter)
 
Number restor_counter ()
 
void SetRestorCounter (Number restor_counter)
 
void SetPrimalStepSize (Number max_alpha_x)
 
Number PrimalStepSize ()
 
Number curr_penalty () const
 
void Set_penalty (Number penalty)
 
void SetPenaltyUninitialized ()
 
bool PenaltyInitialized () const
 
Number curr_kkt_penalty () const
 
void Set_kkt_penalty (Number kkt_penalty)
 
void SetKKTPenaltyUninitialized ()
 
bool KKTPenaltyInitialized () const
 
Constructors/Destructors
 CGPenaltyData ()
 Constructor. More...
 
 ~CGPenaltyData ()
 Default destructor. More...
 
Chen-Goldfarb step2. Those fields can be used to store

directions related to the Chen-Goldfarb algorithm

bool HaveCgPenDeltas () const
 
void SetHaveCgPenDeltas (bool have_cgpen_deltas)
 
bool HaveCgFastDeltas () const
 
void SetHaveCgFastDeltas (bool have_cgfast_deltas)
 
Public Methods for updating iterates
void AcceptTrialPoint ()
 Set the current iterate values from the trial values. More...
 
- Public Member Functions inherited from Ipopt::IpoptAdditionalData
 IpoptAdditionalData ()
 Default Constructor. More...
 
virtual ~IpoptAdditionalData ()
 Default destructor. More...
 
- Public Member Functions inherited from Ipopt::ReferencedObject
 ReferencedObject ()
 
virtual ~ReferencedObject ()
 
Index ReferenceCount () const
 
void AddRef (const Referencer *referencer) const
 
void ReleaseRef (const Referencer *referencer) const
 

Private Member Functions

Default Compiler Generated Methods

(Hidden to avoid implicit creation/calling).

These methods are not implemented and we do not want the compiler to implement them for us, so we declare them private and do not define them. This ensures that they will not be implicitly created/called.

 CGPenaltyData (const CGPenaltyData &)
 Copy Constructor. More...
 
void operator= (const CGPenaltyData &)
 Overloaded Equals Operator. More...
 

Private Attributes

bool initialize_called_
 flag indicating if Initialize method has been called (for debugging) More...
 
Pure Chen-Goldfarb step for the penatly function. This

used to transfer the information about the step from the computation of the overall search direction to the line search.

SmartPtr< const IteratesVectordelta_cgpen_
 
bool have_cgpen_deltas_
 The following flag is set to true, if some other part of the algorithm has already computed the Chen-Goldfarb step. More...
 
Fast Chen-Goldfarb step for the penatly function. This

used to transfer the information about the step from the computation of the overall search direction to the line search.

SmartPtr< const IteratesVectordelta_cgfast_
 
bool have_cgfast_deltas_
 The following flag is set to true, if some other part of the algorithm has already computed the fast Chen-Goldfarb step. More...
 
penalty method
bool never_try_pure_Newton_
 Flag indicating whether the pure Newton method is used. More...
 
Index restor_iter_
 The iteration at which pure Newton method is given up. More...
 
Number restor_counter_
 
penalty parameters
Number curr_penalty_
 
bool penalty_initialized_
 
Number curr_kkt_penalty_
 
bool kkt_penalty_initialized_
 
Number curr_penalty_pert_
 
Number max_alpha_x_
 

Detailed Description

Class to organize all the additional data required by the Chen-Goldfarb penalty function algorithm.

Definition at line 22 of file IpCGPenaltyData.hpp.

Constructor & Destructor Documentation

Ipopt::CGPenaltyData::CGPenaltyData ( )

Constructor.

Ipopt::CGPenaltyData::~CGPenaltyData ( )

Default destructor.

Ipopt::CGPenaltyData::CGPenaltyData ( const CGPenaltyData )
private

Copy Constructor.

Member Function Documentation

bool Ipopt::CGPenaltyData::Initialize ( const Journalist jnlst,
const OptionsList options,
const std::string &  prefix 
)
virtual

This method must be called to initialize the global algorithmic parameters.

The parameters are taken from the OptionsList object.

Implements Ipopt::IpoptAdditionalData.

bool Ipopt::CGPenaltyData::InitializeDataStructures ( )
virtual

Initialize Data Structures.

Implements Ipopt::IpoptAdditionalData.

SmartPtr< const IteratesVector > Ipopt::CGPenaltyData::delta_cgpen ( ) const
inline

Delta for the Chen-Goldfarb search direction.

Definition at line 264 of file IpCGPenaltyData.hpp.

void Ipopt::CGPenaltyData::set_delta_cgpen ( SmartPtr< IteratesVector > &  delta_pen)
inline

Set the delta_cgpen - like the trial point, this method copies the pointer for efficiency (no copy and to keep cache tags the same) so after you call set, you cannot modify the data.

Definition at line 280 of file IpCGPenaltyData.hpp.

void Ipopt::CGPenaltyData::set_delta_cgpen ( SmartPtr< const IteratesVector > &  delta_pen)
inline

Set the delta_cgpen - like the trial point, this method copies the pointer for efficiency (no copy and to keep cache tags the same) so after you call set, you cannot modify the data.

This is the version that is happy with a pointer to const IteratesVector.

Definition at line 299 of file IpCGPenaltyData.hpp.

SmartPtr< const IteratesVector > Ipopt::CGPenaltyData::delta_cgfast ( ) const
inline

Delta for the fast Chen-Goldfarb search direction.

Definition at line 272 of file IpCGPenaltyData.hpp.

void Ipopt::CGPenaltyData::set_delta_cgfast ( SmartPtr< IteratesVector > &  delta_fast)
inline

Set the delta_cgpen - like the trial point, this method copies the pointer for efficiency (no copy and to keep cache tags the same) so after you call set, you cannot modify the data.

Definition at line 318 of file IpCGPenaltyData.hpp.

bool Ipopt::CGPenaltyData::HaveCgPenDeltas ( ) const
inline

Definition at line 73 of file IpCGPenaltyData.hpp.

void Ipopt::CGPenaltyData::SetHaveCgPenDeltas ( bool  have_cgpen_deltas)
inline

Definition at line 77 of file IpCGPenaltyData.hpp.

bool Ipopt::CGPenaltyData::HaveCgFastDeltas ( ) const
inline

Definition at line 82 of file IpCGPenaltyData.hpp.

void Ipopt::CGPenaltyData::SetHaveCgFastDeltas ( bool  have_cgfast_deltas)
inline

Definition at line 86 of file IpCGPenaltyData.hpp.

void Ipopt::CGPenaltyData::AcceptTrialPoint ( )
virtual

Set the current iterate values from the trial values.

Implements Ipopt::IpoptAdditionalData.

Number Ipopt::CGPenaltyData::CurrPenaltyPert ( )
inline

Definition at line 99 of file IpCGPenaltyData.hpp.

void Ipopt::CGPenaltyData::SetCurrPenaltyPert ( Number  curr_penalty_pert)
inline

Definition at line 103 of file IpCGPenaltyData.hpp.

void Ipopt::CGPenaltyData::SetNeverTryPureNewton ( bool  never_try_pure_Newton)
inline

Definition at line 108 of file IpCGPenaltyData.hpp.

Index Ipopt::CGPenaltyData::NeverTryPureNewton ( )
inline

Definition at line 112 of file IpCGPenaltyData.hpp.

Index Ipopt::CGPenaltyData::restor_iter ( )
inline

Definition at line 117 of file IpCGPenaltyData.hpp.

void Ipopt::CGPenaltyData::SetRestorIter ( Index  restor_iter)
inline

Definition at line 122 of file IpCGPenaltyData.hpp.

Number Ipopt::CGPenaltyData::restor_counter ( )
inline

Definition at line 126 of file IpCGPenaltyData.hpp.

void Ipopt::CGPenaltyData::SetRestorCounter ( Number  restor_counter)
inline

Definition at line 130 of file IpCGPenaltyData.hpp.

void Ipopt::CGPenaltyData::SetPrimalStepSize ( Number  max_alpha_x)
inline

Definition at line 135 of file IpCGPenaltyData.hpp.

Number Ipopt::CGPenaltyData::PrimalStepSize ( )
inline

Definition at line 139 of file IpCGPenaltyData.hpp.

Number Ipopt::CGPenaltyData::curr_penalty ( ) const
inline

Definition at line 144 of file IpCGPenaltyData.hpp.

void Ipopt::CGPenaltyData::Set_penalty ( Number  penalty)
inline

Definition at line 149 of file IpCGPenaltyData.hpp.

void Ipopt::CGPenaltyData::SetPenaltyUninitialized ( )
inline

Definition at line 154 of file IpCGPenaltyData.hpp.

bool Ipopt::CGPenaltyData::PenaltyInitialized ( ) const
inline

Definition at line 158 of file IpCGPenaltyData.hpp.

Number Ipopt::CGPenaltyData::curr_kkt_penalty ( ) const
inline

Definition at line 162 of file IpCGPenaltyData.hpp.

void Ipopt::CGPenaltyData::Set_kkt_penalty ( Number  kkt_penalty)
inline

Definition at line 167 of file IpCGPenaltyData.hpp.

void Ipopt::CGPenaltyData::SetKKTPenaltyUninitialized ( )
inline

Definition at line 172 of file IpCGPenaltyData.hpp.

bool Ipopt::CGPenaltyData::KKTPenaltyInitialized ( ) const
inline

Definition at line 176 of file IpCGPenaltyData.hpp.

void Ipopt::CGPenaltyData::operator= ( const CGPenaltyData )
private

Overloaded Equals Operator.

Member Data Documentation

SmartPtr<const IteratesVector> Ipopt::CGPenaltyData::delta_cgpen_
private

Definition at line 189 of file IpCGPenaltyData.hpp.

bool Ipopt::CGPenaltyData::have_cgpen_deltas_
private

The following flag is set to true, if some other part of the algorithm has already computed the Chen-Goldfarb step.

This flag is reset when the AcceptTrialPoint method is called. ToDo: we could cue off of a null delta_cgpen_;

Definition at line 195 of file IpCGPenaltyData.hpp.

SmartPtr<const IteratesVector> Ipopt::CGPenaltyData::delta_cgfast_
private

Definition at line 203 of file IpCGPenaltyData.hpp.

bool Ipopt::CGPenaltyData::have_cgfast_deltas_
private

The following flag is set to true, if some other part of the algorithm has already computed the fast Chen-Goldfarb step.

This flag is reset when the AcceptTrialPoint method is called.

  • ToDo: we could cue off of a null delta_cgfast_;

Definition at line 209 of file IpCGPenaltyData.hpp.

bool Ipopt::CGPenaltyData::never_try_pure_Newton_
private

Flag indicating whether the pure Newton method is used.

Definition at line 215 of file IpCGPenaltyData.hpp.

Index Ipopt::CGPenaltyData::restor_iter_
private

The iteration at which pure Newton method is given up.

Definition at line 218 of file IpCGPenaltyData.hpp.

Number Ipopt::CGPenaltyData::restor_counter_
private

Definition at line 219 of file IpCGPenaltyData.hpp.

Number Ipopt::CGPenaltyData::curr_penalty_
private

Definition at line 222 of file IpCGPenaltyData.hpp.

bool Ipopt::CGPenaltyData::penalty_initialized_
private

Definition at line 223 of file IpCGPenaltyData.hpp.

Number Ipopt::CGPenaltyData::curr_kkt_penalty_
private

Definition at line 224 of file IpCGPenaltyData.hpp.

bool Ipopt::CGPenaltyData::kkt_penalty_initialized_
private

Definition at line 225 of file IpCGPenaltyData.hpp.

Number Ipopt::CGPenaltyData::curr_penalty_pert_
private

Definition at line 226 of file IpCGPenaltyData.hpp.

Number Ipopt::CGPenaltyData::max_alpha_x_
private

Definition at line 227 of file IpCGPenaltyData.hpp.

bool Ipopt::CGPenaltyData::initialize_called_
private

flag indicating if Initialize method has been called (for debugging)

Definition at line 232 of file IpCGPenaltyData.hpp.


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