Class to organize all the data required by the algorithm. More...
#include <IpIpoptData.hpp>
Public Member Functions | |
bool | InitializeDataStructures (IpoptNLP &ip_nlp, bool want_x, bool want_y_c, bool want_y_d, bool want_z_L, bool want_z_U) |
Initialize Data Structures. | |
bool | Initialize (const Journalist &jnlst, const OptionsList &options, const std::string &prefix) |
This method must be called to initialize the global algorithmic parameters. | |
TimingStatistics & | TimingStats () |
Return Timing Statistics Object. | |
CGPenaltyData & | CGPenData () |
Get access to the Chen-Goldbarb penalty method specific data. | |
void | setPDPert (Number pd_pert_x, Number pd_pert_s, Number pd_pert_c, Number pd_pert_d) |
Set the perturbation of the primal-dual system. | |
void | getPDPert (Number &pd_pert_x, Number &pd_pert_s, Number &pd_pert_c, Number &pd_pert_d) |
Get the current perturbation of the primal-dual system. | |
Constructors/Destructors | |
IpoptData () | |
Constructor. | |
~IpoptData () | |
Default destructor. | |
Get Methods for Iterates | |
SmartPtr< const IteratesVector > | curr () const |
Current point. | |
SmartPtr< const IteratesVector > | trial () const |
Get the current point in a copied container that is non-const. | |
void | set_trial (SmartPtr< IteratesVector > &trial) |
Get Trial point in a copied container that is non-const. | |
void | SetTrialPrimalVariablesFromStep (Number alpha, const Vector &delta_x, const Vector &delta_s) |
Set the values of the primal trial variables (x and s) from provided Step with step length alpha. | |
void | SetTrialEqMultipliersFromStep (Number alpha, const Vector &delta_y_c, const Vector &delta_y_d) |
Set the values of the trial values for the equality constraint multipliers (y_c and y_d) from provided step with step length alpha. | |
void | SetTrialBoundMultipliersFromStep (Number alpha, const Vector &delta_z_L, const Vector &delta_z_U, const Vector &delta_v_L, const Vector &delta_v_U) |
Set the value of the trial values for the bound multipliers (z_L, z_U, v_L, v_U) from provided step with step length alpha. | |
SmartPtr< const IteratesVector > | delta () const |
ToDo: I may need to add versions of set_trial like the following, but I am not sure. | |
void | set_delta (SmartPtr< IteratesVector > &delta) |
Set the current delta - 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 (SmartPtr< const IteratesVector > &delta) |
Set the current delta - 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_aff () const |
Affine Delta. | |
void | set_delta_aff (SmartPtr< IteratesVector > &delta_aff) |
Set the affine delta - 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 SymMatrix > | W () |
Hessian or Hessian approximation (do not hold on to it, it might be changed). | |
void | Set_W (SmartPtr< const SymMatrix > W) |
Set Hessian approximation. | |
("Main") Primal-dual search direction. Those fields are | |
bool | HaveDeltas () const |
Returns true, if the primal-dual step have been already computed for the current iteration. | |
void | SetHaveDeltas (bool have_deltas) |
Method for setting the HaveDeltas flag. | |
Affine-scaling step. Those fields can be used to store | |
bool | HaveAffineDeltas () const |
Returns true, if the affine-scaling step have been already computed for the current iteration. | |
void | SetHaveAffineDeltas (bool have_affine_deltas) |
Method for setting the HaveDeltas flag. | |
Public Methods for updating iterates | |
void | CopyTrialToCurrent () |
Copy the trial values to the current values. | |
void | AcceptTrialPoint () |
Set the current iterate values from the trial values. | |
General algorithmic data | |
Index | iter_count () const |
Setting the flag that indicates if a tiny step (below machine precision) has been detected. | |
void | Set_iter_count (Index iter_count) |
Setting the flag that indicates if a tiny step (below machine precision) has been detected. | |
Number | curr_mu () const |
Setting the flag that indicates if a tiny step (below machine precision) has been detected. | |
void | Set_mu (Number mu) |
Setting the flag that indicates if a tiny step (below machine precision) has been detected. | |
bool | MuInitialized () const |
Setting the flag that indicates if a tiny step (below machine precision) has been detected. | |
Number | curr_tau () const |
Setting the flag that indicates if a tiny step (below machine precision) has been detected. | |
void | Set_tau (Number tau) |
Setting the flag that indicates if a tiny step (below machine precision) has been detected. | |
bool | TauInitialized () const |
Setting the flag that indicates if a tiny step (below machine precision) has been detected. | |
void | SetFreeMuMode (bool free_mu_mode) |
Setting the flag that indicates if a tiny step (below machine precision) has been detected. | |
bool | FreeMuMode () const |
Setting the flag that indicates if a tiny step (below machine precision) has been detected. | |
void | Set_tiny_step_flag (bool flag) |
Setting the flag that indicates if a tiny step (below machine precision) has been detected. | |
bool | tiny_step_flag () |
Setting the flag that indicates if a tiny step (below machine precision) has been detected. | |
Information gathered for iteration output | |
Number | info_regu_x () const |
Set this to true, if the next time when output is written, the summary line should not be printed. | |
void | Set_info_regu_x (Number regu_x) |
Set this to true, if the next time when output is written, the summary line should not be printed. | |
Number | info_alpha_primal () const |
Set this to true, if the next time when output is written, the summary line should not be printed. | |
void | Set_info_alpha_primal (Number alpha_primal) |
Set this to true, if the next time when output is written, the summary line should not be printed. | |
char | info_alpha_primal_char () const |
Set this to true, if the next time when output is written, the summary line should not be printed. | |
void | Set_info_alpha_primal_char (char info_alpha_primal_char) |
Set this to true, if the next time when output is written, the summary line should not be printed. | |
Number | info_alpha_dual () const |
Set this to true, if the next time when output is written, the summary line should not be printed. | |
void | Set_info_alpha_dual (Number alpha_dual) |
Set this to true, if the next time when output is written, the summary line should not be printed. | |
Index | info_ls_count () const |
Set this to true, if the next time when output is written, the summary line should not be printed. | |
void | Set_info_ls_count (Index ls_count) |
Set this to true, if the next time when output is written, the summary line should not be printed. | |
bool | info_skip_output () const |
Set this to true, if the next time when output is written, the summary line should not be printed. | |
void | Append_info_string (const std::string &add_str) |
Set this to true, if the next time when output is written, the summary line should not be printed. | |
const std::string & | info_string () const |
Set this to true, if the next time when output is written, the summary line should not be printed. | |
void | Set_info_skip_output (bool info_skip_output) |
Set this to true, if the next time when output is written, the summary line should not be printed. | |
void | ResetInfo () |
Reset all info fields. | |
Private Member Functions | |
Default Compiler Generated Methods | |
IpoptData (const IpoptData &) | |
Copy Constructor. | |
void | operator= (const IpoptData &) |
Overloaded Equals Operator. | |
Private Attributes | |
Index | iter_count_ |
iteration count | |
Number | curr_mu_ |
current barrier parameter | |
bool | mu_initialized_ |
Number | curr_tau_ |
current fraction to the boundary parameter | |
bool | tau_initialized_ |
bool | initialize_called_ |
flag indicating if Initialize method has been called (for debugging) | |
bool | have_prototypes_ |
flag for debugging whether we have already curr_ values available (from which new Vectors can be generated | |
SmartPtr< IteratesVectorSpace > | iterates_space_ |
VectorSpace for all the iterates. | |
TimingStatistics | timing_statistics_ |
TimingStatistics object collecting all Ipopt timing statistics. | |
CGPenaltyData *const | cgpen_data_ |
Object for the data specific for the Chen-Goldfarb penalty method algorithm. | |
Iterates | |
SmartPtr< const IteratesVector > | curr_ |
Main iteration variables (current iteration). | |
SmartPtr< const IteratesVector > | trial_ |
Main iteration variables (trial calculations). | |
SmartPtr< const SymMatrix > | W_ |
Hessian (approximation) - might be changed elsewhere! | |
Primal-dual Step | |
SmartPtr< const IteratesVector > | delta_ |
The following flag is set to true, if some other part of the algorithm (like the method for computing the barrier parameter) has already computed the primal-dual search direction. | |
bool | have_deltas_ |
The following flag is set to true, if some other part of the algorithm (like the method for computing the barrier parameter) has already computed the primal-dual search direction. | |
Affine-scaling step. This used to transfer the | |
SmartPtr< const IteratesVector > | delta_aff_ |
The following flag is set to true, if some other part of the algorithm (like the method for computing the barrier parameter) has already computed the affine-scaling step. | |
bool | have_affine_deltas_ |
The following flag is set to true, if some other part of the algorithm (like the method for computing the barrier parameter) has already computed the affine-scaling step. | |
Global algorithm parameters. Those are options that can | |
be modified by the user and appear at different places in the algorithm. They are set using an OptionsList object in the Initialize method. | |
Number | tol_ |
Overall convergence tolerance. | |
Status data | |
bool | free_mu_mode_ |
flag indicating whether the algorithm is in the free mu mode | |
bool | tiny_step_flag_ |
flag indicating if a tiny step has been detected | |
Gathered information for iteration output | |
Number | info_regu_x_ |
Size of regularization for the Hessian. | |
Number | info_alpha_primal_ |
Primal step size. | |
char | info_alpha_primal_char_ |
Info character for primal step size. | |
Number | info_alpha_dual_ |
Dual step size. | |
Index | info_ls_count_ |
Number of backtracking trial steps. | |
bool | info_skip_output_ |
true, if next summary output line should not be printed (eg after restoration phase. | |
std::string | info_string_ |
any string of characters for the end of the output line | |
Information about the perturbation of the primal-dual | |
Number | pd_pert_x_ |
Number | pd_pert_s_ |
Number | pd_pert_c_ |
Number | pd_pert_d_ |
| |
Number | tol () const |
Overall convergence tolerance. | |
void | Set_tol (Number tol) |
Set a new value for the tolerance. | |
static void | RegisterOptions (const SmartPtr< RegisteredOptions > &roptions) |
Methods for IpoptType. |
Class to organize all the data required by the algorithm.
Internally, once this Data object has been initialized, all internal curr_ vectors must always be set (so that prototyes are available). The current values can only be set from the trial values. The trial values can be set by copying from a vector or by adding some fraction of a step to the current values. This object also stores steps, which allows to easily communicate the step from the step computation object to the line search object.
Definition at line 34 of file IpIpoptData.hpp.
Ipopt::IpoptData::IpoptData | ( | ) |
Constructor.
Ipopt::IpoptData::~IpoptData | ( | ) |
Default destructor.
Ipopt::IpoptData::IpoptData | ( | const IpoptData & | ) | [private] |
Copy Constructor.
bool Ipopt::IpoptData::InitializeDataStructures | ( | IpoptNLP & | ip_nlp, | |
bool | want_x, | |||
bool | want_y_c, | |||
bool | want_y_d, | |||
bool | want_z_L, | |||
bool | want_z_U | |||
) |
Initialize Data Structures.
bool Ipopt::IpoptData::Initialize | ( | const Journalist & | jnlst, | |
const OptionsList & | options, | |||
const std::string & | prefix | |||
) |
This method must be called to initialize the global algorithmic parameters.
The parameters are taken from the OptionsList object.
SmartPtr< const IteratesVector > Ipopt::IpoptData::curr | ( | ) | const [inline] |
Current point.
Definition at line 573 of file IpIpoptData.hpp.
SmartPtr< const IteratesVector > Ipopt::IpoptData::trial | ( | ) | const [inline] |
Get the current point in a copied container that is non-const.
The entries in the container cannot be modified, but the container can be modified to point to new entries. Get Trial point
Definition at line 581 of file IpIpoptData.hpp.
void Ipopt::IpoptData::set_trial | ( | SmartPtr< IteratesVector > & | trial | ) | [inline] |
Get Trial point in a copied container that is non-const.
The entries in the container can not be modified, but the container can be modified to point to new entries. Set 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 again
Definition at line 623 of file IpIpoptData.hpp.
void Ipopt::IpoptData::SetTrialPrimalVariablesFromStep | ( | Number | alpha, | |
const Vector & | delta_x, | |||
const Vector & | delta_s | |||
) |
Set the values of the primal trial variables (x and s) from provided Step with step length alpha.
void Ipopt::IpoptData::SetTrialEqMultipliersFromStep | ( | Number | alpha, | |
const Vector & | delta_y_c, | |||
const Vector & | delta_y_d | |||
) |
Set the values of the trial values for the equality constraint multipliers (y_c and y_d) from provided step with step length alpha.
void Ipopt::IpoptData::SetTrialBoundMultipliersFromStep | ( | Number | alpha, | |
const Vector & | delta_z_L, | |||
const Vector & | delta_z_U, | |||
const Vector & | delta_v_L, | |||
const Vector & | delta_v_U | |||
) |
Set the value of the trial values for the bound multipliers (z_L, z_U, v_L, v_U) from provided step with step length alpha.
SmartPtr< const IteratesVector > Ipopt::IpoptData::delta | ( | ) | const [inline] |
ToDo: I may need to add versions of set_trial like the following, but I am not sure.
get the current delta
Definition at line 589 of file IpIpoptData.hpp.
void Ipopt::IpoptData::set_delta | ( | SmartPtr< IteratesVector > & | delta | ) | [inline] |
Set the current delta - 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 644 of file IpIpoptData.hpp.
void Ipopt::IpoptData::set_delta | ( | SmartPtr< const IteratesVector > & | delta | ) | [inline] |
Set the current delta - 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 663 of file IpIpoptData.hpp.
SmartPtr< const IteratesVector > Ipopt::IpoptData::delta_aff | ( | ) | const [inline] |
Affine Delta.
Definition at line 597 of file IpIpoptData.hpp.
void Ipopt::IpoptData::set_delta_aff | ( | SmartPtr< IteratesVector > & | delta_aff | ) | [inline] |
Set the affine delta - 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 682 of file IpIpoptData.hpp.
Hessian or Hessian approximation (do not hold on to it, it might be changed).
Definition at line 143 of file IpIpoptData.hpp.
Set Hessian approximation.
Definition at line 150 of file IpIpoptData.hpp.
bool Ipopt::IpoptData::HaveDeltas | ( | ) | const [inline] |
Returns true, if the primal-dual step have been already computed for the current iteration.
This flag is reset after every call of AcceptTrialPoint(). If the search direction is computed during the computation of the barrier parameter, the method computing the barrier parameter should call SetHaveDeltas(true) to tell the IpoptAlgorithm object that it doesn't need to recompute the primal-dual step.
Definition at line 169 of file IpIpoptData.hpp.
void Ipopt::IpoptData::SetHaveDeltas | ( | bool | have_deltas | ) | [inline] |
Method for setting the HaveDeltas flag.
This method should be called if some method computes the primal-dual step (and stores it in the delta_ fields of IpoptData) at an early part of the iteration. If that flag is set to true, the IpoptAlgorithm object will not recompute the step.
Definition at line 179 of file IpIpoptData.hpp.
bool Ipopt::IpoptData::HaveAffineDeltas | ( | ) | const [inline] |
Returns true, if the affine-scaling step have been already computed for the current iteration.
This flag is reset after every call of AcceptTrialPoint(). If the search direction is computed during the computation of the barrier parameter, the method computing the barrier parameter should call SetHaveDeltas(true) to tell the line search does not have to recompute them in case it wants to do a corrector step.
Definition at line 199 of file IpIpoptData.hpp.
void Ipopt::IpoptData::SetHaveAffineDeltas | ( | bool | have_affine_deltas | ) | [inline] |
Method for setting the HaveDeltas flag.
This method should be called if some method computes the primal-dual step (and stores it in the delta_ fields of IpoptData) at an early part of the iteration. If that flag is set to true, the IpoptAlgorithm object will not recompute the step.
Definition at line 209 of file IpIpoptData.hpp.
void Ipopt::IpoptData::CopyTrialToCurrent | ( | ) | [inline] |
Copy the trial values to the current values.
Definition at line 605 of file IpIpoptData.hpp.
void Ipopt::IpoptData::AcceptTrialPoint | ( | ) |
Set the current iterate values from the trial values.
Index Ipopt::IpoptData::iter_count | ( | ) | const [inline] |
Setting the flag that indicates if a tiny step (below machine precision) has been detected.
Definition at line 227 of file IpIpoptData.hpp.
void Ipopt::IpoptData::Set_iter_count | ( | Index | iter_count | ) | [inline] |
Setting the flag that indicates if a tiny step (below machine precision) has been detected.
Definition at line 231 of file IpIpoptData.hpp.
Number Ipopt::IpoptData::curr_mu | ( | ) | const [inline] |
Setting the flag that indicates if a tiny step (below machine precision) has been detected.
Definition at line 236 of file IpIpoptData.hpp.
void Ipopt::IpoptData::Set_mu | ( | Number | mu | ) | [inline] |
Setting the flag that indicates if a tiny step (below machine precision) has been detected.
Definition at line 241 of file IpIpoptData.hpp.
bool Ipopt::IpoptData::MuInitialized | ( | ) | const [inline] |
Setting the flag that indicates if a tiny step (below machine precision) has been detected.
Definition at line 246 of file IpIpoptData.hpp.
Number Ipopt::IpoptData::curr_tau | ( | ) | const [inline] |
Setting the flag that indicates if a tiny step (below machine precision) has been detected.
Definition at line 251 of file IpIpoptData.hpp.
void Ipopt::IpoptData::Set_tau | ( | Number | tau | ) | [inline] |
Setting the flag that indicates if a tiny step (below machine precision) has been detected.
Definition at line 256 of file IpIpoptData.hpp.
bool Ipopt::IpoptData::TauInitialized | ( | ) | const [inline] |
Setting the flag that indicates if a tiny step (below machine precision) has been detected.
Definition at line 261 of file IpIpoptData.hpp.
void Ipopt::IpoptData::SetFreeMuMode | ( | bool | free_mu_mode | ) | [inline] |
Setting the flag that indicates if a tiny step (below machine precision) has been detected.
Definition at line 266 of file IpIpoptData.hpp.
bool Ipopt::IpoptData::FreeMuMode | ( | ) | const [inline] |
Setting the flag that indicates if a tiny step (below machine precision) has been detected.
Definition at line 270 of file IpIpoptData.hpp.
void Ipopt::IpoptData::Set_tiny_step_flag | ( | bool | flag | ) | [inline] |
Setting the flag that indicates if a tiny step (below machine precision) has been detected.
Definition at line 277 of file IpIpoptData.hpp.
bool Ipopt::IpoptData::tiny_step_flag | ( | ) | [inline] |
Setting the flag that indicates if a tiny step (below machine precision) has been detected.
Definition at line 281 of file IpIpoptData.hpp.
Number Ipopt::IpoptData::tol | ( | ) | const [inline] |
Overall convergence tolerance.
It is used in the convergence test, but also in some other parts of the algorithm that depend on the specified tolerance, such as the minimum value for the barrier parameter. Obtain the tolerance.
Definition at line 293 of file IpIpoptData.hpp.
void Ipopt::IpoptData::Set_tol | ( | Number | tol | ) | [inline] |
Set a new value for the tolerance.
One should be very careful when using this, since changing the predefined tolerance might have unexpected consequences. This method is for example used in the restoration convergence checker to tighten the restoration phase convergence tolerance, if the restoration phase converged to a point that has not a large value for the constraint violation.
Definition at line 305 of file IpIpoptData.hpp.
Number Ipopt::IpoptData::info_regu_x | ( | ) | const [inline] |
Set this to true, if the next time when output is written, the summary line should not be printed.
Definition at line 313 of file IpIpoptData.hpp.
void Ipopt::IpoptData::Set_info_regu_x | ( | Number | regu_x | ) | [inline] |
Set this to true, if the next time when output is written, the summary line should not be printed.
Definition at line 317 of file IpIpoptData.hpp.
Number Ipopt::IpoptData::info_alpha_primal | ( | ) | const [inline] |
Set this to true, if the next time when output is written, the summary line should not be printed.
Definition at line 321 of file IpIpoptData.hpp.
void Ipopt::IpoptData::Set_info_alpha_primal | ( | Number | alpha_primal | ) | [inline] |
Set this to true, if the next time when output is written, the summary line should not be printed.
Definition at line 325 of file IpIpoptData.hpp.
char Ipopt::IpoptData::info_alpha_primal_char | ( | ) | const [inline] |
Set this to true, if the next time when output is written, the summary line should not be printed.
Definition at line 329 of file IpIpoptData.hpp.
void Ipopt::IpoptData::Set_info_alpha_primal_char | ( | char | info_alpha_primal_char | ) | [inline] |
Set this to true, if the next time when output is written, the summary line should not be printed.
Definition at line 333 of file IpIpoptData.hpp.
Number Ipopt::IpoptData::info_alpha_dual | ( | ) | const [inline] |
Set this to true, if the next time when output is written, the summary line should not be printed.
Definition at line 337 of file IpIpoptData.hpp.
void Ipopt::IpoptData::Set_info_alpha_dual | ( | Number | alpha_dual | ) | [inline] |
Set this to true, if the next time when output is written, the summary line should not be printed.
Definition at line 341 of file IpIpoptData.hpp.
Index Ipopt::IpoptData::info_ls_count | ( | ) | const [inline] |
Set this to true, if the next time when output is written, the summary line should not be printed.
Definition at line 345 of file IpIpoptData.hpp.
void Ipopt::IpoptData::Set_info_ls_count | ( | Index | ls_count | ) | [inline] |
Set this to true, if the next time when output is written, the summary line should not be printed.
Definition at line 349 of file IpIpoptData.hpp.
bool Ipopt::IpoptData::info_skip_output | ( | ) | const [inline] |
Set this to true, if the next time when output is written, the summary line should not be printed.
Definition at line 353 of file IpIpoptData.hpp.
void Ipopt::IpoptData::Append_info_string | ( | const std::string & | add_str | ) | [inline] |
Set this to true, if the next time when output is written, the summary line should not be printed.
Definition at line 357 of file IpIpoptData.hpp.
const std::string& Ipopt::IpoptData::info_string | ( | ) | const [inline] |
Set this to true, if the next time when output is written, the summary line should not be printed.
Definition at line 361 of file IpIpoptData.hpp.
void Ipopt::IpoptData::Set_info_skip_output | ( | bool | info_skip_output | ) | [inline] |
Set this to true, if the next time when output is written, the summary line should not be printed.
Definition at line 367 of file IpIpoptData.hpp.
void Ipopt::IpoptData::ResetInfo | ( | ) | [inline] |
Reset all info fields.
Definition at line 373 of file IpIpoptData.hpp.
TimingStatistics& Ipopt::IpoptData::TimingStats | ( | ) | [inline] |
Return Timing Statistics Object.
Definition at line 386 of file IpIpoptData.hpp.
CGPenaltyData& Ipopt::IpoptData::CGPenData | ( | ) | [inline] |
Get access to the Chen-Goldbarb penalty method specific data.
Definition at line 392 of file IpIpoptData.hpp.
void Ipopt::IpoptData::setPDPert | ( | Number | pd_pert_x, | |
Number | pd_pert_s, | |||
Number | pd_pert_c, | |||
Number | pd_pert_d | |||
) | [inline] |
Set the perturbation of the primal-dual system.
Definition at line 398 of file IpIpoptData.hpp.
void Ipopt::IpoptData::getPDPert | ( | Number & | pd_pert_x, | |
Number & | pd_pert_s, | |||
Number & | pd_pert_c, | |||
Number & | pd_pert_d | |||
) | [inline] |
Get the current perturbation of the primal-dual system.
Definition at line 408 of file IpIpoptData.hpp.
static void Ipopt::IpoptData::RegisterOptions | ( | const SmartPtr< RegisteredOptions > & | roptions | ) | [static] |
Methods for IpoptType.
void Ipopt::IpoptData::operator= | ( | const IpoptData & | ) | [private] |
Overloaded Equals Operator.
SmartPtr<const IteratesVector> Ipopt::IpoptData::curr_ [private] |
Main iteration variables (current iteration).
Definition at line 427 of file IpIpoptData.hpp.
SmartPtr<const IteratesVector> Ipopt::IpoptData::trial_ [private] |
Main iteration variables (trial calculations).
Definition at line 431 of file IpIpoptData.hpp.
SmartPtr<const SymMatrix> Ipopt::IpoptData::W_ [private] |
Hessian (approximation) - might be changed elsewhere!
Definition at line 434 of file IpIpoptData.hpp.
SmartPtr<const IteratesVector> Ipopt::IpoptData::delta_ [private] |
The following flag is set to true, if some other part of the algorithm (like the method for computing the barrier parameter) has already computed the primal-dual search direction.
This flag is reset when the AcceptTrialPoint method is called. ToDo: we could cue off of a null delta_;
Definition at line 438 of file IpIpoptData.hpp.
bool Ipopt::IpoptData::have_deltas_ [private] |
The following flag is set to true, if some other part of the algorithm (like the method for computing the barrier parameter) has already computed the primal-dual search direction.
This flag is reset when the AcceptTrialPoint method is called. ToDo: we could cue off of a null delta_;
Definition at line 446 of file IpIpoptData.hpp.
SmartPtr<const IteratesVector> Ipopt::IpoptData::delta_aff_ [private] |
The following flag is set to true, if some other part of the algorithm (like the method for computing the barrier parameter) has already computed the affine-scaling step.
This flag is reset when the AcceptTrialPoint method is called. ToDo: we could cue off of a null delta_aff_;
Definition at line 454 of file IpIpoptData.hpp.
bool Ipopt::IpoptData::have_affine_deltas_ [private] |
The following flag is set to true, if some other part of the algorithm (like the method for computing the barrier parameter) has already computed the affine-scaling step.
This flag is reset when the AcceptTrialPoint method is called. ToDo: we could cue off of a null delta_aff_;
Definition at line 461 of file IpIpoptData.hpp.
Index Ipopt::IpoptData::iter_count_ [private] |
iteration count
Definition at line 465 of file IpIpoptData.hpp.
Number Ipopt::IpoptData::curr_mu_ [private] |
current barrier parameter
Definition at line 468 of file IpIpoptData.hpp.
bool Ipopt::IpoptData::mu_initialized_ [private] |
Definition at line 469 of file IpIpoptData.hpp.
Number Ipopt::IpoptData::curr_tau_ [private] |
current fraction to the boundary parameter
Definition at line 472 of file IpIpoptData.hpp.
bool Ipopt::IpoptData::tau_initialized_ [private] |
Definition at line 473 of file IpIpoptData.hpp.
bool Ipopt::IpoptData::initialize_called_ [private] |
flag indicating if Initialize method has been called (for debugging)
Definition at line 477 of file IpIpoptData.hpp.
bool Ipopt::IpoptData::have_prototypes_ [private] |
flag for debugging whether we have already curr_ values available (from which new Vectors can be generated
Definition at line 481 of file IpIpoptData.hpp.
Number Ipopt::IpoptData::tol_ [private] |
Overall convergence tolerance.
Definition at line 489 of file IpIpoptData.hpp.
bool Ipopt::IpoptData::free_mu_mode_ [private] |
flag indicating whether the algorithm is in the free mu mode
Definition at line 495 of file IpIpoptData.hpp.
bool Ipopt::IpoptData::tiny_step_flag_ [private] |
flag indicating if a tiny step has been detected
Definition at line 497 of file IpIpoptData.hpp.
Number Ipopt::IpoptData::info_regu_x_ [private] |
Size of regularization for the Hessian.
Definition at line 503 of file IpIpoptData.hpp.
Number Ipopt::IpoptData::info_alpha_primal_ [private] |
Primal step size.
Definition at line 505 of file IpIpoptData.hpp.
char Ipopt::IpoptData::info_alpha_primal_char_ [private] |
Info character for primal step size.
Definition at line 507 of file IpIpoptData.hpp.
Number Ipopt::IpoptData::info_alpha_dual_ [private] |
Dual step size.
Definition at line 509 of file IpIpoptData.hpp.
Index Ipopt::IpoptData::info_ls_count_ [private] |
Number of backtracking trial steps.
Definition at line 511 of file IpIpoptData.hpp.
bool Ipopt::IpoptData::info_skip_output_ [private] |
true, if next summary output line should not be printed (eg after restoration phase.
Definition at line 514 of file IpIpoptData.hpp.
std::string Ipopt::IpoptData::info_string_ [private] |
any string of characters for the end of the output line
Definition at line 516 of file IpIpoptData.hpp.
VectorSpace for all the iterates.
Definition at line 520 of file IpIpoptData.hpp.
TimingStatistics object collecting all Ipopt timing statistics.
Definition at line 524 of file IpIpoptData.hpp.
CGPenaltyData* const Ipopt::IpoptData::cgpen_data_ [private] |
Object for the data specific for the Chen-Goldfarb penalty method algorithm.
Definition at line 528 of file IpIpoptData.hpp.
Number Ipopt::IpoptData::pd_pert_x_ [private] |
Definition at line 533 of file IpIpoptData.hpp.
Number Ipopt::IpoptData::pd_pert_s_ [private] |
Definition at line 534 of file IpIpoptData.hpp.
Number Ipopt::IpoptData::pd_pert_c_ [private] |
Definition at line 535 of file IpIpoptData.hpp.
Number Ipopt::IpoptData::pd_pert_d_ [private] |
Definition at line 536 of file IpIpoptData.hpp.