Common method for Quadprog solver classes. More...
#include <QuadProg.h>
Public Member Functions | |
| EIGEN_QUADPROG_API | QuadProgCommon () |
| Default constructor. | |
| EIGEN_QUADPROG_API const VectorXi & | iter () const |
| Two-dimensional iteration vector. | |
| EIGEN_QUADPROG_API int | fail () const |
| Failure code, 0 is success. | |
| EIGEN_QUADPROG_API const VectorXd & | result () const |
| Solution found by the solver. | |
| EIGEN_QUADPROG_API void | problem (int nrvar, int nreq, int nrineq) |
| Set problem dimensions. | |
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. | |
| VectorXd | C_ |
| Cost function vector. | |
| VectorXd | B_ |
| Inequality constraint vector. | |
| VectorXd | X_ |
| Solution of the quadratic program. | |
| int | fail_ |
| Failure code, 0 is success. | |
| VectorXi | iact_ |
| Vector of constraints that are active in solution. | |
| 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 | |
| VectorXd | work_ |
| Working space vector with length at least \(2n+r(r+5)/2+2q+1\) where \(r=\min(n,q)\). | |
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.