Ipopt Documentation  
 
Loading...
Searching...
No Matches
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.
 
bool InitializeDataStructures ()
 Initialize Data Structures.
 
SmartPtr< const IteratesVectordelta_cgpen () const
 Delta for the Chen-Goldfarb search direction.
 
void set_delta_cgpen (SmartPtr< IteratesVector > &delta_pen)
 Set the delta_cgpen.
 
void set_delta_cgpen (SmartPtr< const IteratesVector > &delta_pen)
 Set the delta_cgpen.
 
SmartPtr< const IteratesVectordelta_cgfast () const
 Delta for the fast Chen-Goldfarb search direction.
 
void set_delta_cgfast (SmartPtr< IteratesVector > &delta_fast)
 Set the delta_cgfast.
 
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.
 
 ~CGPenaltyData ()
 Destructor.
 
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.
 
- Public Member Functions inherited from Ipopt::IpoptAdditionalData
 IpoptAdditionalData ()
 Default Constructor.
 
virtual ~IpoptAdditionalData ()
 Destructor.
 
- 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.
 
void operator= (const CGPenaltyData &)
 Default Assignment Operator.
 

Private Attributes

bool initialize_called_
 flag indicating if Initialize method has been called (for debugging)
 
Pure Chen-Goldfarb step for the penalty 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.
 
Fast Chen-Goldfarb step for the penalty 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.
 
penalty method
bool never_try_pure_Newton_
 Flag indicating whether the pure Newton method is used.
 
Index restor_iter_
 The iteration at which pure Newton method is given up.
 
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 21 of file IpCGPenaltyData.hpp.

Constructor & Destructor Documentation

◆ CGPenaltyData() [1/2]

Ipopt::CGPenaltyData::CGPenaltyData ( )

Constructor.

◆ ~CGPenaltyData()

Ipopt::CGPenaltyData::~CGPenaltyData ( )

Destructor.

◆ CGPenaltyData() [2/2]

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

Copy Constructor.

Member Function Documentation

◆ Initialize()

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.

◆ InitializeDataStructures()

bool Ipopt::CGPenaltyData::InitializeDataStructures ( )
virtual

Initialize Data Structures.

Implements Ipopt::IpoptAdditionalData.

◆ delta_cgpen()

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

Delta for the Chen-Goldfarb search direction.

Definition at line 321 of file IpCGPenaltyData.hpp.

◆ set_delta_cgpen() [1/2]

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 336 of file IpCGPenaltyData.hpp.

◆ set_delta_cgpen() [2/2]

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 359 of file IpCGPenaltyData.hpp.

◆ delta_cgfast()

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

Delta for the fast Chen-Goldfarb search direction.

Definition at line 328 of file IpCGPenaltyData.hpp.

◆ set_delta_cgfast()

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

Set the delta_cgfast.

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 382 of file IpCGPenaltyData.hpp.

◆ HaveCgPenDeltas()

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

Definition at line 90 of file IpCGPenaltyData.hpp.

◆ SetHaveCgPenDeltas()

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

Definition at line 95 of file IpCGPenaltyData.hpp.

◆ HaveCgFastDeltas()

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

Definition at line 102 of file IpCGPenaltyData.hpp.

◆ SetHaveCgFastDeltas()

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

Definition at line 107 of file IpCGPenaltyData.hpp.

◆ AcceptTrialPoint()

void Ipopt::CGPenaltyData::AcceptTrialPoint ( )
virtual

Set the current iterate values from the trial values.

Implements Ipopt::IpoptAdditionalData.

◆ CurrPenaltyPert()

Number Ipopt::CGPenaltyData::CurrPenaltyPert ( )
inline

Definition at line 121 of file IpCGPenaltyData.hpp.

◆ SetCurrPenaltyPert()

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

Definition at line 126 of file IpCGPenaltyData.hpp.

◆ SetNeverTryPureNewton()

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

Definition at line 132 of file IpCGPenaltyData.hpp.

◆ NeverTryPureNewton()

Index Ipopt::CGPenaltyData::NeverTryPureNewton ( )
inline

Definition at line 139 of file IpCGPenaltyData.hpp.

◆ restor_iter()

Index Ipopt::CGPenaltyData::restor_iter ( )
inline

Definition at line 144 of file IpCGPenaltyData.hpp.

◆ SetRestorIter()

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

Definition at line 149 of file IpCGPenaltyData.hpp.

◆ restor_counter()

Number Ipopt::CGPenaltyData::restor_counter ( )
inline

Definition at line 156 of file IpCGPenaltyData.hpp.

◆ SetRestorCounter()

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

Definition at line 161 of file IpCGPenaltyData.hpp.

◆ SetPrimalStepSize()

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

Definition at line 168 of file IpCGPenaltyData.hpp.

◆ PrimalStepSize()

Number Ipopt::CGPenaltyData::PrimalStepSize ( )
inline

Definition at line 175 of file IpCGPenaltyData.hpp.

◆ curr_penalty()

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

Definition at line 180 of file IpCGPenaltyData.hpp.

◆ Set_penalty()

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

Definition at line 186 of file IpCGPenaltyData.hpp.

◆ SetPenaltyUninitialized()

void Ipopt::CGPenaltyData::SetPenaltyUninitialized ( )
inline

Definition at line 194 of file IpCGPenaltyData.hpp.

◆ PenaltyInitialized()

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

Definition at line 199 of file IpCGPenaltyData.hpp.

◆ curr_kkt_penalty()

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

Definition at line 204 of file IpCGPenaltyData.hpp.

◆ Set_kkt_penalty()

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

Definition at line 210 of file IpCGPenaltyData.hpp.

◆ SetKKTPenaltyUninitialized()

void Ipopt::CGPenaltyData::SetKKTPenaltyUninitialized ( )
inline

Definition at line 218 of file IpCGPenaltyData.hpp.

◆ KKTPenaltyInitialized()

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

Definition at line 223 of file IpCGPenaltyData.hpp.

◆ operator=()

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

Default Assignment Operator.

Member Data Documentation

◆ delta_cgpen_

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

Definition at line 237 of file IpCGPenaltyData.hpp.

◆ have_cgpen_deltas_

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.

Definition at line 244 of file IpCGPenaltyData.hpp.

◆ delta_cgfast_

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

Definition at line 254 of file IpCGPenaltyData.hpp.

◆ have_cgfast_deltas_

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.

Definition at line 262 of file IpCGPenaltyData.hpp.

◆ never_try_pure_Newton_

bool Ipopt::CGPenaltyData::never_try_pure_Newton_
private

Flag indicating whether the pure Newton method is used.

Definition at line 268 of file IpCGPenaltyData.hpp.

◆ restor_iter_

Index Ipopt::CGPenaltyData::restor_iter_
private

The iteration at which pure Newton method is given up.

Definition at line 271 of file IpCGPenaltyData.hpp.

◆ restor_counter_

Number Ipopt::CGPenaltyData::restor_counter_
private

Definition at line 272 of file IpCGPenaltyData.hpp.

◆ curr_penalty_

Number Ipopt::CGPenaltyData::curr_penalty_
private

Definition at line 275 of file IpCGPenaltyData.hpp.

◆ penalty_initialized_

bool Ipopt::CGPenaltyData::penalty_initialized_
private

Definition at line 276 of file IpCGPenaltyData.hpp.

◆ curr_kkt_penalty_

Number Ipopt::CGPenaltyData::curr_kkt_penalty_
private

Definition at line 277 of file IpCGPenaltyData.hpp.

◆ kkt_penalty_initialized_

bool Ipopt::CGPenaltyData::kkt_penalty_initialized_
private

Definition at line 278 of file IpCGPenaltyData.hpp.

◆ curr_penalty_pert_

Number Ipopt::CGPenaltyData::curr_penalty_pert_
private

Definition at line 279 of file IpCGPenaltyData.hpp.

◆ max_alpha_x_

Number Ipopt::CGPenaltyData::max_alpha_x_
private

Definition at line 280 of file IpCGPenaltyData.hpp.

◆ initialize_called_

bool Ipopt::CGPenaltyData::initialize_called_
private

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

Definition at line 284 of file IpCGPenaltyData.hpp.


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