Common method for Quadprog solver classes. More...
#include <QuadProg.h>
Public Member Functions | |
EIGEN_QUADPROG_API | QuadProgCommon () |
Default constructor. More... | |
EIGEN_QUADPROG_API const VectorXi & | iter () const |
Two-dimensional iteration vector. More... | |
EIGEN_QUADPROG_API int | fail () const |
Failure code, 0 is success. More... | |
EIGEN_QUADPROG_API const VectorXd & | result () const |
Solution found by the solver. More... | |
EIGEN_QUADPROG_API void | problem (int nrvar, int nreq, int nrineq) |
Set problem dimensions. More... | |
Protected Member Functions | |
void | fillQCBf (int nreq, int nrineq, const MatrixXd &Q, const VectorXd &C, const VectorXd &Beq, const VectorXd &Bineq, bool isDecomp) |
Protected Attributes | |
MatrixXd | Q_ |
Cost function matrix. More... | |
VectorXd | C_ |
Cost function vector. More... | |
VectorXd | B_ |
Inequality constraint vector. More... | |
VectorXd | X_ |
Solution of the quadratic program. More... | |
int | fail_ |
Failure code, 0 is success. More... | |
VectorXi | iact_ |
Vector of constraints that are active in solution. More... | |
VectorXi | iter_ |
2x1 vector, first component gives the number of "main" iterations, the second one says how many constraints were deleted after they became active More... | |
VectorXd | work_ |
Working space vector with length at least \(2n+r(r+5)/2+2q+1\) where \(r=\min(n,q)\). More... | |
Common method for Quadprog solver classes.
\begin{align} \underset{{x} \in \mathbb{R}^n}{\text{minimize}} & \ \frac{1}{2}{x^TQx} + {c^Tx} \nonumber \\ \text{subject to} & \ A_{eq} x = b_{eq} \\ & \ A_{ineq} x \leq b_{ineq} \end{align}
EIGEN_QUADPROG_API Eigen::QuadProgCommon::QuadProgCommon | ( | ) |
Default constructor.
EIGEN_QUADPROG_API int Eigen::QuadProgCommon::fail | ( | ) | const |
Failure code, 0 is success.
|
protected |
EIGEN_QUADPROG_API const VectorXi& Eigen::QuadProgCommon::iter | ( | ) | const |
Two-dimensional iteration vector.
First component gives the number of "main" iterations, the second one says how many constraints were deleted after they became active.
EIGEN_QUADPROG_API void Eigen::QuadProgCommon::problem | ( | int | nrvar, |
int | nreq, | ||
int | nrineq | ||
) |
Set problem dimensions.
nrvar | Dimension \(n\) of optimization vector \(x \in \mathbb{R}^n\). |
nreq | Number of equality constraints, i.e. number of lines of \(A_{eq}\) and \(b_{eq}\). |
nrineq | Number of inequality constraints, i.e. number of lines of \(A_{ineq}\) and \(b_{ineq}\). |
EIGEN_QUADPROG_API const VectorXd& Eigen::QuadProgCommon::result | ( | ) | const |
Solution found by the solver.
|
protected |
Inequality constraint vector.
|
protected |
Cost function vector.
|
protected |
Failure code, 0 is success.
|
protected |
Vector of constraints that are active in solution.
|
protected |
2x1 vector, first component gives the number of "main" iterations, the second one says how many constraints were deleted after they became active
|
protected |
Cost function matrix.
|
protected |
Working space vector with length at least \(2n+r(r+5)/2+2q+1\) where \(r=\min(n,q)\).
|
protected |
Solution of the quadratic program.