Interface to the external solver OSQP. More...
#include <qp_solver_osqp.h>

Public Types | |
| using | Ptr = std::shared_ptr< SolverOsqp > |
| using | UPtr = std::unique_ptr< SolverOsqp > |
Public Types inherited from corbo::QpSolverInterface | |
| using | Ptr = std::shared_ptr< QpSolverInterface > |
| using | SparseMatrix = Eigen::SparseMatrix< double, Eigen::ColMajor, long long > |
| using | UPtr = std::unique_ptr< QpSolverInterface > |
Public Member Functions | |
| void | clear () override |
| clear internal caches More... | |
| void | enforceNewStructure (bool new_structure=true) override |
| Eigen::Ref< Eigen::VectorXd > | getDualSolution () override |
| QpSolverInterface::Ptr | getInstance () const override |
| Return a newly created instance of the current solver. More... | |
| Eigen::Ref< Eigen::VectorXd > | getPrimalSolution () override |
| bool | isSupportingSimpleBounds () override |
| SolverStatus | solve (SparseMatrix &P, Eigen::Ref< Eigen::VectorXd > q, SparseMatrix &A, Eigen::Ref< Eigen::VectorXd > lbA, Eigen::Ref< Eigen::VectorXd > ubA, bool new_structure=true, bool zero_x_warmstart=false, bool update_P=true, bool update_q=true, bool update_A=true, bool update_bounds=true) override |
| Solve QP without simple bounds. More... | |
| SolverStatus | solve (SparseMatrix &P, Eigen::Ref< Eigen::VectorXd > q, SparseMatrix &A, Eigen::Ref< Eigen::VectorXd > lbA, Eigen::Ref< Eigen::VectorXd > ubA, Eigen::Ref< Eigen::VectorXd > lb, Eigen::Ref< Eigen::VectorXd > ub, bool new_structure=true, bool zero_x_warmstart=false) override |
| Solve full QP. More... | |
| void | updateDualSolutionWarmStart (const Eigen::Ref< const Eigen::VectorXd > &y) override |
| void | updatePrimalSolutionWarmStart (const Eigen::Ref< const Eigen::VectorXd > &x) override |
Public Member Functions inherited from corbo::QpSolverInterface | |
| virtual bool | initialize () |
| Initialize the qp solver. More... | |
| virtual | ~QpSolverInterface ()=default |
| Virtual destructor. More... | |
Protected Member Functions | |
| void | printWarning () const |
Private Attributes | |
| Eigen::VectorXd | _dummy |
Interface to the external solver OSQP.
Definition at line 156 of file qp_solver_osqp.h.
| using corbo::SolverOsqp::Ptr = std::shared_ptr<SolverOsqp> |
Definition at line 181 of file qp_solver_osqp.h.
| using corbo::SolverOsqp::UPtr = std::unique_ptr<SolverOsqp> |
Definition at line 182 of file qp_solver_osqp.h.
|
inlineoverridevirtual |
clear internal caches
Implements corbo::QpSolverInterface.
Definition at line 216 of file qp_solver_osqp.h.
|
inlineoverridevirtual |
Implements corbo::QpSolverInterface.
Definition at line 214 of file qp_solver_osqp.h.
|
inlineoverridevirtual |
Implements corbo::QpSolverInterface.
Definition at line 209 of file qp_solver_osqp.h.
|
inlineoverridevirtual |
Return a newly created instance of the current solver.
Implements corbo::QpSolverInterface.
Definition at line 185 of file qp_solver_osqp.h.
|
inlineoverridevirtual |
Implements corbo::QpSolverInterface.
Definition at line 208 of file qp_solver_osqp.h.
|
inlineoverridevirtual |
Implements corbo::QpSolverInterface.
Definition at line 188 of file qp_solver_osqp.h.
|
inlineprotected |
Definition at line 230 of file qp_solver_osqp.h.
|
inlineoverridevirtual |
Solve QP without simple bounds.
| [in] | P | Quadratic form matrix, |
| [in] | q | Linear part |
| [in] | A | Linear constraint matrix |
| [in] | lbA | Lower bounds of linear constraints |
| [in] | ubA | Upper bounds of linear constraints |
| [in] | new_structure | If true, the solver must reallocte the internal memory |
Implements corbo::QpSolverInterface.
Definition at line 200 of file qp_solver_osqp.h.
|
inlineoverridevirtual |
Solve full QP.
| [in] | P | Quadratic form matrix, |
| [in] | q | Linear part |
| [in] | A | Linear constraint matrix |
| [in] | lbA | Lower bounds of linear constraints |
| [in] | ubA | Upper bounds of linear constraints |
| [in] | lb | Lower bounds of parameters |
| [in] | ub | Upper bounds of parameters |
| [in] | new_structure | If true, the solver must reallocte the internal memory |
Implements corbo::QpSolverInterface.
Definition at line 191 of file qp_solver_osqp.h.
|
inlineoverridevirtual |
Implements corbo::QpSolverInterface.
Definition at line 212 of file qp_solver_osqp.h.
|
inlineoverridevirtual |
Implements corbo::QpSolverInterface.
Definition at line 211 of file qp_solver_osqp.h.
|
private |
Definition at line 233 of file qp_solver_osqp.h.