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

Class for all Chen-Goldfarb penalty method specific calculated quantities. More...

#include <IpInexactCq.hpp>

+ Inheritance diagram for Ipopt::InexactCq:

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...
 
SmartPtr< const Vectorcurr_jac_cdT_times_curr_cdminuss ()
 Gradient of infeasibility w.r.t. More...
 
SmartPtr< const Vectorcurr_scaling_slacks ()
 Vector of all inequality slacks for doing the slack-based scaling. More...
 
SmartPtr< const Vectorcurr_slack_scaled_d_minus_s ()
 Vector with the slack-scaled d minus s inequalities. More...
 
Number curr_scaled_Ac_norm ()
 Scaled norm of Ac. More...
 
Number curr_scaled_A_norm2 ()
 Scaled, squared norm of A. More...
 
Number slack_scaled_norm (const Vector &x, const Vector &s)
 Compute the 2-norm of a slack-scaled vector with x and s component. More...
 
SmartPtr< const Vectorcurr_W_times_vec_x (const Vector &vec_x)
 Compute x component of the W*vec product for the current Hessian and a vector. More...
 
SmartPtr< const Vectorcurr_W_times_vec_s (const Vector &vec_s)
 Compute s component of the W*vec product for the current Hessian and a vector. More...
 
SmartPtr< const Vectorcurr_Wu_x ()
 Compute x component of the W*u product for the current values. More...
 
SmartPtr< const Vectorcurr_Wu_s ()
 Compute s component of the W*u product for the current values. More...
 
Number curr_uWu ()
 Compute the u^T*W*u product for the current values. More...
 
SmartPtr< const Vectorcurr_jac_times_normal_c ()
 Compute the c-component of the product of the current constraint Jacobian with the current normal step. More...
 
SmartPtr< const Vectorcurr_jac_times_normal_d ()
 Compute the d-component of the product of the current constraint Jacobian with the current normal step. More...
 
Constructors/Destructors
 InexactCq (IpoptNLP *ip_nlp, IpoptData *ip_data, IpoptCalculatedQuantities *ip_cq)
 Constructor. More...
 
virtual ~InexactCq ()
 Default destructor. More...
 
- Public Member Functions inherited from Ipopt::IpoptAdditionalCq
 IpoptAdditionalCq ()
 Default Constructor. More...
 
virtual ~IpoptAdditionalCq ()
 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
 

Static Public Member Functions

static void RegisterOptions (const SmartPtr< RegisteredOptions > &roptions)
 Methods for IpoptType. More...
 

Private Member Functions

InexactDataInexData ()
 Method to easily access Inexact data. More...
 
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.

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

Private Attributes

Number slack_scale_max_
 Upper bound on slack-based scaling factors. More...
 
Pointers for easy access to data and NLP information. To

avoid circular references of Smart Pointers, we use a regular pointer here.

IpoptNLPip_nlp_
 
IpoptDataip_data_
 
IpoptCalculatedQuantitiesip_cq_
 
Caches
CachedResults< SmartPtr< const
Vector > > 
curr_jac_cdT_times_curr_cdminuss_cache_
 
CachedResults< SmartPtr< const
Vector > > 
curr_scaling_slacks_cache_
 
CachedResults< SmartPtr< const
Vector > > 
curr_slack_scaled_d_minus_s_cache_
 
CachedResults< Numbercurr_scaled_Ac_norm_cache_
 
CachedResults< Numberslack_scaled_norm_cache_
 
CachedResults< SmartPtr< const
Vector > > 
curr_W_times_vec_x_cache_
 
CachedResults< SmartPtr< const
Vector > > 
curr_W_times_vec_s_cache_
 
CachedResults< SmartPtr< const
Vector > > 
curr_Wu_x_cache_
 
CachedResults< SmartPtr< const
Vector > > 
curr_Wu_s_cache_
 
CachedResults< Numbercurr_uWu_cache_
 
CachedResults< SmartPtr< const
Vector > > 
curr_jac_times_normal_c_cache_
 
CachedResults< SmartPtr< const
Vector > > 
curr_jac_times_normal_d_cache_
 

Detailed Description

Class for all Chen-Goldfarb penalty method specific calculated quantities.

Definition at line 22 of file IpInexactCq.hpp.

Constructor & Destructor Documentation

Ipopt::InexactCq::InexactCq ( IpoptNLP ip_nlp,
IpoptData ip_data,
IpoptCalculatedQuantities ip_cq 
)

Constructor.

virtual Ipopt::InexactCq::~InexactCq ( )
virtual

Default destructor.

Ipopt::InexactCq::InexactCq ( )
private

Default Constructor.

Ipopt::InexactCq::InexactCq ( const InexactCq )
private

Copy Constructor.

Member Function Documentation

bool Ipopt::InexactCq::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::IpoptAdditionalCq.

static void Ipopt::InexactCq::RegisterOptions ( const SmartPtr< RegisteredOptions > &  roptions)
static

Methods for IpoptType.

SmartPtr<const Vector> Ipopt::InexactCq::curr_jac_cdT_times_curr_cdminuss ( )

Gradient of infeasibility w.r.t.

x. Jacobian of equality constraints transpose times the equality constraints plus Jacobian of the inequality constraints transpose times the inequality constraints (including slacks).

SmartPtr<const Vector> Ipopt::InexactCq::curr_scaling_slacks ( )

Vector of all inequality slacks for doing the slack-based scaling.

SmartPtr<const Vector> Ipopt::InexactCq::curr_slack_scaled_d_minus_s ( )

Vector with the slack-scaled d minus s inequalities.

Number Ipopt::InexactCq::curr_scaled_Ac_norm ( )

Scaled norm of Ac.

Number Ipopt::InexactCq::curr_scaled_A_norm2 ( )

Scaled, squared norm of A.

Number Ipopt::InexactCq::slack_scaled_norm ( const Vector x,
const Vector s 
)

Compute the 2-norm of a slack-scaled vector with x and s component.

SmartPtr<const Vector> Ipopt::InexactCq::curr_W_times_vec_x ( const Vector vec_x)

Compute x component of the W*vec product for the current Hessian and a vector.

SmartPtr<const Vector> Ipopt::InexactCq::curr_W_times_vec_s ( const Vector vec_s)

Compute s component of the W*vec product for the current Hessian and a vector.

SmartPtr<const Vector> Ipopt::InexactCq::curr_Wu_x ( )

Compute x component of the W*u product for the current values.

u here is the tangential step.

SmartPtr<const Vector> Ipopt::InexactCq::curr_Wu_s ( )

Compute s component of the W*u product for the current values.

u here is the tangential step.

Number Ipopt::InexactCq::curr_uWu ( )

Compute the u^T*W*u product for the current values.

u here is the tangential step.

SmartPtr<const Vector> Ipopt::InexactCq::curr_jac_times_normal_c ( )

Compute the c-component of the product of the current constraint Jacobian with the current normal step.

SmartPtr<const Vector> Ipopt::InexactCq::curr_jac_times_normal_d ( )

Compute the d-component of the product of the current constraint Jacobian with the current normal step.

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

Overloaded Equals Operator.

InexactData& Ipopt::InexactCq::InexData ( )
inlineprivate

Method to easily access Inexact data.

Definition at line 128 of file IpInexactCq.hpp.

Member Data Documentation

IpoptNLP* Ipopt::InexactCq::ip_nlp_
private

Definition at line 122 of file IpInexactCq.hpp.

IpoptData* Ipopt::InexactCq::ip_data_
private

Definition at line 123 of file IpInexactCq.hpp.

IpoptCalculatedQuantities* Ipopt::InexactCq::ip_cq_
private

Definition at line 124 of file IpInexactCq.hpp.

CachedResults<SmartPtr<const Vector> > Ipopt::InexactCq::curr_jac_cdT_times_curr_cdminuss_cache_
private

Definition at line 138 of file IpInexactCq.hpp.

CachedResults<SmartPtr<const Vector> > Ipopt::InexactCq::curr_scaling_slacks_cache_
private

Definition at line 139 of file IpInexactCq.hpp.

CachedResults<SmartPtr<const Vector> > Ipopt::InexactCq::curr_slack_scaled_d_minus_s_cache_
private

Definition at line 140 of file IpInexactCq.hpp.

CachedResults<Number> Ipopt::InexactCq::curr_scaled_Ac_norm_cache_
private

Definition at line 141 of file IpInexactCq.hpp.

CachedResults<Number> Ipopt::InexactCq::slack_scaled_norm_cache_
private

Definition at line 142 of file IpInexactCq.hpp.

CachedResults<SmartPtr<const Vector> > Ipopt::InexactCq::curr_W_times_vec_x_cache_
private

Definition at line 143 of file IpInexactCq.hpp.

CachedResults<SmartPtr<const Vector> > Ipopt::InexactCq::curr_W_times_vec_s_cache_
private

Definition at line 144 of file IpInexactCq.hpp.

CachedResults<SmartPtr<const Vector> > Ipopt::InexactCq::curr_Wu_x_cache_
private

Definition at line 145 of file IpInexactCq.hpp.

CachedResults<SmartPtr<const Vector> > Ipopt::InexactCq::curr_Wu_s_cache_
private

Definition at line 146 of file IpInexactCq.hpp.

CachedResults<Number> Ipopt::InexactCq::curr_uWu_cache_
private

Definition at line 147 of file IpInexactCq.hpp.

CachedResults<SmartPtr<const Vector> > Ipopt::InexactCq::curr_jac_times_normal_c_cache_
private

Definition at line 148 of file IpInexactCq.hpp.

CachedResults<SmartPtr<const Vector> > Ipopt::InexactCq::curr_jac_times_normal_d_cache_
private

Definition at line 149 of file IpInexactCq.hpp.

Number Ipopt::InexactCq::slack_scale_max_
private

Upper bound on slack-based scaling factors.

Definition at line 153 of file IpInexactCq.hpp.


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