# 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:
[legend]

List of all members.

## 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 IteratesVector > | delta_cgpen () const
| Delta for the Chen-Goldfarb search direction.
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.
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.
SmartPtr< const IteratesVector > | delta_cgfast () const
| Delta for the fast Chen-Goldfarb search direction.
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.
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 ()
| Default 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.
## 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 &)
| Overloaded Equals Operator.
## Private Attributes
bool | initialize_called_
| flag indicating if Initialize method has been called (for debugging)
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 IteratesVector > | delta_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 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 IteratesVector > | delta_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 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.

Reimplemented from Ipopt::IpoptAdditionalData.

## 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:

- src/contrib/CGPenalty/IpCGPenaltyData.hpp

All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Defines