IpoptProblem Class Reference

#include <OSIpoptSolver.h>

Inheritance diagram for IpoptProblem:
Inheritance graph
[legend]
Collaboration diagram for IpoptProblem:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 IpoptProblem (OSInstance *osinstance_, OSResult *osresult_)
 the IpoptProblemclass constructor
virtual ~IpoptProblem ()
 the IpoptProblem class destructor
virtual bool get_nlp_info (Index &n, Index &m, Index &nnz_jac_g, Index &nnz_h_lag, IndexStyleEnum &index_style)
 IPOpt specific methods for defining the nlp problem.
virtual bool get_bounds_info (Index n, Number *x_l, Number *x_u, Index m, Number *g_l, Number *g_u)
 Method to return the bounds for my problem.
virtual bool get_starting_point (Index n, bool init_x, Number *x, bool init_z, Number *z_L, Number *z_U, Index m, bool init_lambda, Number *lambda)
 Method to return the starting point for the algorithm.
virtual bool eval_f (Index n, const Number *x, bool new_x, Number &obj_value)
 Method to return the objective value.
virtual bool eval_grad_f (Index n, const Number *x, bool new_x, Number *grad_f)
 Method to return the gradient of the objective.
virtual bool eval_g (Index n, const Number *x, bool new_x, Index m, Number *g)
 Method to return the constraint residuals.
virtual bool eval_jac_g (Index n, const Number *x, bool new_x, Index m, Index nele_jac, Index *iRow, Index *jCol, 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).
virtual bool eval_h (Index n, const Number *x, bool new_x, Number obj_factor, Index m, const Number *lambda, bool new_lambda, Index nele_hess, Index *iRow, Index *jCol, 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).
virtual bool get_scaling_parameters (Number &obj_scaling, bool &use_x_scaling, Index n, Number *x_scaling, bool &use_g_scaling, Index m, Number *g_scaling)
 overload this method to return scaling parameters.
Solution Methods



virtual void finalize_solution (SolverReturn status, Index n, const Number *x, const Number *z_L, const Number *z_U, Index m, const Number *g, const Number *lambda, Number obj_value, const IpoptData *ip_data, IpoptCalculatedQuantities *ip_cq)
 This method is called when the algorithm is complete so the TNLP can store/write the solution.

Public Attributes

OSResultosresult
OSInstanceosinstance

Private Member Functions

Methods to block default compiler methods.

The compiler automatically generates the following three methods.

Since the default compiler implementation is generally not what you want (for all but the most simple classes), we usually put the declarations of these methods in the private section and never implement them. This prevents the compiler from implementing an incorrect "default" behavior without us knowing. (See Scott Meyers book, "Effective C++")



 IpoptProblem (const IpoptProblem &)
IpoptProblemoperator= (const IpoptProblem &)
 Overloaded Equals Operator.

Private Attributes

std::string ipoptErrorMsg

Detailed Description

Definition at line 77 of file OSIpoptSolver.h.


Constructor & Destructor Documentation

IpoptProblem::IpoptProblem ( OSInstance osinstance_,
OSResult osresult_ 
)

the IpoptProblemclass constructor

virtual IpoptProblem::~IpoptProblem (  )  [virtual]

the IpoptProblem class destructor

IpoptProblem::IpoptProblem ( const IpoptProblem  )  [private]

Member Function Documentation

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

IPOpt specific methods for defining the nlp problem.

Implements Ipopt::TNLP.

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

Method to return the bounds for my problem.

Implements Ipopt::TNLP.

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

Method to return the starting point for the algorithm.

Implements Ipopt::TNLP.

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

Method to return the objective value.

Implements Ipopt::TNLP.

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

Method to return the gradient of the objective.

Implements Ipopt::TNLP.

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

Method to return the constraint residuals.

Implements Ipopt::TNLP.

virtual bool IpoptProblem::eval_jac_g ( Index  n,
const Number x,
bool  new_x,
Index  m,
Index  nele_jac,
Index iRow,
Index jCol,
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.

virtual bool IpoptProblem::eval_h ( Index  n,
const Number x,
bool  new_x,
Number  obj_factor,
Index  m,
const Number lambda,
bool  new_lambda,
Index  nele_hess,
Index iRow,
Index jCol,
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.

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

overload this method to return scaling parameters.

This is only called if the options are set to retrieve user scaling. There, use_x_scaling (or use_g_scaling) should get set to true only if the variables (or constraints) are to be scaled. This method should return true only if the scaling parameters could be provided.

Reimplemented from Ipopt::TNLP.

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

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

Implements Ipopt::TNLP.

IpoptProblem& IpoptProblem::operator= ( const IpoptProblem  )  [private]

Overloaded Equals Operator.

Reimplemented from Ipopt::TNLP.


Member Data Documentation

Definition at line 86 of file OSIpoptSolver.h.

Definition at line 88 of file OSIpoptSolver.h.

std::string IpoptProblem::ipoptErrorMsg [private]

Definition at line 171 of file OSIpoptSolver.h.


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

Generated on 15 Mar 2015 for Coin-All by  doxygen 1.6.1