This is the main application class for making calls to Ipopt. More...
#include <IpIpoptApplication.hpp>
Public Member Functions | |
IpoptApplication (bool create_console_out=true, bool create_empty=false) | |
IpoptApplication (SmartPtr< RegisteredOptions > reg_options, SmartPtr< OptionsList > options, SmartPtr< Journalist > jnlst) | |
Another constructor that assumes that the code in the (default) constructor has already been executed. | |
virtual | ~IpoptApplication () |
virtual SmartPtr < IpoptApplication > | clone () |
Method for creating a new IpoptApplication that uses the same journalist and registered options, and a copy of the options list. | |
virtual ApplicationReturnStatus | Initialize (std::string params_file="ipopt.opt") |
Initialize method. | |
virtual ApplicationReturnStatus | Initialize (std::istream &is) |
virtual bool | OpenOutputFile (std::string file_name, EJournalLevel print_level) |
Method for opening an output file with given print_level. | |
void | PrintCopyrightMessage () |
Method for printing Ipopt copyright message now instead of just before the optimization. | |
Solve methods | |
virtual ApplicationReturnStatus | OptimizeTNLP (const SmartPtr< TNLP > &tnlp) |
Solve a problem that inherits from TNLP. | |
virtual ApplicationReturnStatus | OptimizeNLP (const SmartPtr< NLP > &nlp) |
Solve a problem that inherits from NLP. | |
virtual ApplicationReturnStatus | OptimizeNLP (const SmartPtr< NLP > &nlp, SmartPtr< AlgorithmBuilder > &alg_builder) |
Solve a problem that inherits from NLP. | |
virtual ApplicationReturnStatus | ReOptimizeTNLP (const SmartPtr< TNLP > &tnlp) |
Solve a problem (that inherits from TNLP) for a repeated time. | |
virtual ApplicationReturnStatus | ReOptimizeNLP (const SmartPtr< NLP > &nlp) |
Solve a problem (that inherits from NLP) for a repeated time. | |
Accessor methods | |
virtual SmartPtr< Journalist > | Jnlst () |
Get the Journalist for printing output. | |
virtual SmartPtr < RegisteredOptions > | RegOptions () |
Get a pointer to RegisteredOptions object to add new options. | |
virtual SmartPtr< OptionsList > | Options () |
Get the options list for setting options. | |
virtual SmartPtr< const OptionsList > | Options () const |
Get the options list for setting options (const version). | |
virtual SmartPtr< SolveStatistics > | Statistics () |
Get the object with the statistics about the most recent optimization run. | |
virtual SmartPtr< IpoptNLP > | IpoptNLPObject () |
Get the IpoptNLP Object. | |
SmartPtr< IpoptData > | IpoptDataObject () |
Get the IpoptData Object. | |
virtual SmartPtr < IpoptCalculatedQuantities > | IpoptCQObject () |
Get the IpoptCQ Object. | |
SmartPtr< IpoptAlgorithm > | AlgorithmObject () |
Get the Algorithm Object. | |
Static Public Member Functions | |
static void | RegisterAllIpoptOptions (const SmartPtr< RegisteredOptions > &roptions) |
Method to registering all Ipopt options. | |
Methods for IpoptTypeInfo | |
static void | RegisterOptions (SmartPtr< RegisteredOptions > roptions) |
Private Member Functions | |
ApplicationReturnStatus | call_optimize () |
Method for the actual optimize call of the Ipopt algorithm. | |
Default Compiler Generated Methods | |
IpoptApplication (const IpoptApplication &) | |
Default Constructor. | |
void | operator= (const IpoptApplication &) |
Overloaded Equals Operator. | |
Private Attributes | |
SmartPtr< Journalist > | jnlst_ |
Journalist for reporting output. | |
SmartPtr< RegisteredOptions > | reg_options_ |
RegisteredOptions. | |
SmartPtr< OptionsList > | options_ |
OptionsList used for the application. | |
SmartPtr< SolveStatistics > | statistics_ |
Object for storing statistics about the most recent optimization run. | |
SmartPtr< IpoptAlgorithm > | alg_ |
Object with the algorithm sceleton. | |
SmartPtr< IpoptNLP > | ip_nlp_ |
IpoptNLP Object for the NLP. | |
SmartPtr< IpoptData > | ip_data_ |
IpoptData Object for the NLP. | |
SmartPtr < IpoptCalculatedQuantities > | ip_cq_ |
IpoptCalculatedQuantities Object for the NLP. | |
SmartPtr< NLP > | nlp_adapter_ |
Pointer to the TNLPAdapter used to convert the TNLP to an NLP. | |
Variables that customize the application behavior | |
bool | read_params_dat_ |
Decide whether or not the ipopt.opt file should be read. | |
Algorithmic parameters | |
bool | inexact_algorithm_ |
Flag indicating if we are to use the inexact linear solver option. | |
bool | replace_bounds_ |
Flag indicating if all bounds should be replaced by inequality constraints. | |
bool | skip_finalize_solution_call_ |
Flag indicating if the NLP:FinalizeSolution method should not be called after optimization. |
This is the main application class for making calls to Ipopt.
Definition at line 43 of file IpIpoptApplication.hpp.
Ipopt::IpoptApplication::IpoptApplication | ( | bool | create_console_out = true , |
|
bool | create_empty = false | |||
) |
Ipopt::IpoptApplication::IpoptApplication | ( | SmartPtr< RegisteredOptions > | reg_options, | |
SmartPtr< OptionsList > | options, | |||
SmartPtr< Journalist > | jnlst | |||
) |
Another constructor that assumes that the code in the (default) constructor has already been executed.
virtual Ipopt::IpoptApplication::~IpoptApplication | ( | ) | [virtual] |
Ipopt::IpoptApplication::IpoptApplication | ( | const IpoptApplication & | ) | [private] |
Default Constructor.
Copy Constructor
virtual SmartPtr<IpoptApplication> Ipopt::IpoptApplication::clone | ( | ) | [virtual] |
Method for creating a new IpoptApplication that uses the same journalist and registered options, and a copy of the options list.
virtual ApplicationReturnStatus Ipopt::IpoptApplication::Initialize | ( | std::string | params_file = "ipopt.opt" |
) | [virtual] |
Initialize method.
This method reads the params file and initializes the journalists. You should call this method at some point before the first optimize call. Note: you can skip the processing of a params file by setting params_file to "". It returns something other than Solve_Succeeded if there was a problem in the initialization (such as an invalid option).
virtual ApplicationReturnStatus Ipopt::IpoptApplication::Initialize | ( | std::istream & | is | ) | [virtual] |
virtual ApplicationReturnStatus Ipopt::IpoptApplication::OptimizeTNLP | ( | const SmartPtr< TNLP > & | tnlp | ) | [virtual] |
Solve a problem that inherits from TNLP.
virtual ApplicationReturnStatus Ipopt::IpoptApplication::OptimizeNLP | ( | const SmartPtr< NLP > & | nlp | ) | [virtual] |
Solve a problem that inherits from NLP.
virtual ApplicationReturnStatus Ipopt::IpoptApplication::OptimizeNLP | ( | const SmartPtr< NLP > & | nlp, | |
SmartPtr< AlgorithmBuilder > & | alg_builder | |||
) | [virtual] |
Solve a problem that inherits from NLP.
virtual ApplicationReturnStatus Ipopt::IpoptApplication::ReOptimizeTNLP | ( | const SmartPtr< TNLP > & | tnlp | ) | [virtual] |
virtual ApplicationReturnStatus Ipopt::IpoptApplication::ReOptimizeNLP | ( | const SmartPtr< NLP > & | nlp | ) | [virtual] |
virtual bool Ipopt::IpoptApplication::OpenOutputFile | ( | std::string | file_name, | |
EJournalLevel | print_level | |||
) | [virtual] |
Method for opening an output file with given print_level.
Returns false if there was a problem.
virtual SmartPtr<Journalist> Ipopt::IpoptApplication::Jnlst | ( | ) | [inline, virtual] |
Get the Journalist for printing output.
Definition at line 105 of file IpIpoptApplication.hpp.
virtual SmartPtr<RegisteredOptions> Ipopt::IpoptApplication::RegOptions | ( | ) | [inline, virtual] |
Get a pointer to RegisteredOptions object to add new options.
Definition at line 112 of file IpIpoptApplication.hpp.
virtual SmartPtr<OptionsList> Ipopt::IpoptApplication::Options | ( | ) | [inline, virtual] |
Get the options list for setting options.
Definition at line 118 of file IpIpoptApplication.hpp.
virtual SmartPtr<const OptionsList> Ipopt::IpoptApplication::Options | ( | ) | const [inline, virtual] |
Get the options list for setting options (const version).
Definition at line 124 of file IpIpoptApplication.hpp.
virtual SmartPtr<SolveStatistics> Ipopt::IpoptApplication::Statistics | ( | ) | [virtual] |
Get the object with the statistics about the most recent optimization run.
Get the IpoptNLP Object.
virtual SmartPtr<IpoptCalculatedQuantities> Ipopt::IpoptApplication::IpoptCQObject | ( | ) | [virtual] |
Get the IpoptCQ Object.
SmartPtr<IpoptAlgorithm> Ipopt::IpoptApplication::AlgorithmObject | ( | ) |
Get the Algorithm Object.
void Ipopt::IpoptApplication::PrintCopyrightMessage | ( | ) |
Method for printing Ipopt copyright message now instead of just before the optimization.
If you want to have the copy right message printed earlier than by default, call this method at the convenient time.
static void Ipopt::IpoptApplication::RegisterOptions | ( | SmartPtr< RegisteredOptions > | roptions | ) | [static] |
static void Ipopt::IpoptApplication::RegisterAllIpoptOptions | ( | const SmartPtr< RegisteredOptions > & | roptions | ) | [static] |
Method to registering all Ipopt options.
void Ipopt::IpoptApplication::operator= | ( | const IpoptApplication & | ) | [private] |
Overloaded Equals Operator.
ApplicationReturnStatus Ipopt::IpoptApplication::call_optimize | ( | ) | [private] |
Method for the actual optimize call of the Ipopt algorithm.
This is used both for Optimize and ReOptimize
bool Ipopt::IpoptApplication::read_params_dat_ [private] |
Decide whether or not the ipopt.opt file should be read.
Definition at line 187 of file IpIpoptApplication.hpp.
SmartPtr<Journalist> Ipopt::IpoptApplication::jnlst_ [private] |
Journalist for reporting output.
Definition at line 191 of file IpIpoptApplication.hpp.
Definition at line 194 of file IpIpoptApplication.hpp.
SmartPtr<OptionsList> Ipopt::IpoptApplication::options_ [private] |
OptionsList used for the application.
Definition at line 197 of file IpIpoptApplication.hpp.
Object for storing statistics about the most recent optimization run.
Definition at line 201 of file IpIpoptApplication.hpp.
SmartPtr<IpoptAlgorithm> Ipopt::IpoptApplication::alg_ [private] |
Object with the algorithm sceleton.
Definition at line 205 of file IpIpoptApplication.hpp.
SmartPtr<IpoptNLP> Ipopt::IpoptApplication::ip_nlp_ [private] |
We keep this around for a ReOptimize warm start.
Definition at line 209 of file IpIpoptApplication.hpp.
SmartPtr<IpoptData> Ipopt::IpoptApplication::ip_data_ [private] |
We keep this around for a ReOptimize warm start.
Definition at line 214 of file IpIpoptApplication.hpp.
IpoptCalculatedQuantities Object for the NLP.
We keep this around for a ReOptimize warm start.
Definition at line 219 of file IpIpoptApplication.hpp.
SmartPtr<NLP> Ipopt::IpoptApplication::nlp_adapter_ [private] |
Pointer to the TNLPAdapter used to convert the TNLP to an NLP.
We keep this around for the ReOptimizerTNLP call.
Definition at line 223 of file IpIpoptApplication.hpp.
bool Ipopt::IpoptApplication::inexact_algorithm_ [private] |
Flag indicating if we are to use the inexact linear solver option.
Definition at line 228 of file IpIpoptApplication.hpp.
bool Ipopt::IpoptApplication::replace_bounds_ [private] |
Flag indicating if all bounds should be replaced by inequality constraints.
This is necessary for the inexact algorithm.
Definition at line 231 of file IpIpoptApplication.hpp.
bool Ipopt::IpoptApplication::skip_finalize_solution_call_ [private] |
Flag indicating if the NLP:FinalizeSolution method should not be called after optimization.
Definition at line 234 of file IpIpoptApplication.hpp.