#include <tnlp.hh>
Public Types | |
| typedef T | solver_t |
| typedef SolverState< typename solver_t::problem_t > | solverState_t |
| typedef Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic, Eigen::RowMajor > | ipoptMatrix_t |
Public Member Functions | |
| Tnlp (const typename solver_t::problem_t &pb, solver_t &solver) | |
| Function::size_type | constraintsOutputSize () |
| virtual bool | get_nlp_info (Index &n, Index &m, Index &nnz_jac_g, Index &nnz_h_lag, TNLP::IndexStyleEnum &index_style) |
| virtual bool | get_bounds_info (Index n, Number *x_l, Number *x_u, Index m, Number *g_l, Number *g_u) |
| virtual bool | get_scaling_parameters (Number &, bool &use_x_scaling, Index n, Number *x_scaling, bool &use_g_scaling, Index m, Number *g_scaling) |
| virtual bool | get_variables_linearity (Index n, LinearityType *var_types) |
| virtual bool | get_function_linearity (Index m, LinearityType *const_types) |
| 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 *) |
| virtual bool | get_warm_start_iterate (Ipopt::IteratesVector &) |
| virtual bool | eval_f (Index n, const Number *x, bool new_x, Number &obj_value) |
| virtual bool | eval_grad_f (Index n, const Number *x, bool new_x, Number *grad_f) |
| virtual bool | eval_g (Index n, const Number *x, bool new_x, Index m, Number *g) |
| virtual bool | eval_jac_g (Index n, const Number *x, bool new_x, Index m, Index, Index *iRow, Index *jCol, Number *values) |
| virtual bool | eval_h (Index n, const Number *x, bool, Number obj_factor, Index m, const Number *lambda, bool, Index nele_hess, Index *iRow, Index *jCol, Number *values) |
| virtual void | finalize_solution (Ipopt::SolverReturn status, Index n, const Number *x, const Number *, const Number *, Index m, const Number *g, const Number *lambda, Number obj_value, const Ipopt::IpoptData *, Ipopt::IpoptCalculatedQuantities *) |
| virtual bool | intermediate_callback (Ipopt::AlgorithmMode, Index, Number, Number, Number, Number, Number, Number, Number, Number, Index, const Ipopt::IpoptData *, Ipopt::IpoptCalculatedQuantities *) |
| virtual Index | get_number_of_nonlinear_variables () |
| virtual bool | get_list_of_nonlinear_variables (Index, Index *) |
| template<> | |
| bool | get_nlp_info (Index &n, Index &m, Index &nnz_jac_g, Index &nnz_h_lag, TNLP::IndexStyleEnum &index_style) |
| template<> | |
| bool | eval_jac_g (Index n, const Number *x, bool, Index ROBOPTIM_DEBUG_ONLY(m), Index nele_jac, Index *iRow, Index *jCol, Number *values) |
| template<> | |
| bool | get_nlp_info (Index &n, Index &m, Index &nnz_jac_g, Index &nnz_h_lag, TNLP::IndexStyleEnum &index_style) |
| template<> | |
| bool | eval_jac_g (Index n, const Number *x, bool, Index m, Index nele_jac, Index *iRow, Index *jCol, Number *values) |
| template<> | |
| bool | eval_h (Index n, const Number *x, bool, Number obj_factor, Index ROBOPTIM_DEBUG_ONLY(m), const Number *lambda, bool, Index ROBOPTIM_DEBUG_ONLY(nele_hess), Index *iRow, Index *jCol, Number *values) |
Protected Member Functions | |
| void | compute_hessian (TwiceDifferentiableFunction::hessian_t &h, const typename solver_t::vector_t &x, Number obj_factor, const Number *lambda) |
| template<> | |
| void | compute_hessian (TwiceDifferentiableFunction::hessian_t &h, const solver_t::vector_t &x, Number obj_factor, const Number *lambda) |
Static Protected Attributes | |
| static log4cxx::LoggerPtr | logger |
| Pointer to function logger (see log4cxx documentation). | |
| typedef Eigen::Matrix<double, Eigen::Dynamic, Eigen::Dynamic, Eigen::RowMajor> roboptim::detail::Tnlp< T >::ipoptMatrix_t |
| typedef T roboptim::detail::Tnlp< T >::solver_t |
| typedef SolverState<typename solver_t::problem_t> roboptim::detail::Tnlp< T >::solverState_t |
| roboptim::detail::Tnlp< T >::Tnlp | ( | const typename solver_t::problem_t & | pb, |
| solver_t & | solver | ||
| ) |
| void roboptim::detail::Tnlp< T >::compute_hessian | ( | TwiceDifferentiableFunction::hessian_t & | h, |
| const typename solver_t::vector_t & | x, | ||
| Number | obj_factor, | ||
| const Number * | lambda | ||
| ) | [protected] |
| void roboptim::detail::Tnlp< IpoptSolverTd >::compute_hessian | ( | TwiceDifferentiableFunction::hessian_t & | h, |
| const solver_t::vector_t & | x, | ||
| Number | obj_factor, | ||
| const Number * | lambda | ||
| ) | [inline, protected] |
| Function::size_type roboptim::detail::Tnlp< T >::constraintsOutputSize | ( | ) |
References roboptim::detail::computeConstraintsOutputSize().
| bool roboptim::detail::Tnlp< T >::eval_f | ( | Index | n, |
| const Number * | x, | ||
| bool | new_x, | ||
| Number & | obj_value | ||
| ) | [virtual] |
| bool roboptim::detail::Tnlp< T >::eval_g | ( | Index | n, |
| const Number * | x, | ||
| bool | new_x, | ||
| Index | m, | ||
| Number * | g | ||
| ) | [virtual] |
ROBOPTIM_DO_NOT_CHECK_ALLOCATION
| bool roboptim::detail::Tnlp< T >::eval_grad_f | ( | Index | n, |
| const Number * | x, | ||
| bool | new_x, | ||
| Number * | grad_f | ||
| ) | [virtual] |
References roboptim::detail::IpoptCheckGradient().
| bool roboptim::detail::Tnlp< T >::eval_h | ( | Index | n, |
| const Number * | x, | ||
| bool | , | ||
| Number | obj_factor, | ||
| Index | m, | ||
| const Number * | lambda, | ||
| bool | , | ||
| Index | nele_hess, | ||
| Index * | iRow, | ||
| Index * | jCol, | ||
| Number * | values | ||
| ) | [virtual] |
| bool roboptim::detail::Tnlp< IpoptSolverTd >::eval_h | ( | Index | n, |
| const Number * | x, | ||
| bool | , | ||
| Number | obj_factor, | ||
| Index | ROBOPTIM_DEBUG_ONLYm, | ||
| const Number * | lambda, | ||
| bool | , | ||
| Index | ROBOPTIM_DEBUG_ONLYnele_hess, | ||
| Index * | iRow, | ||
| Index * | jCol, | ||
| Number * | values | ||
| ) | [inline] |
| bool roboptim::detail::Tnlp< IpoptSolverSparse >::eval_jac_g | ( | Index | n, |
| const Number * | x, | ||
| bool | , | ||
| Index | ROBOPTIM_DEBUG_ONLYm, | ||
| Index | nele_jac, | ||
| Index * | iRow, | ||
| Index * | jCol, | ||
| Number * | values | ||
| ) |
References roboptim::detail::IpoptCheckGradient().
| bool roboptim::detail::Tnlp< T >::eval_jac_g | ( | Index | n, |
| const Number * | x, | ||
| bool | new_x, | ||
| Index | m, | ||
| Index | , | ||
| Index * | iRow, | ||
| Index * | jCol, | ||
| Number * | values | ||
| ) | [virtual] |
References roboptim::detail::IpoptCheckGradient().
| bool roboptim::detail::Tnlp< IpoptSolverSparse >::eval_jac_g | ( | Index | n, |
| const Number * | x, | ||
| bool | , | ||
| Index | m, | ||
| Index | nele_jac, | ||
| Index * | iRow, | ||
| Index * | jCol, | ||
| Number * | values | ||
| ) |
| void roboptim::detail::Tnlp< T >::finalize_solution | ( | Ipopt::SolverReturn | status, |
| Index | n, | ||
| const Number * | x, | ||
| const Number * | , | ||
| const Number * | , | ||
| Index | m, | ||
| const Number * | g, | ||
| const Number * | lambda, | ||
| Number | obj_value, | ||
| const Ipopt::IpoptData * | , | ||
| Ipopt::IpoptCalculatedQuantities * | |||
| ) | [virtual] |
References FILL_RESULT, MAP_IPOPT_ERRORS, MAP_IPOPT_WARNINGS, SWITCH_ERROR, and SWITCH_WARNING.
| bool roboptim::detail::Tnlp< T >::get_bounds_info | ( | Index | n, |
| Number * | x_l, | ||
| Number * | x_u, | ||
| Index | m, | ||
| Number * | g_l, | ||
| Number * | g_u | ||
| ) | [virtual] |
| bool roboptim::detail::Tnlp< T >::get_function_linearity | ( | Index | m, |
| LinearityType * | const_types | ||
| ) | [virtual] |
| bool roboptim::detail::Tnlp< T >::get_list_of_nonlinear_variables | ( | Index | , |
| Index * | |||
| ) | [virtual] |
| bool roboptim::detail::Tnlp< IpoptSolverSparse >::get_nlp_info | ( | Index & | n, |
| Index & | m, | ||
| Index & | nnz_jac_g, | ||
| Index & | nnz_h_lag, | ||
| TNLP::IndexStyleEnum & | index_style | ||
| ) |
| bool roboptim::detail::Tnlp< T >::get_nlp_info | ( | Index & | n, |
| Index & | m, | ||
| Index & | nnz_jac_g, | ||
| Index & | nnz_h_lag, | ||
| TNLP::IndexStyleEnum & | index_style | ||
| ) | [virtual] |
| bool roboptim::detail::Tnlp< IpoptSolverSparse >::get_nlp_info | ( | Index & | n, |
| Index & | m, | ||
| Index & | nnz_jac_g, | ||
| Index & | nnz_h_lag, | ||
| TNLP::IndexStyleEnum & | index_style | ||
| ) |
| Index roboptim::detail::Tnlp< T >::get_number_of_nonlinear_variables | ( | ) | [virtual] |
| bool roboptim::detail::Tnlp< T >::get_scaling_parameters | ( | Number & | , |
| bool & | use_x_scaling, | ||
| Index | n, | ||
| Number * | x_scaling, | ||
| bool & | use_g_scaling, | ||
| Index | m, | ||
| Number * | g_scaling | ||
| ) | [virtual] |
| bool roboptim::detail::Tnlp< T >::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 * | |||
| ) | [virtual] |
| bool roboptim::detail::Tnlp< T >::get_variables_linearity | ( | Index | n, |
| LinearityType * | var_types | ||
| ) | [virtual] |
| bool roboptim::detail::Tnlp< T >::get_warm_start_iterate | ( | Ipopt::IteratesVector & | ) | [virtual] |
| bool roboptim::detail::Tnlp< T >::intermediate_callback | ( | Ipopt::AlgorithmMode | , |
| Index | , | ||
| Number | , | ||
| Number | , | ||
| Number | , | ||
| Number | , | ||
| Number | , | ||
| Number | , | ||
| Number | , | ||
| Number | , | ||
| Index | , | ||
| const Ipopt::IpoptData * | , | ||
| Ipopt::IpoptCalculatedQuantities * | |||
| ) | [virtual] |
log4cxx::LoggerPtr roboptim::detail::Tnlp< T >::logger [static, protected] |
Pointer to function logger (see log4cxx documentation).