#include <eiquadprog-fast.hpp>
|
| bool | add_constraint (MatrixXd &R, MatrixXd &J, VectorXd &d, size_t &iq, double &R_norm) |
| |
| void | compute_d (VectorXd &d, const MatrixXd &J, const VectorXd &np) |
| |
| void | delete_constraint (MatrixXd &R, MatrixXd &J, VectorXi &A, VectorXd &u, size_t nEqCon, size_t &iq, size_t l) |
| |
| void | update_r (const MatrixXd &R, VectorXd &r, const VectorXd &d, size_t iq) |
| |
| void | update_z (VectorXd &z, const MatrixXd &J, const VectorXd &d, size_t iq) |
| |
Definition at line 78 of file eiquadprog-fast.hpp.
◆ MatrixXd
◆ VectorXd
◆ VectorXi
◆ EiquadprogFast()
| eiquadprog::solvers::EiquadprogFast::EiquadprogFast |
( |
| ) |
|
◆ ~EiquadprogFast()
| eiquadprog::solvers::EiquadprogFast::~EiquadprogFast |
( |
| ) |
|
|
virtual |
◆ add_constraint()
| bool eiquadprog::solvers::EiquadprogFast::add_constraint |
( |
MatrixXd & |
R, |
|
|
MatrixXd & |
J, |
|
|
VectorXd & |
d, |
|
|
size_t & |
iq, |
|
|
double & |
R_norm |
|
) |
| |
|
inlineprivate |
◆ compute_d()
◆ delete_constraint()
◆ getActiveSet()
| const VectorXi& eiquadprog::solvers::EiquadprogFast::getActiveSet |
( |
| ) |
const |
|
inline |
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.
Definition at line 128 of file eiquadprog-fast.hpp.
◆ getActiveSetSize()
| size_t eiquadprog::solvers::EiquadprogFast::getActiveSetSize |
( |
| ) |
const |
|
inline |
- Returns
- The size of the active set, namely the number of active constraints (including the equalities).
Definition at line 103 of file eiquadprog-fast.hpp.
◆ getIteratios()
| int eiquadprog::solvers::EiquadprogFast::getIteratios |
( |
| ) |
const |
|
inline |
◆ getLagrangeMultipliers()
| const VectorXd& eiquadprog::solvers::EiquadprogFast::getLagrangeMultipliers |
( |
| ) |
const |
|
inline |
◆ getMaxIter()
| int eiquadprog::solvers::EiquadprogFast::getMaxIter |
( |
| ) |
const |
|
inline |
◆ getObjValue()
| double eiquadprog::solvers::EiquadprogFast::getObjValue |
( |
| ) |
const |
|
inline |
◆ reset()
| void eiquadprog::solvers::EiquadprogFast::reset |
( |
size_t |
dim_qp, |
|
|
size_t |
num_eq, |
|
|
size_t |
num_ineq |
|
) |
| |
◆ setMaxIter()
| bool eiquadprog::solvers::EiquadprogFast::setMaxIter |
( |
int |
maxIter | ) |
|
|
inline |
◆ solve_quadprog()
solves the problem min. x' Hess x + 2 g0' x s.t. CE x + ce0 = 0 CI x + ci0 >= 0
Definition at line 189 of file src/eiquadprog-fast.cpp.
◆ update_r()
◆ update_z()
| VectorXi eiquadprog::solvers::EiquadprogFast::A |
|
private |
active set (indeces of active constraints) the first nEqCon indeces are for the equalities and are negative the last nIneqCon indeces are for the inequalities are start from 0
Definition at line 179 of file eiquadprog-fast.hpp.
◆ A_old
| VectorXi eiquadprog::solvers::EiquadprogFast::A_old |
|
private |
◆ chol_
| Eigen::LLT<MatrixXd, Eigen::Lower> eiquadprog::solvers::EiquadprogFast::chol_ |
|
private |
| VectorXd eiquadprog::solvers::EiquadprogFast::d |
|
private |
◆ f_value
| double eiquadprog::solvers::EiquadprogFast::f_value |
|
private |
◆ iaexcl
| VectorXi eiquadprog::solvers::EiquadprogFast::iaexcl |
|
private |
initialized as [1, ..., 1, .] if iaexcl(i)!=1 inequality constraint i cannot be added to the active set if adding ineq constraint i fails => iaexcl(i)=0 iaexcl(i)=0 iff ineq constraint i is linearly dependent to other active constraints iaexcl(i)=1 otherwise
Definition at line 191 of file eiquadprog-fast.hpp.
◆ iai
| VectorXi eiquadprog::solvers::EiquadprogFast::iai |
|
private |
initialized as K \ A iai(i)=-1 iff inequality constraint i is in the active set iai(i)=i otherwise
Definition at line 184 of file eiquadprog-fast.hpp.
◆ is_inverse_provided_
| bool eiquadprog::solvers::EiquadprogFast::is_inverse_provided_ |
◆ iter
| int eiquadprog::solvers::EiquadprogFast::iter |
|
private |
◆ m_J
| MatrixXd eiquadprog::solvers::EiquadprogFast::m_J |
◆ m_maxIter
| int eiquadprog::solvers::EiquadprogFast::m_maxIter |
|
private |
◆ m_nEqCon
| size_t eiquadprog::solvers::EiquadprogFast::m_nEqCon |
|
private |
◆ m_nIneqCon
| size_t eiquadprog::solvers::EiquadprogFast::m_nIneqCon |
|
private |
◆ m_nVars
| size_t eiquadprog::solvers::EiquadprogFast::m_nVars |
|
private |
◆ np
| VectorXd eiquadprog::solvers::EiquadprogFast::np |
|
private |
| size_t eiquadprog::solvers::EiquadprogFast::q |
|
private |
size of the active set A (containing the indices of the active constraints)
Definition at line 203 of file eiquadprog-fast.hpp.
| MatrixXd eiquadprog::solvers::EiquadprogFast::R |
|
private |
from QR of L' N, where L is Cholewsky factor of Hessian, and N is the matrix of active constraints
Definition at line 156 of file eiquadprog-fast.hpp.
| VectorXd eiquadprog::solvers::EiquadprogFast::r |
|
private |
infeasibility multipliers, i.e. negative step direction in dual space
Definition at line 162 of file eiquadprog-fast.hpp.
| VectorXd eiquadprog::solvers::EiquadprogFast::s |
|
private |
| VectorXd eiquadprog::solvers::EiquadprogFast::u |
|
private |
◆ u_old
| VectorXd eiquadprog::solvers::EiquadprogFast::u_old |
|
private |
◆ x_old
| VectorXd eiquadprog::solvers::EiquadprogFast::x_old |
|
private |
| VectorXd eiquadprog::solvers::EiquadprogFast::z |
|
private |
The documentation for this class was generated from the following files:
eiquadprog
Author(s): Gabriele Buondonno, Andrea Del Prete, Luca Di Gaspero, Angelo Furfaro, Benjamin Stephens, Gael Guennebaud
autogenerated on Wed May 28 2025 02:55:57