OS  2.10.2
Public Member Functions | Public Attributes | List of all members
IpoptProblem Class Reference

#include <OSIpoptSolver.h>

+ Inheritance diagram for IpoptProblem:
+ Collaboration diagram for IpoptProblem:

Public Member Functions

 IpoptProblem (OSInstance *osinstance_, OSOption *osoption_, OSResult *osresult_, std::string *ipoptErrorMsg_)
 the IpoptProblemclass constructor More...
 
virtual ~IpoptProblem ()
 the IpoptProblem class destructor More...
 
virtual bool get_nlp_info (Ipopt::Index &n, Ipopt::Index &m, Ipopt::Index &nnz_jac_g, Ipopt::Index &nnz_h_lag, IndexStyleEnum &index_style)
 IPOpt specific methods for defining the nlp problem. More...
 
virtual bool get_bounds_info (Ipopt::Index n, Ipopt::Number *x_l, Ipopt::Number *x_u, Ipopt::Index m, Ipopt::Number *g_l, Ipopt::Number *g_u)
 Method to return the bounds for my problem. More...
 
virtual bool get_starting_point (Ipopt::Index n, bool init_x, Ipopt::Number *x, bool init_z, Ipopt::Number *z_L, Ipopt::Number *z_U, Ipopt::Index m, bool init_lambda, Ipopt::Number *lambda)
 Method to return the starting point for the algorithm. More...
 
virtual bool eval_f (Ipopt::Index n, const Ipopt::Number *x, bool new_x, Ipopt::Number &obj_value)
 Method to return the objective value. More...
 
virtual bool eval_grad_f (Ipopt::Index n, const Ipopt::Number *x, bool new_x, Ipopt::Number *grad_f)
 Method to return the gradient of the objective. More...
 
virtual bool eval_g (Ipopt::Index n, const Ipopt::Number *x, bool new_x, Ipopt::Index m, Ipopt::Number *g)
 Method to return the constraint residuals. More...
 
virtual bool eval_jac_g (Ipopt::Index n, const Ipopt::Number *x, bool new_x, Ipopt::Index m, Ipopt::Index nele_jac, Ipopt::Index *iRow, Ipopt::Index *jCol, Ipopt::Number *values)
 Method to return: 1) The structure of the jacobian (if "values" is NULL) 2) The values of the jacobian (if "values" is not NULL) More...
 
virtual bool eval_h (Ipopt::Index n, const Ipopt::Number *x, bool new_x, Ipopt::Number obj_factor, Ipopt::Index m, const Ipopt::Number *lambda, bool new_lambda, Ipopt::Index nele_hess, Ipopt::Index *iRow, Ipopt::Index *jCol, Ipopt::Number *values)
 Method to return: 1) The structure of the hessian of the lagrangian (if "values" is NULL) 2) The values of the hessian of the lagrangian (if "values" is not NULL) More...
 
virtual bool get_scaling_parameters (Ipopt::Number &obj_scaling, bool &use_x_scaling, Ipopt::Index n, Ipopt::Number *x_scaling, bool &use_g_scaling, Ipopt::Index m, Ipopt::Number *g_scaling)
 
Solution Methods
virtual void finalize_solution (Ipopt::SolverReturn status, Ipopt::Index n, const Ipopt::Number *x, const Ipopt::Number *z_L, const Ipopt::Number *z_U, Ipopt::Index m, const Ipopt::Number *g, const Ipopt::Number *lambda, Ipopt::Number obj_value, const Ipopt::IpoptData *ip_data, Ipopt::IpoptCalculatedQuantities *ip_cq)
 This method is called when the algorithm is complete so the TNLP can store/write the solution. More...
 
- Public Member Functions inherited from Ipopt::TNLP
 TNLP ()
 
virtual ~TNLP ()
 
 DECLARE_STD_EXCEPTION (INVALID_TNLP)
 
virtual void finalize_metadata (Index n, const StringMetaDataMapType &var_string_md, const IntegerMetaDataMapType &var_integer_md, const NumericMetaDataMapType &var_numeric_md, Index m, const StringMetaDataMapType &con_string_md, const IntegerMetaDataMapType &con_integer_md, const NumericMetaDataMapType &con_numeric_md)
 
virtual bool intermediate_callback (AlgorithmMode mode, Index iter, Number obj_value, Number inf_pr, Number inf_du, Number mu, Number d_norm, Number regularization_size, Number alpha_du, Number alpha_pr, Index ls_trials, const IpoptData *ip_data, IpoptCalculatedQuantities *ip_cq)
 
virtual Index get_number_of_nonlinear_variables ()
 
virtual bool get_list_of_nonlinear_variables (Index num_nonlin_vars, Index *pos_nonlin_vars)
 
 TNLP ()
 
virtual ~TNLP ()
 
 DECLARE_STD_EXCEPTION (INVALID_TNLP)
 
virtual bool get_var_con_metadata (Index n, StringMetaDataMapType &var_string_md, IntegerMetaDataMapType &var_integer_md, NumericMetaDataMapType &var_numeric_md, Index m, StringMetaDataMapType &con_string_md, IntegerMetaDataMapType &con_integer_md, NumericMetaDataMapType &con_numeric_md)
 
virtual bool get_variables_linearity (Index n, LinearityType *var_types)
 
virtual bool get_constraints_linearity (Index m, LinearityType *const_types)
 
virtual bool get_warm_start_iterate (IteratesVector &warm_start_iterate)
 
virtual void finalize_metadata (Index n, const StringMetaDataMapType &var_string_md, const IntegerMetaDataMapType &var_integer_md, const NumericMetaDataMapType &var_numeric_md, Index m, const StringMetaDataMapType &con_string_md, const IntegerMetaDataMapType &con_integer_md, const NumericMetaDataMapType &con_numeric_md)
 
virtual bool intermediate_callback (AlgorithmMode mode, Index iter, Number obj_value, Number inf_pr, Number inf_du, Number mu, Number d_norm, Number regularization_size, Number alpha_du, Number alpha_pr, Index ls_trials, const IpoptData *ip_data, IpoptCalculatedQuantities *ip_cq)
 
virtual Index get_number_of_nonlinear_variables ()
 
virtual bool get_list_of_nonlinear_variables (Index num_nonlin_vars, Index *pos_nonlin_vars)
 
- 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
 

Public Attributes

OSInstanceosinstance
 
OSOptionosoption
 
OSResultosresult
 
std::string * ipoptErrorMsg
 
- Public Attributes inherited from Ipopt::TNLP
 LINEAR
 
 NON_LINEAR
 
 C_STYLE
 
 FORTRAN_STYLE
 

Additional Inherited Members

- Public Types inherited from Ipopt::TNLP
enum  LinearityType
 
enum  IndexStyleEnum
 
typedef std::map< std::string, std::vector< std::string > > StringMetaDataMapType
 
typedef std::map< std::string, std::vector< Index > > IntegerMetaDataMapType
 
typedef std::map< std::string, std::vector< Number > > NumericMetaDataMapType
 

Detailed Description

Definition at line 52 of file OSIpoptSolver.h.

Constructor & Destructor Documentation

◆ IpoptProblem()

IpoptProblem::IpoptProblem ( OSInstance osinstance_,
OSOption osoption_,
OSResult osresult_,
std::string *  ipoptErrorMsg_ 
)

the IpoptProblemclass constructor

◆ ~IpoptProblem()

virtual IpoptProblem::~IpoptProblem ( )
virtual

the IpoptProblem class destructor

Member Function Documentation

◆ get_nlp_info()

virtual bool IpoptProblem::get_nlp_info ( Ipopt::Index n,
Ipopt::Index m,
Ipopt::Index nnz_jac_g,
Ipopt::Index nnz_h_lag,
IndexStyleEnum index_style 
)
virtual

IPOpt specific methods for defining the nlp problem.

Implements Ipopt::TNLP.

◆ get_bounds_info()

virtual bool IpoptProblem::get_bounds_info ( Ipopt::Index  n,
Ipopt::Number x_l,
Ipopt::Number x_u,
Ipopt::Index  m,
Ipopt::Number g_l,
Ipopt::Number g_u 
)
virtual

Method to return the bounds for my problem.

Implements Ipopt::TNLP.

◆ get_starting_point()

virtual bool IpoptProblem::get_starting_point ( Ipopt::Index  n,
bool  init_x,
Ipopt::Number x,
bool  init_z,
Ipopt::Number z_L,
Ipopt::Number z_U,
Ipopt::Index  m,
bool  init_lambda,
Ipopt::Number lambda 
)
virtual

Method to return the starting point for the algorithm.

Implements Ipopt::TNLP.

◆ eval_f()

virtual bool IpoptProblem::eval_f ( Ipopt::Index  n,
const Ipopt::Number x,
bool  new_x,
Ipopt::Number obj_value 
)
virtual

Method to return the objective value.

Implements Ipopt::TNLP.

◆ eval_grad_f()

virtual bool IpoptProblem::eval_grad_f ( Ipopt::Index  n,
const Ipopt::Number x,
bool  new_x,
Ipopt::Number grad_f 
)
virtual

Method to return the gradient of the objective.

Implements Ipopt::TNLP.

◆ eval_g()

virtual bool IpoptProblem::eval_g ( Ipopt::Index  n,
const Ipopt::Number x,
bool  new_x,
Ipopt::Index  m,
Ipopt::Number g 
)
virtual

Method to return the constraint residuals.

Implements Ipopt::TNLP.

◆ eval_jac_g()

virtual bool IpoptProblem::eval_jac_g ( Ipopt::Index  n,
const Ipopt::Number x,
bool  new_x,
Ipopt::Index  m,
Ipopt::Index  nele_jac,
Ipopt::Index iRow,
Ipopt::Index jCol,
Ipopt::Number values 
)
virtual

Method to return: 1) The structure of the jacobian (if "values" is NULL) 2) The values of the jacobian (if "values" is not NULL)

Implements Ipopt::TNLP.

◆ eval_h()

virtual bool IpoptProblem::eval_h ( Ipopt::Index  n,
const Ipopt::Number x,
bool  new_x,
Ipopt::Number  obj_factor,
Ipopt::Index  m,
const Ipopt::Number lambda,
bool  new_lambda,
Ipopt::Index  nele_hess,
Ipopt::Index iRow,
Ipopt::Index jCol,
Ipopt::Number values 
)
virtual

Method to return: 1) The structure of the hessian of the lagrangian (if "values" is NULL) 2) The values of the hessian of the lagrangian (if "values" is not NULL)

Reimplemented from Ipopt::TNLP.

◆ get_scaling_parameters()

virtual bool IpoptProblem::get_scaling_parameters ( Ipopt::Number obj_scaling,
bool use_x_scaling,
Ipopt::Index  n,
Ipopt::Number x_scaling,
bool use_g_scaling,
Ipopt::Index  m,
Ipopt::Number g_scaling 
)
virtual

Reimplemented from Ipopt::TNLP.

◆ finalize_solution()

virtual void IpoptProblem::finalize_solution ( Ipopt::SolverReturn  status,
Ipopt::Index  n,
const Ipopt::Number x,
const Ipopt::Number z_L,
const Ipopt::Number z_U,
Ipopt::Index  m,
const Ipopt::Number g,
const Ipopt::Number lambda,
Ipopt::Number  obj_value,
const Ipopt::IpoptData ip_data,
Ipopt::IpoptCalculatedQuantities ip_cq 
)
virtual

This method is called when the algorithm is complete so the TNLP can store/write the solution.

Implements Ipopt::TNLP.

Member Data Documentation

◆ osinstance

OSInstance* IpoptProblem::osinstance

Definition at line 63 of file OSIpoptSolver.h.

◆ osoption

OSOption* IpoptProblem::osoption

Definition at line 65 of file OSIpoptSolver.h.

◆ osresult

OSResult* IpoptProblem::osresult

Definition at line 67 of file OSIpoptSolver.h.

◆ ipoptErrorMsg

std::string* IpoptProblem::ipoptErrorMsg

Definition at line 69 of file OSIpoptSolver.h.


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