Template Class RtEiquadprog

Class Documentation

template<int nVars, int nEqCon, int nIneqCon>
class RtEiquadprog

Public Functions

EIGEN_MAKE_ALIGNED_OPERATOR_NEW RtEiquadprog()
virtual ~RtEiquadprog()
inline int getMaxIter() const
inline bool setMaxIter(int maxIter)
inline int getActiveSetSize() const
Returns:

The size of the active set, namely the number of active constraints (including the equalities).

inline int getIteratios() const
Returns:

The number of active-set iteratios.

inline double getObjValue() const
Returns:

The value of the objective function.

inline const RtVectorX<nIneqCon + nEqCon>::d &getLagrangeMultipliers() const
Returns:

The Lagrange multipliers

inline const RtVectorX<nIneqCon + nEqCon>::i &getActiveSet() const

Return the active set, namely the indeces of active constraints. The first nEqCon indexes are for the equalities and are negative. The last nIneqCon indexes are for the inequalities and start from 0. Only the first q elements of the return vector are valid, where q is the size of the active set.

Returns:

The set of indexes of the active constraints.

RtEiquadprog_status solve_quadprog(const typename RtMatrixX<nVars, nVars>::d &Hess, const typename RtVectorX<nVars>::d &g0, const typename RtMatrixX<nEqCon, nVars>::d &CE, const typename RtVectorX<nEqCon>::d &ce0, const typename RtMatrixX<nIneqCon, nVars>::d &CI, const typename RtVectorX<nIneqCon>::d &ci0, typename RtVectorX<nVars>::d &x)

solves the problem min. x’ Hess x + 2 g0’ x s.t. CE x + ce0 = 0 CI x + ci0 >= 0

Public Members

RtMatrixX<nVars, nVars>::d m_J
bool is_inverse_provided_