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. | |
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.
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 181 of file IpIpoptApplication.hpp.
SmartPtr<Journalist> Ipopt::IpoptApplication::jnlst_ [private] |
Journalist for reporting output.
Definition at line 185 of file IpIpoptApplication.hpp.
Definition at line 188 of file IpIpoptApplication.hpp.
SmartPtr<OptionsList> Ipopt::IpoptApplication::options_ [private] |
OptionsList used for the application.
Definition at line 191 of file IpIpoptApplication.hpp.
Object for storing statistics about the most recent optimization run.
Definition at line 195 of file IpIpoptApplication.hpp.
SmartPtr<IpoptAlgorithm> Ipopt::IpoptApplication::alg_ [private] |
Object with the algorithm sceleton.
Definition at line 199 of file IpIpoptApplication.hpp.
SmartPtr<IpoptNLP> Ipopt::IpoptApplication::ip_nlp_ [private] |
We keep this around for a ReOptimize warm start.
Definition at line 203 of file IpIpoptApplication.hpp.
SmartPtr<IpoptData> Ipopt::IpoptApplication::ip_data_ [private] |
We keep this around for a ReOptimize warm start.
Definition at line 208 of file IpIpoptApplication.hpp.
IpoptCalculatedQuantities Object for the NLP.
We keep this around for a ReOptimize warm start.
Definition at line 213 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 217 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 222 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 225 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 228 of file IpIpoptApplication.hpp.