qpOASES  3.0.1
Classes | Defines | Enumerations | Variables
include/qpOASES/Types.hpp File Reference
This graph shows which files directly or indirectly include this file:

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...

Defines

#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)]

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
}

Variables

BEGIN_NAMESPACE_QPOASES
typedef double 
real_t

Detailed Description

Author:
Hans Joachim Ferreau, Andreas Potschka, Christian Kirches
Version:
3.0
Date:
2007-2014

Declaration of all non-built-in types (except for classes).


Define Documentation

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,
 
)    Q[(I)+nV*(J)]
#define REFER_NAMESPACE_QPOASES   qpOASES::
#define RR (   I,
 
)    R[(I)+nV*(J)]
#define TT (   I,
 
)    T[(I)*sizeT+(J)]

Macro for accessing the triangular matrix T of the QT factorisation.

Referenced by QProblem::addBound(), QProblem::addConstraint(), QProblem::backsolveT(), QProblem::printIteration(), QProblem::removeBound(), and QProblem::removeConstraint().

#define USING_NAMESPACE_QPOASES   using namespace qpOASES;

Macro for switching on/off the use of the qpOASES namespace.

Referenced by main().


Enumeration Type Documentation

Summarises all possible logical values.

Enumerator:
BT_FALSE 

Logical value for "false".

BT_TRUE 

Logical value for "true".

Summarises all possible types of the QP's Hessian matrix.

Enumerator:
HST_ZERO 

Hessian is zero matrix (i.e. LP formulation).

HST_IDENTITY 

Hessian is identity matrix.

HST_POSDEF 

Hessian is (strictly) positive definite.

HST_POSDEF_NULLSPACE 

Hessian is positive definite on null space of active bounds/constraints.

HST_SEMIDEF 

Hessian is positive semi-definite.

HST_INDEF 

Hessian is indefinite.

HST_UNKNOWN 

Hessian type is unknown.

enum PrintLevel

Summarises all possible print levels. Print levels are used to describe the desired amount of output during runtime of qpOASES.

Enumerator:
PL_DEBUG_ITER 

Full tabular debugging output.

PL_TABULAR 

Normal tabular output.

PL_NONE 

No output.

PL_LOW 

Print error messages only.

PL_MEDIUM 

Print error and warning messages as well as concise info messages.

PL_HIGH 

Print all messages with full details.

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.

Summarises all possible states of bounds and constraints.

Enumerator:
ST_LOWER 

Bound/constraint is at its lower bound.

ST_INACTIVE 

Bound/constraint is inactive.

ST_UPPER 

Bound/constraint is at its upper bound.

ST_INFEASIBLE_LOWER 

(to be documented)

ST_INFEASIBLE_UPPER 

(to be documented)

ST_UNDEFINED 

Status of bound/constraint undefined.

Summarises all possible types of bounds and constraints.

Enumerator:
ST_UNBOUNDED 

Bound/constraint is unbounded.

ST_BOUNDED 

Bound/constraint is bounded but not fixed.

ST_EQUALITY 

Bound/constraint is fixed (implicit equality bound/constraint).

ST_DISABLED 

Bound/constraint is disabled (i.e. ignored when solving QP).

ST_UNKNOWN 

Type of bound/constraint unknown.

Defines visibility status of a message.

Enumerator:
VS_HIDDEN 

Message not visible.

VS_VISIBLE 

Message visible.


Variable Documentation

Defines real_t for facilitating switching between double and float.

Referenced by QProblem::addBound(), QProblemB::addBound(), QProblem::addBound_checkLI(), QProblem::addBound_ensureLI(), QProblem::addConstraint(), QProblem::addConstraint_checkLI(), QProblem::addConstraint_ensureLI(), QProblemB::backsolveR(), QProblem::backsolveT(), SymDenseMat::bilinear(), QProblemB::computeGivens(), QProblem::copy(), QProblemB::copy(), QProblemB::createDiagSparseMat(), QProblemB::determineHessianType(), QProblem::determineStepDirection(), QProblemB::determineStepDirection(), DenseMatrix::duplicate(), SparseMatrix::duplicate(), SparseMatrixRow::duplicate(), SymDenseMat::duplicateSym(), SymSparseMat::duplicateSym(), QProblem::ensureNonzeroCurvature(), DenseMatrix::full(), SparseMatrix::full(), SparseMatrixRow::full(), Flipper::get(), getCPUtime(), getKKTResidual(), SolutionAnalysis::getMaxKKTviolation(), getNorm(), QProblemB::getObjVal(), QProblemB::getRelativeHomotopyLength(), QProblem::getRelativeHomotopyLength(), SparseMatrix::getRowNorm(), SolutionAnalysis::getVarianceCovariance(), SQProblem::hotstart(), QProblemB::hotstart(), QProblem::hotstart(), QProblemB::isCPUtimeLimitExceeded(), main(), normaliseConstraints(), QProblemB::performRamping(), QProblem::performRamping(), QProblem::performStep(), QProblemB::performStep(), SparseMatrix::print(), SparseMatrixRow::print(), QProblemB::printIteration(), QProblem::printIteration(), QProblem::QProblem(), QProblemB::QProblemB(), readFromFile(), readOQPdata(), QProblem::removeBound(), QProblemB::removeBound(), QProblem::removeConstraint(), runOQPbenchmark(), Flipper::set(), QProblem::setA(), QProblemB::setG(), QProblemB::setH(), QProblemB::setLB(), QProblem::setLBA(), QProblemB::setUB(), QProblem::setUBA(), SQProblem::setupAuxiliaryQP(), QProblem::setupAuxiliaryWorkingSet(), QProblemB::setupQPdataFromFile(), QProblem::setupQPdataFromFile(), QProblem::solveCurrentEQP(), QProblem::solveInitialQP(), QProblemB::solveInitialQP(), solveOQPbenchmark(), QProblem::solveQP(), QProblemB::solveQP(), QProblem::solveRegularisedQP(), QProblemB::solveRegularisedQP(), SparseMatrix::SparseMatrix(), SparseMatrixRow::SparseMatrixRow(), QProblemB::updateFarBounds(), QProblem::updateFarBounds(), writeIntoMatFile(), and QProblem::writeQpDataIntoMatFile().