All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
tnlp.hxx File Reference
#include <boost/mpl/assert.hpp>
#include <boost/mpl/at.hpp>
#include <boost/mpl/size.hpp>
#include <boost/mpl/vector.hpp>
#include <roboptim/core/plugin/ipopt-td.hh>
#include <roboptim/core/plugin/ipopt-sparse.hh>
#include <roboptim/core/debug.hh>
Include dependency graph for tnlp.hxx:
This graph shows which files directly or indirectly include this file:

Namespaces

namespace  roboptim
 Meta-functions, functions and solvers related classes.
namespace  roboptim::detail

Macros

#define FILL_RESULT()
#define SWITCH_ERROR(NAME, ERROR)
#define SWITCH_FATAL(NAME)
#define MAP_IPOPT_ERRORS(MACRO)
#define MAP_IPOPT_FATALS(MACRO)   MACRO(USER_REQUESTED_STOP)

Functions

template<typename T , typename F >
void roboptim::detail::IpoptCheckGradient (const F &, unsigned, Eigen::Map< const Function::vector_t > &, int, T &) throw ()
void roboptim::detail::jacobianFromGradients (DerivableFunction::matrix_t &jac, const IpoptSolver::problem_t::constraints_t &c, const DerivableFunction::vector_t &x)
 ROBOPTIM_CORE_IPOPT_PLUGIN_CHECK_GRADIENT.
template<typename T >
Function::size_type roboptim::detail::computeConstraintsOutputSize (const T &solver)

Macro Definition Documentation

#define FILL_RESULT ( )
Value:
array_to_vector (res.x, x); \
res.constraints.resize (m); \
array_to_vector (res.constraints, g); \
res.lambda.resize (m); \
array_to_vector (res.lambda, lambda); \
res.value (0) = obj_value

Referenced by roboptim::detail::Tnlp< T >::finalize_solution().

#define MAP_IPOPT_ERRORS (   MACRO)
Value:
MACRO(MAXITER_EXCEEDED, "Max iteration exceeded"); \
MACRO(STOP_AT_TINY_STEP, \
"Algorithm proceeds with very little progress"); \
MACRO(LOCAL_INFEASIBILITY, \
"Algorithm converged to a point of local infeasibility"); \
MACRO(DIVERGING_ITERATES, "Iterate diverges"); \
MACRO(RESTORATION_FAILURE, "Restoration phase failed"); \
MACRO(ERROR_IN_STEP_COMPUTATION, \
"Unrecoverable error while Ipopt tried to compute" \
" the search direction"); \
MACRO(INVALID_NUMBER_DETECTED, \
"Ipopt received an invalid number"); \
MACRO(INTERNAL_ERROR, "Unknown internal error"); \
MACRO(TOO_FEW_DEGREES_OF_FREEDOM, "Two few degrees of freedom"); \
MACRO(INVALID_OPTION, "Invalid option"); \
MACRO(OUT_OF_MEMORY, "Out of memory"); \
MACRO(CPUTIME_EXCEEDED, "Cpu time exceeded")

Referenced by roboptim::detail::Tnlp< T >::finalize_solution().

#define MAP_IPOPT_FATALS (   MACRO)    MACRO(USER_REQUESTED_STOP)
#define SWITCH_ERROR (   NAME,
  ERROR 
)
Value:
case NAME: \
{ \
Result res (n, 1); \
FILL_RESULT (); \
solver_.result_ = SolverError (ERROR, res); \
} \
break

Referenced by roboptim::detail::Tnlp< T >::finalize_solution().

#define SWITCH_FATAL (   NAME)
Value:
case NAME: \
assert (0); \
break

Referenced by roboptim::detail::Tnlp< T >::finalize_solution().