|
qpOASES 3.2.1
An Implementation of the Online Active Set Strategy
|
Go to the source code of this file.
Classes | |
| struct | TabularOutput |
| Stores internal information for tabular (debugging) output. More... | |
| struct | MatMatrixHeader |
| Struct containing the variable header for mat file. More... | |
Macros | |
| #define | __ALWAYS_INITIALISE_WITH_ALL_EQUALITIES__ |
| #define | BEGIN_NAMESPACE_QPOASES namespace qpOASES { |
| #define | END_NAMESPACE_QPOASES } |
| #define | USING_NAMESPACE_QPOASES using namespace qpOASES; |
| #define | REFER_NAMESPACE_QPOASES qpOASES:: |
| #define | RR(I, J) R[(I)+nV*(J)] |
| #define | QQ(I, J) Q[(I)+nV*(J)] |
| #define | TT(I, J) T[(I)*sizeT+(J)] |
| #define | SOLVER_NONE |
Typedefs | |
| typedef long | la_int_t |
| typedef unsigned long | la_uint_t |
| typedef int | int_t |
| typedef unsigned int | uint_t |
| typedef int | fint_t |
| typedef int_t | sparse_int_t |
Enumerations | |
| enum | BooleanType { BT_FALSE , BT_TRUE } |
| enum | PrintLevel { PL_DEBUG_ITER = -2 , PL_TABULAR , PL_NONE , PL_LOW , PL_MEDIUM , PL_HIGH } |
| enum | VisibilityStatus { VS_HIDDEN , VS_VISIBLE } |
| enum | QProblemStatus { QPS_NOTINITIALISED , QPS_PREPARINGAUXILIARYQP , QPS_AUXILIARYQPSOLVED , QPS_PERFORMINGHOMOTOPY , QPS_HOMOTOPYQPSOLVED , QPS_SOLVED } |
| enum | HessianType { HST_ZERO , HST_IDENTITY , HST_POSDEF , HST_POSDEF_NULLSPACE , HST_SEMIDEF , HST_INDEF , HST_UNKNOWN } |
| enum | SubjectToType { ST_UNBOUNDED , ST_BOUNDED , ST_EQUALITY , ST_DISABLED , ST_UNKNOWN } |
| enum | SubjectToStatus { ST_LOWER = -1 , ST_INACTIVE , ST_UPPER , ST_INFEASIBLE_LOWER , ST_INFEASIBLE_UPPER , ST_UNDEFINED } |
| enum | SchurUpdateType { SUT_VarFixed , SUT_VarFreed , SUT_ConAdded , SUT_ConRemoved , SUT_UNDEFINED } |
Variables | |
| BEGIN_NAMESPACE_QPOASES typedef double | real_t |
Declaration of all non-built-in types (except for classes).
| #define __ALWAYS_INITIALISE_WITH_ALL_EQUALITIES__ |
Forces to always include all implicitly fixed bounds and all equality constraints into the initial working set when setting up an auxiliary QP.
| #define BEGIN_NAMESPACE_QPOASES namespace qpOASES { |
Macro for switching on/off the beginning of the qpOASES namespace definition.
| #define END_NAMESPACE_QPOASES } |
Macro for switching on/off the end of the qpOASES namespace definition.
| #define QQ | ( | I, | |
| J | |||
| ) | Q[(I)+nV*(J)] |
Macro for accessing the orthonormal matrix Q of the QT factorisation.
| #define REFER_NAMESPACE_QPOASES qpOASES:: |
Macro for switching on/off references to the qpOASES namespace.
| #define RR | ( | I, | |
| J | |||
| ) | R[(I)+nV*(J)] |
Macro for accessing the Cholesky factor R.
| #define TT | ( | I, | |
| J | |||
| ) | T[(I)*sizeT+(J)] |
Macro for accessing the triangular matrix T of the QT factorisation.
| #define USING_NAMESPACE_QPOASES using namespace qpOASES; |
Macro for switching on/off the use of the qpOASES namespace.
| typedef int fint_t |
Defines FORTRAN integer type. Might be platform dependent!
| typedef int int_t |
Defines int_t for facilitating switching between int and long int.
| typedef long la_int_t |
Defined integer type for calling BLAS/LAPACK. Should usually be "(unsigned) int", currently set to "(unsigned) long" for backwards compatibility. This will change in a future release.
| typedef int_t sparse_int_t |
Integer type for sparse matrix row/column entries. Make this "int" for 32 bit entries, and "long" for 64-bit entries on x86_64 platform.
Most sparse codes still assume 32-bit entries here (HSL, BQPD, ...)
| enum BooleanType |
| enum HessianType |
Summarises all possible types of the QP's Hessian matrix.
| enum PrintLevel |
Summarises all possible print levels. Print levels are used to describe the desired amount of output during runtime of qpOASES.
| enum QProblemStatus |
Summarises all possible states of the (S)QProblem(B) object during the solution process of a QP sequence.
| Enumerator | |
|---|---|
| QPS_NOTINITIALISED | QProblem object is freshly instantiated or reset. |
| QPS_PREPARINGAUXILIARYQP | An auxiliary problem is currently setup, either at the very beginning via an initial homotopy or after changing the QP matrices. |
| QPS_AUXILIARYQPSOLVED | An auxilary problem was solved, either at the very beginning via an initial homotopy or after changing the QP matrices. |
| QPS_PERFORMINGHOMOTOPY | A homotopy according to the main idea of the online active set strategy is performed. |
| QPS_HOMOTOPYQPSOLVED | An intermediate QP along the homotopy path was solved. |
| QPS_SOLVED | The solution of the actual QP was found. |
| enum SchurUpdateType |
| enum SubjectToStatus |
Summarises all possible states of bounds and constraints.
| enum SubjectToType |
Summarises all possible types of bounds and constraints.
| enum VisibilityStatus |
| BEGIN_NAMESPACE_QPOASES typedef double real_t |
Defines real_t for facilitating switching between double and float.
Referenced by QProblemB::addBound(), QProblem::addBound(), SQProblemSchur::addBound(), QProblem::addBound_checkLI(), SQProblemSchur::addBound_checkLI(), SQProblemSchur::addBound_checkLISchur(), QProblem::addBound_ensureLI(), SQProblemSchur::addBound_ensureLI(), QProblem::addConstraint(), SQProblemSchur::addConstraint(), QProblem::addConstraint_checkLI(), SQProblemSchur::addConstraint_checkLI(), SQProblemSchur::addConstraint_checkLISchur(), QProblem::addConstraint_ensureLI(), SQProblemSchur::addConstraint_ensureLI(), SQProblemSchur::addToSchurComplement(), QProblemB::backsolveR(), QProblem::backsolveT(), SymDenseMat::bilinear(), SQProblemSchur::calcDetSchur(), SolutionAnalysis::checkCurvatureOnStronglyActiveConstraints(), QProblemB::computeGivens(), SQProblemSchur::computeMTimes(), QProblem::copy(), QProblemB::copy(), SQProblemSchur::copy(), SQProblemSchur::correctInertia(), QProblemB::createDiagSparseMat(), SQProblemSchur::deleteFromSchurComplement(), QProblemB::determineHessianType(), QProblemB::determineStepDirection(), QProblem::determineStepDirection(), SQProblemSchur::determineStepDirection2(), DenseMatrix::duplicate(), SparseMatrix::duplicate(), SparseMatrixRow::duplicate(), SymDenseMat::duplicateSym(), SymSparseMat::duplicateSym(), QProblem::ensureNonzeroCurvature(), DenseMatrix::full(), SparseMatrix::full(), SparseMatrixRow::full(), Flipper::get(), getCPUtime(), getKktViolation(), SolutionAnalysis::getKktViolation(), SolutionAnalysis::getKktViolation(), getNorm(), QProblemB::getObjVal(), QProblemB::getObjVal(), QProblemB::getRelativeHomotopyLength(), QProblem::getRelativeHomotopyLength(), SparseMatrix::getRowNorm(), DenseMatrix::getSparseSubmatrix(), SolutionAnalysis::getVarianceCovariance(), QProblem::hotstart(), QProblemB::hotstart(), SQProblem::hotstart(), QProblem::hotstart(), QProblemB::hotstart(), SQProblem::hotstart(), SQProblem::hotstart(), QProblemB::isCPUtimeLimitExceeded(), main(), normaliseConstraints(), QProblem::performRamping(), QProblemB::performRamping(), QProblemB::performStep(), QProblem::performStep(), SparseMatrix::print(), SparseMatrixRow::print(), QProblem::printIteration(), QProblemB::printIteration(), QProblem::QProblem(), QProblemB::QProblemB(), readFromFile(), readOqpData(), QProblemB::removeBound(), QProblem::removeBound(), SQProblemSchur::removeBound(), QProblem::removeConstraint(), SQProblemSchur::removeConstraint(), SQProblemSchur::resetSchurComplement(), runOqpBenchmark(), runOqpBenchmark(), Flipper::set(), QProblem::setA(), QProblemB::setG(), QProblemB::setH(), QProblemB::setLB(), QProblem::setLBA(), QProblemB::setUB(), QProblem::setUBA(), QProblem::setupAuxiliaryWorkingSet(), SQProblem::setupNewAuxiliaryQP(), QProblem::setupQPdataFromFile(), QProblemB::setupQPdataFromFile(), QProblem::solveCurrentEQP(), QProblem::solveInitialQP(), QProblemB::solveInitialQP(), solveOqpBenchmark(), solveOqpBenchmark(), solveOqpBenchmark(), solveOqpBenchmark(), QProblem::solveQP(), QProblemB::solveQP(), QProblem::solveRegularisedQP(), QProblemB::solveRegularisedQP(), SparseMatrix::SparseMatrix(), SparseMatrixRow::SparseMatrixRow(), SQProblemSchur::SQProblemSchur(), SparseMatrix::times(), SparseMatrix::transTimes(), SQProblemSchur::undoDeleteFromSchurComplement(), QProblemB::updateFarBounds(), QProblem::updateFarBounds(), SQProblemSchur::updateSchurQR(), writeIntoMatFile(), writeIntoMatFile(), and QProblem::writeQpDataIntoMatFile().