roboptim::IpoptSolverCommon< T > Class Template Reference

Ipopt common solver. More...

#include <roboptim/core/plugin/ipopt/ipopt-common.hh>

List of all members.

Public Types

enum  ConstraintType {
  LINEAR = 0,
  NONLINEAR = 1
}
 Categorize constraints. More...
typedef T parent_t
 Parent type.
typedef T::callback_t callback_t
typedef T::problem_t problem_t

Public Member Functions

 IpoptSolverCommon (const problem_t &pb, Ipopt::SmartPtr< Ipopt::TNLP > tnlp)
 Instantiate the solver from a problem.
virtual ~IpoptSolverCommon ()
void solve ()
 Solve the problem.
virtual Ipopt::SmartPtr
< Ipopt::IpoptApplication > 
getIpoptApplication ()
 Get Ipopt Application object for Ipopt specific tuning.
virtual void setIterationCallback (callback_t callback)
const callback_tcallback () const

Detailed Description

template<typename T>
class roboptim::IpoptSolverCommon< T >

Ipopt common solver.

This solver shares common piece of code of the two solvers.


Member Typedef Documentation

template<typename T>
typedef T::callback_t roboptim::IpoptSolverCommon< T >::callback_t
template<typename T>
typedef T roboptim::IpoptSolverCommon< T >::parent_t
template<typename T>
typedef T::problem_t roboptim::IpoptSolverCommon< T >::problem_t

Member Enumeration Documentation

Categorize constraints.

Used with the which method of the Boost.Variant, it allows to check for a constraint's real type.

Warning:
Make sure to keep enum values in the same order than the MPL vector used to specify CLIST.
Enumerator:
LINEAR 

Constraint is a linear function.

NONLINEAR 

Constraint is a differentiable or a twice differentiable function depending on the solve.


Constructor & Destructor Documentation

template<typename T >
roboptim::IpoptSolverCommon< T >::IpoptSolverCommon ( const problem_t pb,
Ipopt::SmartPtr< Ipopt::TNLP >  tnlp 
) [explicit]

Instantiate the solver from a problem.

Parameters:
pbproblem that will be solved.
tnlppointer to Ipopt solver.

IPOPT_VERSION_MAJOR

template<typename T >
roboptim::IpoptSolverCommon< T >::~IpoptSolverCommon ( ) [virtual]

Member Function Documentation

template<typename T >
Ipopt::SmartPtr< Ipopt::IpoptApplication > roboptim::IpoptSolverCommon< T >::getIpoptApplication ( ) [virtual]

Get Ipopt Application object for Ipopt specific tuning.

Consult Ipopt documentation for information regarding IpoptApplication class.

template<typename T>
virtual void roboptim::IpoptSolverCommon< T >::setIterationCallback ( callback_t  callback) [inline, virtual]
template<typename T >
void roboptim::IpoptSolverCommon< T >::solve ( )
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines