Ipopt::IpoptApplication Class Reference

This is the main application class for making calls to Ipopt. More...

#include <IpIpoptApplication.hpp>

Inheritance diagram for Ipopt::IpoptApplication:

Inheritance graph
[legend]
Collaboration diagram for Ipopt::IpoptApplication:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 IpoptApplication (bool create_console_out=true)
virtual ~IpoptApplication ()
void Initialize (std::string params_file="ipopt.opt")
 Initialize method.
void Initialize (std::istream &is)
bool OpenOutputFile (std::string file_name, EJournalLevel print_level)
 Method for opening an output file with given print_level.
Solve methods
ApplicationReturnStatus OptimizeTNLP (const SmartPtr< TNLP > &tnlp)
 Solve a problem that inherits from TNLP.
ApplicationReturnStatus OptimizeNLP (const SmartPtr< NLP > &nlp, SmartPtr< AlgorithmBuilder > alg_builder=NULL)
 Solve a problem that inherits from NLP.
ApplicationReturnStatus ReOptimizeTNLP (const SmartPtr< TNLP > &tnlp)
 Solve a problem (that inherits from TNLP) for a repeated time.
ApplicationReturnStatus ReOptimizeNLP (const SmartPtr< NLP > &nlp)
 Solve a problem (that inherits from NLP) for a repeated time.
Accessor methods
SmartPtr< JournalistJnlst ()
 Get the Journalist for printing output.
SmartPtr< RegisteredOptionsRegOptions ()
 Get a pointer to RegisteredOptions object to add new options.
SmartPtr< OptionsListOptions ()
 Get the options list for setting options.
SmartPtr< const OptionsListOptions () const
 Get the options list for setting options (const version).
SmartPtr< SolveStatisticsStatistics ()
 Get the object with the statistics about the most recent optimization run.

Static Public Member Functions

Methods for IpoptTypeInfo
static void RegisterOptions (SmartPtr< RegisteredOptions > roptions)

Private Member Functions

void RegisterAllOptions (const SmartPtr< RegisteredOptions > &roptions)
 Method to register all the options.
ApplicationReturnStatus call_optimize ()
 Method for the actual optimize call of the Ipopt algorithm.
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.

 IpoptApplication (const IpoptApplication &)
 Copy Constructor.
void operator= (const IpoptApplication &)
 Overloaded Equals Operator.

Private Attributes

SmartPtr< Journalistjnlst_
 Journalist for reporting output.
SmartPtr< RegisteredOptionsreg_options_
 RegisteredOptions.
SmartPtr< OptionsListoptions_
 OptionsList used for the application.
SmartPtr< SolveStatisticsstatistics_
 Object for storing statistics about the most recent optimization run.
SmartPtr< IpoptAlgorithmalg_
 Object with the algorithm sceleton.
SmartPtr< IpoptNLPip_nlp_
 IpoptNLP Object for the NLP.
SmartPtr< IpoptDataip_data_
 IpoptData Object for the NLP.
SmartPtr< IpoptCalculatedQuantitiesip_cq_
 IpoptCalculatedQuantities Object for the NLP.
SmartPtr< NLPnlp_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.

Detailed Description

This is the main application class for making calls to Ipopt.

Definition at line 35 of file IpIpoptApplication.hpp.


Constructor & Destructor Documentation

Ipopt::IpoptApplication::IpoptApplication ( bool  create_console_out = true  ) 

virtual Ipopt::IpoptApplication::~IpoptApplication (  )  [virtual]

Ipopt::IpoptApplication::IpoptApplication ( const IpoptApplication  )  [private]

Copy Constructor.


Member Function Documentation

void Ipopt::IpoptApplication::Initialize ( std::string  params_file = "ipopt.opt"  ) 

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 ""

void Ipopt::IpoptApplication::Initialize ( std::istream &  is  ) 

ApplicationReturnStatus Ipopt::IpoptApplication::OptimizeTNLP ( const SmartPtr< TNLP > &  tnlp  ) 

Solve a problem that inherits from TNLP.

ApplicationReturnStatus Ipopt::IpoptApplication::OptimizeNLP ( const SmartPtr< NLP > &  nlp,
SmartPtr< AlgorithmBuilder alg_builder = NULL 
)

Solve a problem that inherits from NLP.

ApplicationReturnStatus Ipopt::IpoptApplication::ReOptimizeTNLP ( const SmartPtr< TNLP > &  tnlp  ) 

Solve a problem (that inherits from TNLP) for a repeated time.

The OptimizeTNLP method must have been called before. The TNLP must be the same object, and the structure (number of variables and constraints and position of nonzeros in Jacobian and Hessian must be the same).

ApplicationReturnStatus Ipopt::IpoptApplication::ReOptimizeNLP ( const SmartPtr< NLP > &  nlp  ) 

Solve a problem (that inherits from NLP) for a repeated time.

The OptimizeNLP method must have been called before. The NLP must be the same object, and the structure (number of variables and constraints and position of nonzeros in Jacobian and Hessian must be the same).

bool Ipopt::IpoptApplication::OpenOutputFile ( std::string  file_name,
EJournalLevel  print_level 
)

Method for opening an output file with given print_level.

Returns false if there was a problem.

SmartPtr<Journalist> Ipopt::IpoptApplication::Jnlst (  )  [inline]

Get the Journalist for printing output.

Definition at line 80 of file IpIpoptApplication.hpp.

References jnlst_.

SmartPtr<RegisteredOptions> Ipopt::IpoptApplication::RegOptions (  )  [inline]

Get a pointer to RegisteredOptions object to add new options.

Definition at line 87 of file IpIpoptApplication.hpp.

References reg_options_.

SmartPtr<OptionsList> Ipopt::IpoptApplication::Options (  )  [inline]

Get the options list for setting options.

Definition at line 93 of file IpIpoptApplication.hpp.

References options_.

SmartPtr<const OptionsList> Ipopt::IpoptApplication::Options (  )  const [inline]

Get the options list for setting options (const version).

Definition at line 99 of file IpIpoptApplication.hpp.

References Ipopt::ConstPtr(), and options_.

SmartPtr<SolveStatistics> Ipopt::IpoptApplication::Statistics (  ) 

Get the object with the statistics about the most recent optimization run.

static void Ipopt::IpoptApplication::RegisterOptions ( SmartPtr< RegisteredOptions roptions  )  [static]

void Ipopt::IpoptApplication::operator= ( const IpoptApplication  )  [private]

Overloaded Equals Operator.

void Ipopt::IpoptApplication::RegisterAllOptions ( const SmartPtr< RegisteredOptions > &  roptions  )  [private]

Method to register all the options.

ApplicationReturnStatus Ipopt::IpoptApplication::call_optimize (  )  [private]

Method for the actual optimize call of the Ipopt algorithm.

This is used both for Optimize and ReOptimize


Member Data Documentation

bool Ipopt::IpoptApplication::read_params_dat_ [private]

Decide whether or not the ipopt.opt file should be read.

Definition at line 143 of file IpIpoptApplication.hpp.

SmartPtr<Journalist> Ipopt::IpoptApplication::jnlst_ [private]

Journalist for reporting output.

Definition at line 147 of file IpIpoptApplication.hpp.

Referenced by Jnlst().

SmartPtr<RegisteredOptions> Ipopt::IpoptApplication::reg_options_ [private]

RegisteredOptions.

Definition at line 150 of file IpIpoptApplication.hpp.

Referenced by RegOptions().

SmartPtr<OptionsList> Ipopt::IpoptApplication::options_ [private]

OptionsList used for the application.

Definition at line 153 of file IpIpoptApplication.hpp.

Referenced by Options().

SmartPtr<SolveStatistics> Ipopt::IpoptApplication::statistics_ [private]

Object for storing statistics about the most recent optimization run.

Definition at line 157 of file IpIpoptApplication.hpp.

SmartPtr<IpoptAlgorithm> Ipopt::IpoptApplication::alg_ [private]

Object with the algorithm sceleton.

Definition at line 161 of file IpIpoptApplication.hpp.

SmartPtr<IpoptNLP> Ipopt::IpoptApplication::ip_nlp_ [private]

IpoptNLP Object for the NLP.

We keep this around for a ReOptimize warm start.

Definition at line 165 of file IpIpoptApplication.hpp.

SmartPtr<IpoptData> Ipopt::IpoptApplication::ip_data_ [private]

IpoptData Object for the NLP.

We keep this around for a ReOptimize warm start.

Definition at line 170 of file IpIpoptApplication.hpp.

SmartPtr<IpoptCalculatedQuantities> Ipopt::IpoptApplication::ip_cq_ [private]

IpoptCalculatedQuantities Object for the NLP.

We keep this around for a ReOptimize warm start.

Definition at line 175 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 179 of file IpIpoptApplication.hpp.


The documentation for this class was generated from the following file:
Generated on Thu May 15 22:19:17 2008 by  doxygen 1.4.7