Implements the online active set strategy for box-constrained QPs. More...
#include <QProblemB.hpp>
Public Member Functions | |
returnValue | getBounds (Bounds *const _bounds) const |
returnValue | getBounds (Bounds *const _bounds) const |
returnValue | getBounds (Bounds &_bounds) const |
returnValue | getDualSolution (real_t *const yOpt) const |
returnValue | getDualSolution (real_t *const yOpt) const |
virtual returnValue | getDualSolution (real_t *const yOpt) const |
returnValue | getG (real_t *const _g) const |
returnValue | getG (real_t *const _g) const |
returnValue | getH (real_t *const _H) const |
returnValue | getH (real_t *const _H) const |
HessianType | getHessianType () const |
HessianType | getHessianType () const |
HessianType | getHessianType () const |
returnValue | getLB (real_t *const _lb) const |
returnValue | getLB (int number, real_t &value) const |
returnValue | getLB (real_t *const _lb) const |
returnValue | getLB (int number, real_t &value) const |
int | getNFR () |
int | getNFR () |
int | getNFR () const |
int | getNFV () const |
int | getNFV () const |
int | getNFV () const |
int | getNFX () |
int | getNFX () |
int | getNFX () const |
int | getNV () const |
int | getNV () const |
int | getNV () const |
int | getNZ () |
int | getNZ () |
virtual int | getNZ () const |
real_t | getObjVal () const |
real_t | getObjVal (const real_t *const _x) const |
real_t | getObjVal () const |
real_t | getObjVal (const real_t *const _x) const |
real_t | getObjVal () const |
real_t | getObjVal (const real_t *const _x) const |
Options | getOptions () const |
returnValue | getPrimalSolution (real_t *const xOpt) const |
returnValue | getPrimalSolution (real_t *const xOpt) const |
returnValue | getPrimalSolution (real_t *const xOpt) const |
PrintLevel | getPrintLevel () const |
PrintLevel | getPrintLevel () const |
PrintLevel | getPrintLevel () const |
QProblemStatus | getStatus () const |
QProblemStatus | getStatus () const |
QProblemStatus | getStatus () const |
returnValue | getUB (real_t *const _ub) const |
returnValue | getUB (int number, real_t &value) const |
returnValue | getUB (real_t *const _ub) const |
returnValue | getUB (int number, real_t &value) const |
returnValue | hotstart (const real_t *const g_new, const real_t *const lb_new, const real_t *const ub_new, int &nWSR, real_t *const cputime) |
returnValue | hotstart (const real_t *const g_new, const real_t *const lb_new, const real_t *const ub_new, int &nWSR, real_t *const cputime) |
returnValue | hotstart (const real_t *const g_new, const real_t *const lb_new, const real_t *const ub_new, int &nWSR, real_t *const cputime) |
returnValue | hotstart (const char *const g_file, const char *const lb_file, const char *const ub_file, int &nWSR, real_t *const cputime) |
returnValue | hotstart (const real_t *const g_new, const real_t *const lb_new, const real_t *const ub_new, int &nWSR, real_t *const cputime, const Bounds *const guessedBounds) |
returnValue | hotstart (const char *const g_file, const char *const lb_file, const char *const ub_file, int &nWSR, real_t *const cputime, const Bounds *const guessedBounds) |
returnValue | init (const real_t *const _H, const real_t *const _g, const real_t *const _lb, const real_t *const _ub, int &nWSR, const real_t *const yOpt=0, real_t *const cputime=0) |
returnValue | init (const real_t *const _H, const real_t *const _g, const real_t *const _lb, const real_t *const _ub, int &nWSR, const real_t *const yOpt=0, real_t *const cputime=0) |
returnValue | init (SymmetricMatrix *_H, const real_t *const _g, const real_t *const _lb, const real_t *const _ub, int &nWSR, real_t *const cputime) |
returnValue | init (const real_t *const _H, const real_t *const _R, const real_t *const _g, const real_t *const _lb, const real_t *const _ub, int &nWSR, const real_t *const yOpt=0, real_t *const cputime=0) |
returnValue | init (const real_t *const _H, const real_t *const _g, const real_t *const _lb, const real_t *const _ub, int &nWSR, real_t *const cputime) |
returnValue | init (const char *const H_file, const char *const g_file, const char *const lb_file, const char *const ub_file, int &nWSR, real_t *const cputime) |
returnValue | init (SymmetricMatrix *_H, const real_t *const _g, const real_t *const _lb, const real_t *const _ub, int &nWSR, real_t *const cputime, const real_t *const xOpt, const real_t *const yOpt, const Bounds *const guessedBounds) |
returnValue | init (const real_t *const _H, const real_t *const _g, const real_t *const _lb, const real_t *const _ub, int &nWSR, real_t *const cputime, const real_t *const xOpt, const real_t *const yOpt, const Bounds *const guessedBounds) |
returnValue | init (const char *const H_file, const char *const g_file, const char *const lb_file, const char *const ub_file, int &nWSR, real_t *const cputime, const real_t *const xOpt, const real_t *const yOpt, const Bounds *const guessedBounds) |
BooleanType | isInfeasible () const |
BooleanType | isInfeasible () const |
BooleanType | isInfeasible () const |
BooleanType | isInitialised () const |
BooleanType | isInitialised () const |
BooleanType | isInitialised () const |
BooleanType | isSolved () const |
BooleanType | isSolved () const |
BooleanType | isSolved () const |
BooleanType | isUnbounded () const |
BooleanType | isUnbounded () const |
BooleanType | isUnbounded () const |
QProblemB & | operator= (const QProblemB &rhs) |
QProblemB & | operator= (const QProblemB &rhs) |
QProblemB & | operator= (const QProblemB &rhs) |
returnValue | printOptions () const |
virtual returnValue | printProperties () |
QProblemB () | |
QProblemB () | |
QProblemB (int _nV) | |
QProblemB (int _nV) | |
QProblemB (const QProblemB &rhs) | |
QProblemB (const QProblemB &rhs) | |
QProblemB () | |
QProblemB (int _nV, HessianType _hessianType=HST_UNKNOWN) | |
QProblemB (const QProblemB &rhs) | |
returnValue | reset () |
returnValue | reset () |
virtual returnValue | reset () |
returnValue | setHessianType (HessianType _hessianType) |
returnValue | setHessianType (HessianType _hessianType) |
returnValue | setHessianType (HessianType _hessianType) |
returnValue | setOptions (const Options &_options) |
returnValue | setPrintLevel (PrintLevel _printlevel) |
returnValue | setPrintLevel (PrintLevel _printlevel) |
returnValue | setPrintLevel (PrintLevel _printlevel) |
BooleanType | usingRegularisation () const |
~QProblemB () | |
~QProblemB () | |
virtual | ~QProblemB () |
Protected Member Functions | |
returnValue | addBound (int number, SubjectToStatus B_status, BooleanType updateCholesky) |
returnValue | addBound (int number, SubjectToStatus B_status, BooleanType updateCholesky) |
void | applyGivens (real_t c, real_t s, real_t xold, real_t yold, real_t &xnew, real_t &ynew) const |
void | applyGivens (real_t c, real_t s, real_t xold, real_t yold, real_t &xnew, real_t &ynew) const |
void | applyGivens (real_t c, real_t s, real_t nu, real_t xold, real_t yold, real_t &xnew, real_t &ynew) const |
BooleanType | areBoundsConsistent (const real_t *const delta_lb, const real_t *const delta_ub) const |
BooleanType | areBoundsConsistent (const real_t *const delta_lb, const real_t *const delta_ub) const |
returnValue | backsolveR (const real_t *const b, BooleanType transposed, real_t *const a) |
returnValue | backsolveR (const real_t *const b, BooleanType transposed, BooleanType removingBound, real_t *const a) |
returnValue | backsolveR (const real_t *const b, BooleanType transposed, real_t *const a) |
returnValue | backsolveR (const real_t *const b, BooleanType transposed, BooleanType removingBound, real_t *const a) |
returnValue | backsolveR (const real_t *const b, BooleanType transposed, real_t *const a) const |
returnValue | backsolveR (const real_t *const b, BooleanType transposed, BooleanType removingBound, real_t *const a) const |
returnValue | checkForIdentityHessian () |
returnValue | checkForIdentityHessian () |
returnValue | clear () |
void | computeGivens (real_t xold, real_t yold, real_t &xnew, real_t &ynew, real_t &c, real_t &s) const |
void | computeGivens (real_t xold, real_t yold, real_t &xnew, real_t &ynew, real_t &c, real_t &s) const |
void | computeGivens (real_t xold, real_t yold, real_t &xnew, real_t &ynew, real_t &c, real_t &s) const |
returnValue | copy (const QProblemB &rhs) |
returnValue | determineDataShift (const real_t *const g_new, const real_t *const lb_new, const real_t *const ub_new, real_t *const delta_g, real_t *const delta_lb, real_t *const delta_ub, BooleanType &Delta_bB_isZero) |
returnValue | determineHessianType () |
returnValue | hotstart_determineDataShift (const int *const FX_idx, const real_t *const g_new, const real_t *const lb_new, const real_t *const ub_new, real_t *const delta_g, real_t *const delta_lb, real_t *const delta_ub, BooleanType &Delta_bB_isZero) |
returnValue | hotstart_determineDataShift (const int *const FX_idx, const real_t *const g_new, const real_t *const lb_new, const real_t *const ub_new, real_t *const delta_g, real_t *const delta_lb, real_t *const delta_ub, BooleanType &Delta_bB_isZero) |
BooleanType | isBlocking (real_t num, real_t den, real_t epsNum, real_t epsDen, real_t &t) const |
BooleanType | isCPUtimeLimitExceeded (const real_t *const cputime, real_t starttime, int nWSR) const |
returnValue | loadQPvectorsFromFile (const char *const g_file, const char *const lb_file, const char *const ub_file, real_t *const g_new, real_t *const lb_new, real_t *const ub_new) const |
returnValue | obtainAuxiliaryWorkingSet (const real_t *const xOpt, const real_t *const yOpt, const Bounds *const guessedBounds, Bounds *auxiliaryBounds) const |
returnValue | obtainAuxiliaryWorkingSet (const real_t *const xOpt, const real_t *const yOpt, const Bounds *const guessedBounds, Bounds *auxiliaryBounds) const |
returnValue | obtainAuxiliaryWorkingSet (const real_t *const xOpt, const real_t *const yOpt, const Bounds *const guessedBounds, Bounds *auxiliaryBounds) const |
virtual returnValue | performRamping () |
returnValue | performRatioTest (int nIdx, const int *const idxList, const SubjectTo *const subjectTo, const real_t *const num, const real_t *const den, real_t epsNum, real_t epsDen, real_t &t, int &BC_idx) const |
returnValue | regulariseHessian () |
real_t | relativeHomotopyLength (const real_t *const g_new, const real_t *const lb_new, const real_t *const ub_new) |
returnValue | removeBound (int number, BooleanType updateCholesky) |
returnValue | removeBound (int number, BooleanType updateCholesky) |
returnValue | setG (const real_t *const g_new) |
returnValue | setG (const real_t *const g_new) |
returnValue | setG (const real_t *const g_new) |
returnValue | setH (const real_t *const H_new) |
returnValue | setH (const real_t *const H_new) |
returnValue | setH (SymmetricMatrix *H_new) |
returnValue | setH (const real_t *const H_new) |
returnValue | setInfeasibilityFlag (returnValue returnvalue) |
returnValue | setLB (const real_t *const lb_new) |
returnValue | setLB (int number, real_t value) |
returnValue | setLB (const real_t *const lb_new) |
returnValue | setLB (int number, real_t value) |
returnValue | setLB (const real_t *const lb_new) |
returnValue | setLB (int number, real_t value) |
returnValue | setUB (const real_t *const ub_new) |
returnValue | setUB (int number, real_t value) |
returnValue | setUB (const real_t *const ub_new) |
returnValue | setUB (int number, real_t value) |
returnValue | setUB (const real_t *const ub_new) |
returnValue | setUB (int number, real_t value) |
returnValue | setupAuxiliaryQPbounds (BooleanType useRelaxation) |
returnValue | setupAuxiliaryQPbounds (BooleanType useRelaxation) |
returnValue | setupAuxiliaryQPgradient () |
returnValue | setupAuxiliaryQPgradient () |
returnValue | setupAuxiliaryQPsolution (const real_t *const xOpt, const real_t *const yOpt) |
returnValue | setupAuxiliaryQPsolution (const real_t *const xOpt, const real_t *const yOpt) |
returnValue | setupAuxiliaryWorkingSet (const Bounds *const auxiliaryBounds, BooleanType setupAfresh) |
returnValue | setupAuxiliaryWorkingSet (const Bounds *const auxiliaryBounds, BooleanType setupAfresh) |
returnValue | setupCholeskyDecomposition () |
returnValue | setupCholeskyDecomposition () |
returnValue | setupCholeskyDecomposition () |
returnValue | setupQPdata (const real_t *const _H, const real_t *const _g, const real_t *const _lb, const real_t *const _ub) |
returnValue | setupQPdata (const real_t *const _H, const real_t *const _R, const real_t *const _g, const real_t *const _lb, const real_t *const _ub) |
returnValue | setupQPdata (SymmetricMatrix *_H, const real_t *const _g, const real_t *const _lb, const real_t *const _ub) |
returnValue | setupQPdata (const real_t *const _H, const real_t *const _g, const real_t *const _lb, const real_t *const _ub) |
returnValue | setupQPdataFromFile (const char *const H_file, const char *const g_file, const char *const lb_file, const char *const ub_file) |
returnValue | setupSubjectToType () |
returnValue | setupSubjectToType () |
virtual returnValue | setupSubjectToType () |
virtual returnValue | setupSubjectToType (const real_t *const lb_new, const real_t *const ub_new) |
returnValue | solveInitialQP (const real_t *const xOpt, const real_t *const yOpt, const Bounds *const guessedBounds, int &nWSR, real_t *const cputime) |
returnValue | solveInitialQP (const real_t *const xOpt, const real_t *const yOpt, const Bounds *const guessedBounds, int &nWSR, real_t *const cputime) |
Protected Attributes | |
Bounds | bounds |
int | count |
real_t * | delta_xFR_TMP |
Flipper | flipper |
BooleanType | freeHessian |
real_t | g [NVMAX] |
real_t * | g |
real_t | H [NVMAX *NVMAX] |
SymmetricMatrix * | H |
BooleanType | hasCholesky |
BooleanType | hasHessian |
BooleanType | haveCholesky |
HessianType | hessianType |
BooleanType | infeasible |
BooleanType | isRegularised |
real_t | lb [NVMAX] |
real_t * | lb |
Options | options |
PrintLevel | printlevel |
real_t | R [NVMAX *NVMAX] |
real_t * | R |
real_t | ramp0 |
real_t | ramp1 |
QProblemStatus | status |
real_t | tau |
real_t | ub [NVMAX] |
real_t * | ub |
BooleanType | unbounded |
real_t | x [NVMAX] |
real_t * | x |
real_t | y [NVMAX+NCMAX] |
real_t * | y |
Private Member Functions | |
returnValue | addBound (int number, SubjectToStatus B_status, BooleanType updateCholesky) |
returnValue | changeActiveSet (int BC_idx, SubjectToStatus BC_status) |
returnValue | checkKKTconditions () |
returnValue | checkKKTconditions () |
returnValue | determineStepDirection (const real_t *const delta_g, const real_t *const delta_lb, const real_t *const delta_ub, BooleanType Delta_bB_isZero, real_t *const delta_xFX, real_t *const delta_xFR, real_t *const delta_yFX) |
returnValue | hotstart_determineStepDirection (const int *const FR_idx, const int *const FX_idx, const real_t *const delta_g, const real_t *const delta_lb, const real_t *const delta_ub, BooleanType Delta_bB_isZero, real_t *const delta_xFX, real_t *const delta_xFR, real_t *const delta_yFX) |
returnValue | hotstart_determineStepDirection (const int *const FR_idx, const int *const FX_idx, const real_t *const delta_g, const real_t *const delta_lb, const real_t *const delta_ub, BooleanType Delta_bB_isZero, real_t *const delta_xFX, real_t *const delta_xFR, real_t *const delta_yFX) |
returnValue | hotstart_determineStepLength (const int *const FR_idx, const int *const FX_idx, const real_t *const delta_lb, const real_t *const delta_ub, const real_t *const delta_xFR, const real_t *const delta_yFX, int &BC_idx, SubjectToStatus &BC_status) |
returnValue | hotstart_determineStepLength (const int *const FR_idx, const int *const FX_idx, const real_t *const delta_lb, const real_t *const delta_ub, const real_t *const delta_xFR, const real_t *const delta_yFX, int &BC_idx, SubjectToStatus &BC_status) |
returnValue | hotstart_performStep (const int *const FR_idx, const int *const FX_idx, const real_t *const delta_g, const real_t *const delta_lb, const real_t *const delta_ub, const real_t *const delta_xFX, const real_t *const delta_xFR, const real_t *const delta_yFX, int BC_idx, SubjectToStatus BC_status) |
returnValue | hotstart_performStep (const int *const FR_idx, const int *const FX_idx, const real_t *const delta_g, const real_t *const delta_lb, const real_t *const delta_ub, const real_t *const delta_xFX, const real_t *const delta_xFR, const real_t *const delta_yFX, int BC_idx, SubjectToStatus BC_status) |
returnValue | performDriftCorrection () |
returnValue | performStep (const real_t *const delta_g, const real_t *const delta_lb, const real_t *const delta_ub, const real_t *const delta_xFX, const real_t *const delta_xFR, const real_t *const delta_yFX, int &BC_idx, SubjectToStatus &BC_status) |
returnValue | printIteration (int iteration, int BC_idx, SubjectToStatus BC_status) |
returnValue | removeBound (int number, BooleanType updateCholesky) |
returnValue | setupAuxiliaryQP (const Bounds *const guessedBounds) |
returnValue | setupAuxiliaryQPbounds (BooleanType useRelaxation) |
returnValue | setupAuxiliaryQPgradient () |
returnValue | setupAuxiliaryQPsolution (const real_t *const xOpt, const real_t *const yOpt) |
returnValue | setupAuxiliaryWorkingSet (const Bounds *const auxiliaryBounds, BooleanType setupAfresh) |
BooleanType | shallRefactorise (const Bounds *const guessedBounds) const |
returnValue | solveInitialQP (const real_t *const xOpt, const real_t *const yOpt, const Bounds *const guessedBounds, int &nWSR, real_t *const cputime) |
returnValue | solveQP (const real_t *const g_new, const real_t *const lb_new, const real_t *const ub_new, int &nWSR, real_t *const cputime, int nWSRperformed=0) |
returnValue | solveRegularisedQP (const real_t *const g_new, const real_t *const lb_new, const real_t *const ub_new, int &nWSR, real_t *const cputime, int nWSRperformed=0) |
Friends | |
class | SolutionAnalysis |
Implements the online active set strategy for box-constrained QPs.
Class for setting up and solving quadratic programs with (simple) bounds only. The main feature is the possibily to use the newly developed online active set strategy for parametric quadratic programming.
Class for setting up and solving quadratic programs with bounds (= box constraints) only. The main feature is the possibily to use the newly developed online active set strategy for parametric quadratic programming.
Definition at line 55 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/INCLUDE/QProblemB.hpp.
Default constructor.
Definition at line 61 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/SRC/QProblemB.cpp.
QProblemB::QProblemB | ( | int | _nV | ) |
Constructor which takes the QP dimension only.
_nV | Number of variables. |
Definition at line 90 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/SRC/QProblemB.cpp.
QProblemB::QProblemB | ( | const QProblemB & | rhs | ) |
Copy constructor (deep copy).
rhs | Rhs object. |
Definition at line 126 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/SRC/QProblemB.cpp.
Destructor.
Definition at line 175 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/SRC/QProblemB.cpp.
Default constructor.
QProblemB::QProblemB | ( | int | _nV | ) |
Constructor which takes the QP dimension only.
_nV | Number of variables. |
QProblemB::QProblemB | ( | const QProblemB & | rhs | ) |
Copy constructor (deep copy).
rhs | Rhs object. |
Destructor.
Default constructor.
QProblemB::QProblemB | ( | int | _nV, |
HessianType | _hessianType = HST_UNKNOWN |
||
) |
Constructor which takes the QP dimension and Hessian type information. If the Hessian is the zero (i.e. HST_ZERO) or the identity matrix (i.e. HST_IDENTITY), respectively, no memory is allocated for it and a NULL pointer can be passed for it to the init() functions.
_nV | Number of variables. |
_hessianType | Type of Hessian matrix. |
Definition at line 95 of file external_packages/qpOASES-3.0beta/src/QProblemB.cpp.
QProblemB::QProblemB | ( | const QProblemB & | rhs | ) |
Copy constructor (deep copy).
rhs | Rhs object. |
virtual QProblemB::~QProblemB | ( | ) | [virtual] |
Destructor.
returnValue QProblemB::addBound | ( | int | number, |
SubjectToStatus | B_status, | ||
BooleanType | updateCholesky | ||
) | [protected] |
Adds a bound to active set (specialised version for the case where no constraints exist).
number | Number of bound to be added to active set. |
B_status | Status of new active bound. |
updateCholesky | Flag indicating if Cholesky decomposition shall be updated. |
Reimplemented in QProblem, and QProblem.
Definition at line 1226 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/SRC/QProblemB.cpp.
returnValue QProblemB::addBound | ( | int | number, |
SubjectToStatus | B_status, | ||
BooleanType | updateCholesky | ||
) | [protected] |
Adds a bound to active set (specialised version for the case where no constraints exist).
number | Number of bound to be added to active set. |
B_status | Status of new active bound. |
updateCholesky | Flag indicating if Cholesky decomposition shall be updated. |
returnValue QProblemB::addBound | ( | int | number, |
SubjectToStatus | B_status, | ||
BooleanType | updateCholesky | ||
) | [private] |
Adds a bound to active set (specialised version for the case where no constraints exist).
number | Number of bound to be added to active set. |
B_status | Status of new active bound. |
updateCholesky | Flag indicating if Cholesky decomposition shall be updated. |
void QProblemB::applyGivens | ( | real_t | c, |
real_t | s, | ||
real_t | xold, | ||
real_t | yold, | ||
real_t & | xnew, | ||
real_t & | ynew | ||
) | const [inline, protected] |
Applies Givens matrix determined by c and s (cf. computeGivens).
c | Cosine entry of Givens matrix. |
s | Sine entry of Givens matrix. |
xold | Matrix entry to be transformed corresponding to the normalised entry of the original matrix. |
yold | Matrix entry to be transformed corresponding to the annihilated entry of the original matrix. |
xnew | Output: Transformed matrix entry corresponding to the normalised entry of the original matrix. |
ynew | Output: Transformed matrix entry corresponding to the annihilated entry of the original matrix. |
void QProblemB::applyGivens | ( | real_t | c, |
real_t | s, | ||
real_t | xold, | ||
real_t | yold, | ||
real_t & | xnew, | ||
real_t & | ynew | ||
) | const [inline, protected] |
Applies Givens matrix determined by c and s (cf. computeGivens).
c | Cosine entry of Givens matrix. |
s | Sine entry of Givens matrix. |
xold | Matrix entry to be transformed corresponding to the normalised entry of the original matrix. |
yold | Matrix entry to be transformed corresponding to the annihilated entry of the original matrix. |
xnew | Output: Transformed matrix entry corresponding to the normalised entry of the original matrix. |
ynew | Output: Transformed matrix entry corresponding to the annihilated entry of the original matrix. |
void QProblemB::applyGivens | ( | real_t | c, |
real_t | s, | ||
real_t | nu, | ||
real_t | xold, | ||
real_t | yold, | ||
real_t & | xnew, | ||
real_t & | ynew | ||
) | const [inline, protected] |
Applies Givens matrix determined by c and s (cf. computeGivens).
c | Cosine entry of Givens matrix. |
s | Sine entry of Givens matrix. |
nu | Further factor: s/(1+c). |
xold | Matrix entry to be transformed corresponding to the normalised entry of the original matrix. |
yold | Matrix entry to be transformed corresponding to the annihilated entry of the original matrix. |
xnew | Output: Transformed matrix entry corresponding to the normalised entry of the original matrix. |
ynew | Output: Transformed matrix entry corresponding to the annihilated entry of the original matrix. |
BooleanType QProblemB::areBoundsConsistent | ( | const real_t *const | delta_lb, |
const real_t *const | delta_ub | ||
) | const [protected] |
Checks if lower/upper bounds remain consistent (i.e. if lb <= ub) during the current step.
delta_lb | Step direction of lower bounds. |
delta_ub | Step direction of upper bounds. |
Definition at line 1487 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/SRC/QProblemB.cpp.
BooleanType QProblemB::areBoundsConsistent | ( | const real_t *const | delta_lb, |
const real_t *const | delta_ub | ||
) | const [protected] |
Checks if lower/upper bounds remain consistent (i.e. if lb <= ub) during the current step.
delta_lb | Step direction of lower bounds. |
delta_ub | Step direction of upper bounds. |
returnValue QProblemB::backsolveR | ( | const real_t *const | b, |
BooleanType | transposed, | ||
real_t *const | a | ||
) | [protected] |
Solves the system Ra = b or R^Ta = b where R is an upper triangular matrix.
b | Right hand side vector. |
transposed | Indicates if the transposed system shall be solved. |
a | Output: Solution vector |
Reimplemented in QProblem, and QProblem.
Definition at line 1356 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/SRC/QProblemB.cpp.
returnValue QProblemB::backsolveR | ( | const real_t *const | b, |
BooleanType | transposed, | ||
BooleanType | removingBound, | ||
real_t *const | a | ||
) | [protected] |
Solves the system Ra = b or R^Ta = b where R is an upper triangular matrix.
Special variant for the case that this function is called from within "removeBound()".
b | Right hand side vector. |
transposed | Indicates if the transposed system shall be solved. |
removingBound | Indicates if function is called from "removeBound()". |
a | Output: Solution vector |
Reimplemented in QProblem, and QProblem.
Definition at line 1368 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/SRC/QProblemB.cpp.
returnValue QProblemB::backsolveR | ( | const real_t *const | b, |
BooleanType | transposed, | ||
real_t *const | a | ||
) | [protected] |
returnValue QProblemB::backsolveR | ( | const real_t *const | b, |
BooleanType | transposed, | ||
BooleanType | removingBound, | ||
real_t *const | a | ||
) | [protected] |
Solves the system Ra = b or R^Ta = b where R is an upper triangular matrix.
Special variant for the case that this function is called from within "removeBound()".
b | Right hand side vector. |
transposed | Indicates if the transposed system shall be solved. |
removingBound | Indicates if function is called from "removeBound()". |
a | Output: Solution vector |
returnValue QProblemB::backsolveR | ( | const real_t *const | b, |
BooleanType | transposed, | ||
real_t *const | a | ||
) | const [protected] |
Solves the system Ra = b or R^Ta = b where R is an upper triangular matrix.
b | Right hand side vector. |
transposed | Indicates if the transposed system shall be solved. |
a | Output: Solution vector |
Definition at line 1653 of file external_packages/qpOASES-3.0beta/src/QProblemB.cpp.
returnValue QProblemB::backsolveR | ( | const real_t *const | b, |
BooleanType | transposed, | ||
BooleanType | removingBound, | ||
real_t *const | a | ||
) | const [protected] |
Solves the system Ra = b or R^Ta = b where R is an upper triangular matrix.
Special variant for the case that this function is called from within "removeBound()".
b | Right hand side vector. |
transposed | Indicates if the transposed system shall be solved. |
removingBound | Indicates if function is called from "removeBound()". |
a | Output: Solution vector |
Definition at line 1665 of file external_packages/qpOASES-3.0beta/src/QProblemB.cpp.
returnValue QProblemB::changeActiveSet | ( | int | BC_idx, |
SubjectToStatus | BC_status | ||
) | [private] |
Updates active set.
BC_idx | Index of blocking constraint. |
BC_status | Status of blocking constraint. |
Definition at line 3270 of file external_packages/qpOASES-3.0beta/src/QProblemB.cpp.
returnValue QProblemB::checkForIdentityHessian | ( | ) | [protected] |
Checks if Hessian happens to be the identity matrix, and sets corresponding status flag (otherwise the flag remains unaltered!).
Definition at line 631 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/SRC/QProblemB.cpp.
returnValue QProblemB::checkForIdentityHessian | ( | ) | [protected] |
Checks if Hessian happens to be the identity matrix, and sets corresponding status flag (otherwise the flag remains unaltered!).
returnValue QProblemB::checkKKTconditions | ( | ) | [private] |
Determines the maximum violation of the KKT optimality conditions of the current iterate within the QProblemB object.
Reimplemented in QProblem, and QProblem.
Definition at line 2008 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/SRC/QProblemB.cpp.
returnValue QProblemB::checkKKTconditions | ( | ) | [private] |
returnValue QProblemB::clear | ( | ) | [protected] |
Frees all allocated memory.
Reimplemented in QProblem.
Definition at line 1152 of file external_packages/qpOASES-3.0beta/src/QProblemB.cpp.
void QProblemB::computeGivens | ( | real_t | xold, |
real_t | yold, | ||
real_t & | xnew, | ||
real_t & | ynew, | ||
real_t & | c, | ||
real_t & | s | ||
) | const [inline, protected] |
Computes parameters for the Givens matrix G for which [x,y]*G = [z,0]
void QProblemB::computeGivens | ( | real_t | xold, |
real_t | yold, | ||
real_t & | xnew, | ||
real_t & | ynew, | ||
real_t & | c, | ||
real_t & | s | ||
) | const [inline, protected] |
Computes parameters for the Givens matrix G for which [x,y]*G = [z,0]
void QProblemB::computeGivens | ( | real_t | xold, |
real_t | yold, | ||
real_t & | xnew, | ||
real_t & | ynew, | ||
real_t & | c, | ||
real_t & | s | ||
) | const [inline, protected] |
Computes parameters for the Givens matrix G for which [x,y]*G = [z,0]
returnValue QProblemB::copy | ( | const QProblemB & | rhs | ) | [protected] |
Copies all members from given rhs object.
rhs | Rhs object. |
Definition at line 1209 of file external_packages/qpOASES-3.0beta/src/QProblemB.cpp.
returnValue QProblemB::determineDataShift | ( | const real_t *const | g_new, |
const real_t *const | lb_new, | ||
const real_t *const | ub_new, | ||
real_t *const | delta_g, | ||
real_t *const | delta_lb, | ||
real_t *const | delta_ub, | ||
BooleanType & | Delta_bB_isZero | ||
) | [protected] |
Determines step direction of the shift of the QP data.
g_new | New gradient vector. |
lb_new | New lower bounds. |
ub_new | New upper bounds. |
delta_g | Output: Step direction of gradient vector. |
delta_lb | Output: Step direction of lower bounds. |
delta_ub | Output: Step direction of upper bounds. |
Delta_bB_isZero | Output: Indicates if active bounds are to be shifted. |
Definition at line 1724 of file external_packages/qpOASES-3.0beta/src/QProblemB.cpp.
returnValue QProblemB::determineHessianType | ( | ) | [protected] |
If Hessian type has been set by the user, nothing is done. Otherwise the Hessian type is set to HST_IDENTITY, HST_ZERO, or HST_POSDEF (default), respectively.
Definition at line 1302 of file external_packages/qpOASES-3.0beta/src/QProblemB.cpp.
returnValue QProblemB::determineStepDirection | ( | const real_t *const | delta_g, |
const real_t *const | delta_lb, | ||
const real_t *const | delta_ub, | ||
BooleanType | Delta_bB_isZero, | ||
real_t *const | delta_xFX, | ||
real_t *const | delta_xFR, | ||
real_t *const | delta_yFX | ||
) | [private] |
Determines step direction of the homotopy path.
delta_g | Step direction of gradient vector. |
delta_lb | Step direction of lower bounds. |
delta_ub | Step direction of upper bounds. |
Delta_bB_isZero | Indicates if active bounds are to be shifted. |
delta_xFX | Output: Primal homotopy step direction of fixed variables. |
delta_xFR | Output: Primal homotopy step direction of free variables. |
delta_yFX | Output: Dual homotopy step direction of fixed variables' multiplier. |
Definition at line 2958 of file external_packages/qpOASES-3.0beta/src/QProblemB.cpp.
returnValue QProblemB::getBounds | ( | Bounds *const | _bounds | ) | const [inline] |
returnValue QProblemB::getBounds | ( | Bounds *const | _bounds | ) | const [inline] |
returnValue QProblemB::getBounds | ( | Bounds & | _bounds | ) | const [inline] |
returnValue QProblemB::getDualSolution | ( | real_t *const | yOpt | ) | const |
Returns the dual solution vector.
yOpt | Output: Dual solution vector (if QP has been solved). |
Reimplemented in QProblem, QProblem, and QProblem.
Definition at line 563 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/SRC/QProblemB.cpp.
returnValue QProblemB::getDualSolution | ( | real_t *const | yOpt | ) | const |
virtual returnValue QProblemB::getDualSolution | ( | real_t *const | yOpt | ) | const [virtual] |
returnValue QProblemB::getG | ( | real_t *const | _g | ) | const [inline] |
Returns gradient vector of the QP (deep copy).
_g | Array of appropriate dimension for copying gradient vector. |
returnValue QProblemB::getG | ( | real_t *const | _g | ) | const [inline] |
Returns gradient vector of the QP (deep copy).
_g | Array of appropriate dimension for copying gradient vector. |
returnValue QProblemB::getH | ( | real_t *const | _H | ) | const [inline] |
Returns Hessian matrix of the QP (deep copy).
_H | Array of appropriate dimension for copying Hessian matrix. |
returnValue QProblemB::getH | ( | real_t *const | _H | ) | const [inline] |
Returns Hessian matrix of the QP (deep copy).
_H | Array of appropriate dimension for copying Hessian matrix. |
HessianType QProblemB::getHessianType | ( | ) | const [inline] |
Returns Hessian type flag (type is not determined due to this call!).
HessianType QProblemB::getHessianType | ( | ) | const [inline] |
Returns Hessian type flag (type is not determined due to this call!).
HessianType QProblemB::getHessianType | ( | ) | const [inline] |
Returns Hessian type flag (type is not determined due to this call!).
returnValue QProblemB::getLB | ( | real_t *const | _lb | ) | const [inline] |
Returns lower bound vector of the QP (deep copy).
_lb | Array of appropriate dimension for copying lower bound vector. |
returnValue QProblemB::getLB | ( | int | number, |
real_t & | value | ||
) | const [inline] |
Returns single entry of lower bound vector of the QP.
number | Number of entry to be returned. |
value | Output: lb[number]. |
returnValue QProblemB::getLB | ( | real_t *const | _lb | ) | const [inline] |
Returns lower bound vector of the QP (deep copy).
_lb | Array of appropriate dimension for copying lower bound vector. |
returnValue QProblemB::getLB | ( | int | number, |
real_t & | value | ||
) | const [inline] |
Returns single entry of lower bound vector of the QP.
number | Number of entry to be returned. |
value | Output: lb[number]. |
int QProblemB::getNFR | ( | ) | [inline] |
Returns the number of free variables.
int QProblemB::getNFR | ( | ) | [inline] |
Returns the number of free variables.
int QProblemB::getNFR | ( | ) | const [inline] |
Returns the number of free variables.
int QProblemB::getNFV | ( | ) | const [inline] |
Returns the number of implicitly fixed variables.
int QProblemB::getNFV | ( | ) | const [inline] |
Returns the number of implicitly fixed variables.
int QProblemB::getNFV | ( | ) | const [inline] |
Returns the number of implicitly fixed variables.
int QProblemB::getNFX | ( | ) | [inline] |
Returns the number of fixed variables.
int QProblemB::getNFX | ( | ) | [inline] |
Returns the number of fixed variables.
int QProblemB::getNFX | ( | ) | const [inline] |
Returns the number of fixed variables.
int QProblemB::getNV | ( | ) | const [inline] |
Returns the number of variables.
int QProblemB::getNV | ( | ) | const [inline] |
Returns the number of variables.
int QProblemB::getNV | ( | ) | const [inline] |
Returns the number of variables.
int QProblemB::getNZ | ( | ) |
Returns the dimension of null space.
Reimplemented in QProblem, and QProblem.
Definition at line 482 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/SRC/QProblemB.cpp.
int QProblemB::getNZ | ( | ) |
int QProblemB::getNZ | ( | ) | const [virtual] |
Returns the dimension of null space.
Reimplemented in QProblem.
Definition at line 828 of file external_packages/qpOASES-3.0beta/src/QProblemB.cpp.
real_t QProblemB::getObjVal | ( | ) | const |
Returns the optimal objective function value.
Definition at line 492 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/SRC/QProblemB.cpp.
real_t QProblemB::getObjVal | ( | const real_t *const | _x | ) | const |
Returns the objective function value at an arbitrary point x.
_x | Point at which the objective function shall be evaluated. |
Definition at line 516 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/SRC/QProblemB.cpp.
real_t QProblemB::getObjVal | ( | ) | const |
Returns the optimal objective function value.
real_t QProblemB::getObjVal | ( | const real_t *const | _x | ) | const |
Returns the objective function value at an arbitrary point x.
_x | Point at which the objective function shall be evaluated. |
real_t QProblemB::getObjVal | ( | ) | const |
Returns the optimal objective function value.
real_t QProblemB::getObjVal | ( | const real_t *const | _x | ) | const |
Returns the objective function value at an arbitrary point x.
_x | Point at which the objective function shall be evaluated. |
Options QProblemB::getOptions | ( | ) | const [inline] |
Returns current options struct.
returnValue QProblemB::getPrimalSolution | ( | real_t *const | xOpt | ) | const |
Returns the primal solution vector.
xOpt | Output: Primal solution vector (if QP has been solved). |
Definition at line 538 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/SRC/QProblemB.cpp.
returnValue QProblemB::getPrimalSolution | ( | real_t *const | xOpt | ) | const |
Returns the primal solution vector.
xOpt | Output: Primal solution vector (if QP has been solved). |
returnValue QProblemB::getPrimalSolution | ( | real_t *const | xOpt | ) | const |
Returns the primal solution vector.
xOpt | Output: Primal solution vector (if QP has been solved). |
PrintLevel QProblemB::getPrintLevel | ( | ) | const [inline] |
Returns the print level.
PrintLevel QProblemB::getPrintLevel | ( | ) | const [inline] |
Returns the print level.
PrintLevel QProblemB::getPrintLevel | ( | ) | const [inline] |
Returns the print level.
QProblemStatus QProblemB::getStatus | ( | ) | const [inline] |
Returns status of the solution process.
QProblemStatus QProblemB::getStatus | ( | ) | const [inline] |
Returns status of the solution process.
QProblemStatus QProblemB::getStatus | ( | ) | const [inline] |
Returns status of the solution process.
returnValue QProblemB::getUB | ( | real_t *const | _ub | ) | const [inline] |
Returns upper bound vector of the QP (deep copy).
_ub | Array of appropriate dimension for copying upper bound vector. |
returnValue QProblemB::getUB | ( | int | number, |
real_t & | value | ||
) | const [inline] |
Returns single entry of upper bound vector of the QP.
number | Number of entry to be returned. |
value | Output: ub[number]. |
returnValue QProblemB::getUB | ( | real_t *const | _ub | ) | const [inline] |
Returns upper bound vector of the QP (deep copy).
_ub | Array of appropriate dimension for copying upper bound vector. |
returnValue QProblemB::getUB | ( | int | number, |
real_t & | value | ||
) | const [inline] |
Returns single entry of upper bound vector of the QP.
number | Number of entry to be returned. |
value | Output: ub[number]. |
returnValue QProblemB::hotstart | ( | const real_t *const | g_new, |
const real_t *const | lb_new, | ||
const real_t *const | ub_new, | ||
int & | nWSR, | ||
real_t *const | cputime | ||
) |
Solves an initialised QProblemB using online active set strategy.
g_new | Gradient of neighbouring QP to be solved. |
lb_new | Lower bounds of neighbouring QP to be solved. If no lower bounds exist, a NULL pointer can be passed. |
ub_new | Upper bounds of neighbouring QP to be solved. If no upper bounds exist, a NULL pointer can be passed. |
nWSR | Input: Maximum number of working set recalculations; Output: Number of performed working set recalculations. |
cputime | Output: CPU time required to solve QP (or to perform nWSR iterations). |
Definition at line 285 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/SRC/QProblemB.cpp.
returnValue QProblemB::hotstart | ( | const real_t *const | g_new, |
const real_t *const | lb_new, | ||
const real_t *const | ub_new, | ||
int & | nWSR, | ||
real_t *const | cputime | ||
) |
Solves an initialised QProblemB using online active set strategy.
g_new | Gradient of neighbouring QP to be solved. |
lb_new | Lower bounds of neighbouring QP to be solved. If no lower bounds exist, a NULL pointer can be passed. |
ub_new | Upper bounds of neighbouring QP to be solved. If no upper bounds exist, a NULL pointer can be passed. |
nWSR | Input: Maximum number of working set recalculations; Output: Number of performed working set recalculations. |
cputime | Output: CPU time required to solve QP (or to perform nWSR iterations). |
returnValue QProblemB::hotstart | ( | const real_t *const | g_new, |
const real_t *const | lb_new, | ||
const real_t *const | ub_new, | ||
int & | nWSR, | ||
real_t *const | cputime | ||
) |
Solves an initialised QProblemB using online active set strategy. Note: This function internally calls solveQP/solveRegularisedQP for solving an initialised QP!
g_new | Gradient of neighbouring QP to be solved. |
lb_new | Lower bounds of neighbouring QP to be solved. If no lower bounds exist, a NULL pointer can be passed. |
ub_new | Upper bounds of neighbouring QP to be solved. If no upper bounds exist, a NULL pointer can be passed. |
nWSR | Input: Maximum number of working set recalculations; Output: Number of performed working set recalculations. |
cputime | Input: Maximum CPU time allowed for QP solution. Output: CPU time spend for QP solution (or to perform nWSR iterations). |
returnValue QProblemB::hotstart | ( | const char *const | g_file, |
const char *const | lb_file, | ||
const char *const | ub_file, | ||
int & | nWSR, | ||
real_t *const | cputime | ||
) |
Solves an initialised QProblemB online active set strategy reading QP data from files. Note: This function internally calls solveQP/solveRegularisedQP for solving an initialised QP!
g_file | Name of file where gradient, of neighbouring QP to be solved, is stored. |
lb_file | Name of file where lower bounds, of neighbouring QP to be solved, is stored. If no lower bounds exist, a NULL pointer can be passed. |
ub_file | Name of file where upper bounds, of neighbouring QP to be solved, is stored. If no upper bounds exist, a NULL pointer can be passed. |
nWSR | Input: Maximum number of working set recalculations; Output: Number of performed working set recalculations. |
cputime | Input: Maximum CPU time allowed for QP solution. Output: CPU time spend for QP solution (or to perform nWSR iterations). |
Definition at line 655 of file external_packages/qpOASES-3.0beta/src/QProblemB.cpp.
returnValue QProblemB::hotstart | ( | const real_t *const | g_new, |
const real_t *const | lb_new, | ||
const real_t *const | ub_new, | ||
int & | nWSR, | ||
real_t *const | cputime, | ||
const Bounds *const | guessedBounds | ||
) |
Solves an initialised QProblemB using online active set strategy (using an initialised homotopy). Note: This function internally calls solveQP/solveRegularisedQP for solving an initialised QP!
g_new | Gradient of neighbouring QP to be solved. |
lb_new | Lower bounds of neighbouring QP to be solved. If no lower bounds exist, a NULL pointer can be passed. |
ub_new | Upper bounds of neighbouring QP to be solved. If no upper bounds exist, a NULL pointer can be passed. |
nWSR | Input: Maximum number of working set recalculations; Output: Number of performed working set recalculations. |
cputime | Input: Maximum CPU time allowed for QP solution. Output: CPU time spend for QP solution (or to perform nWSR iterations). |
guessedBounds | Initial guess for working set of bounds. A null pointer corresponds to an empty working set! |
Definition at line 713 of file external_packages/qpOASES-3.0beta/src/QProblemB.cpp.
returnValue QProblemB::hotstart | ( | const char *const | g_file, |
const char *const | lb_file, | ||
const char *const | ub_file, | ||
int & | nWSR, | ||
real_t *const | cputime, | ||
const Bounds *const | guessedBounds | ||
) |
Solves an initialised QProblemB using online active set strategy (using an initialised homotopy) reading QP data from files. Note: This function internally calls solveQP/solveRegularisedQP for solving an initialised QP!
g_file | Name of file where gradient, of neighbouring QP to be solved, is stored. |
lb_file | Name of file where lower bounds, of neighbouring QP to be solved, is stored. If no lower bounds exist, a NULL pointer can be passed. |
ub_file | Name of file where upper bounds, of neighbouring QP to be solved, is stored. If no upper bounds exist, a NULL pointer can be passed. |
nWSR | Input: Maximum number of working set recalculations; Output: Number of performed working set recalculations. |
cputime | Input: Maximum CPU time allowed for QP solution. Output: CPU time spend for QP solution (or to perform nWSR iterations). |
guessedBounds | Initial guess for working set of bounds. A null pointer corresponds to an empty working set! |
Definition at line 767 of file external_packages/qpOASES-3.0beta/src/QProblemB.cpp.
returnValue QProblemB::hotstart_determineDataShift | ( | const int *const | FX_idx, |
const real_t *const | g_new, | ||
const real_t *const | lb_new, | ||
const real_t *const | ub_new, | ||
real_t *const | delta_g, | ||
real_t *const | delta_lb, | ||
real_t *const | delta_ub, | ||
BooleanType & | Delta_bB_isZero | ||
) | [protected] |
Determines step direction of the shift of the QP data.
FX_idx | Index array of fixed variables. |
g_new | New gradient vector. |
lb_new | New lower bounds. |
ub_new | New upper bounds. |
delta_g | Output: Step direction of gradient vector. |
delta_lb | Output: Step direction of lower bounds. |
delta_ub | Output: Step direction of upper bounds. |
Delta_bB_isZero | Output: Indicates if active bounds are to be shifted. |
Definition at line 1427 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/SRC/QProblemB.cpp.
returnValue QProblemB::hotstart_determineDataShift | ( | const int *const | FX_idx, |
const real_t *const | g_new, | ||
const real_t *const | lb_new, | ||
const real_t *const | ub_new, | ||
real_t *const | delta_g, | ||
real_t *const | delta_lb, | ||
real_t *const | delta_ub, | ||
BooleanType & | Delta_bB_isZero | ||
) | [protected] |
Determines step direction of the shift of the QP data.
FX_idx | Index array of fixed variables. |
g_new | New gradient vector. |
lb_new | New lower bounds. |
ub_new | New upper bounds. |
delta_g | Output: Step direction of gradient vector. |
delta_lb | Output: Step direction of lower bounds. |
delta_ub | Output: Step direction of upper bounds. |
Delta_bB_isZero | Output: Indicates if active bounds are to be shifted. |
returnValue QProblemB::hotstart_determineStepDirection | ( | const int *const | FR_idx, |
const int *const | FX_idx, | ||
const real_t *const | delta_g, | ||
const real_t *const | delta_lb, | ||
const real_t *const | delta_ub, | ||
BooleanType | Delta_bB_isZero, | ||
real_t *const | delta_xFX, | ||
real_t *const | delta_xFR, | ||
real_t *const | delta_yFX | ||
) | [private] |
Determines step direction of the homotopy path.
FR_idx | Index array of free variables. |
FX_idx | Index array of fixed variables. |
delta_g | Step direction of gradient vector. |
delta_lb | Step direction of lower bounds. |
delta_ub | Step direction of upper bounds. |
Delta_bB_isZero | Indicates if active bounds are to be shifted. |
delta_xFX | Output: Primal homotopy step direction of fixed variables. |
delta_xFR | Output: Primal homotopy step direction of free variables. |
delta_yFX | Output: Dual homotopy step direction of fixed variables' multiplier. |
Definition at line 1570 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/SRC/QProblemB.cpp.
returnValue QProblemB::hotstart_determineStepDirection | ( | const int *const | FR_idx, |
const int *const | FX_idx, | ||
const real_t *const | delta_g, | ||
const real_t *const | delta_lb, | ||
const real_t *const | delta_ub, | ||
BooleanType | Delta_bB_isZero, | ||
real_t *const | delta_xFX, | ||
real_t *const | delta_xFR, | ||
real_t *const | delta_yFX | ||
) | [private] |
Determines step direction of the homotopy path.
FR_idx | Index array of free variables. |
FX_idx | Index array of fixed variables. |
delta_g | Step direction of gradient vector. |
delta_lb | Step direction of lower bounds. |
delta_ub | Step direction of upper bounds. |
Delta_bB_isZero | Indicates if active bounds are to be shifted. |
delta_xFX | Output: Primal homotopy step direction of fixed variables. |
delta_xFR | Output: Primal homotopy step direction of free variables. |
delta_yFX | Output: Dual homotopy step direction of fixed variables' multiplier. |
returnValue QProblemB::hotstart_determineStepLength | ( | const int *const | FR_idx, |
const int *const | FX_idx, | ||
const real_t *const | delta_lb, | ||
const real_t *const | delta_ub, | ||
const real_t *const | delta_xFR, | ||
const real_t *const | delta_yFX, | ||
int & | BC_idx, | ||
SubjectToStatus & | BC_status | ||
) | [private] |
Determines the maximum possible step length along the homotopy path.
FR_idx | Index array of free variables. |
FX_idx | Index array of fixed variables. |
delta_lb | Step direction of lower bounds. |
delta_ub | Step direction of upper bounds. |
delta_xFR | Primal homotopy step direction of free variables. |
delta_yFX | Dual homotopy step direction of fixed variables' multiplier. |
BC_idx | Output: Index of blocking constraint. |
BC_status | Output: Status of blocking constraint. |
Definition at line 1686 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/SRC/QProblemB.cpp.
returnValue QProblemB::hotstart_determineStepLength | ( | const int *const | FR_idx, |
const int *const | FX_idx, | ||
const real_t *const | delta_lb, | ||
const real_t *const | delta_ub, | ||
const real_t *const | delta_xFR, | ||
const real_t *const | delta_yFX, | ||
int & | BC_idx, | ||
SubjectToStatus & | BC_status | ||
) | [private] |
Determines the maximum possible step length along the homotopy path.
FR_idx | Index array of free variables. |
FX_idx | Index array of fixed variables. |
delta_lb | Step direction of lower bounds. |
delta_ub | Step direction of upper bounds. |
delta_xFR | Primal homotopy step direction of free variables. |
delta_yFX | Dual homotopy step direction of fixed variables' multiplier. |
BC_idx | Output: Index of blocking constraint. |
BC_status | Output: Status of blocking constraint. |
returnValue QProblemB::hotstart_performStep | ( | const int *const | FR_idx, |
const int *const | FX_idx, | ||
const real_t *const | delta_g, | ||
const real_t *const | delta_lb, | ||
const real_t *const | delta_ub, | ||
const real_t *const | delta_xFX, | ||
const real_t *const | delta_xFR, | ||
const real_t *const | delta_yFX, | ||
int | BC_idx, | ||
SubjectToStatus | BC_status | ||
) | [private] |
Performs a step along the homotopy path (and updates active set).
FR_idx | Index array of free variables. |
FX_idx | Index array of fixed variables. |
delta_g | Step direction of gradient vector. |
delta_lb | Step direction of lower bounds. |
delta_ub | Step direction of upper bounds. |
delta_xFX | Primal homotopy step direction of fixed variables. |
delta_xFR | Primal homotopy step direction of free variables. |
delta_yFX | Dual homotopy step direction of fixed variables' multiplier. |
BC_idx | Index of blocking constraint. |
BC_status | Status of blocking constraint. |
Definition at line 1837 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/SRC/QProblemB.cpp.
returnValue QProblemB::hotstart_performStep | ( | const int *const | FR_idx, |
const int *const | FX_idx, | ||
const real_t *const | delta_g, | ||
const real_t *const | delta_lb, | ||
const real_t *const | delta_ub, | ||
const real_t *const | delta_xFX, | ||
const real_t *const | delta_xFR, | ||
const real_t *const | delta_yFX, | ||
int | BC_idx, | ||
SubjectToStatus | BC_status | ||
) | [private] |
Performs a step along the homotopy path (and updates active set).
FR_idx | Index array of free variables. |
FX_idx | Index array of fixed variables. |
delta_g | Step direction of gradient vector. |
delta_lb | Step direction of lower bounds. |
delta_ub | Step direction of upper bounds. |
delta_xFX | Primal homotopy step direction of fixed variables. |
delta_xFR | Primal homotopy step direction of free variables. |
delta_yFX | Dual homotopy step direction of fixed variables' multiplier. |
BC_idx | Index of blocking constraint. |
BC_status | Status of blocking constraint. |
returnValue QProblemB::init | ( | const real_t *const | _H, |
const real_t *const | _g, | ||
const real_t *const | _lb, | ||
const real_t *const | _ub, | ||
int & | nWSR, | ||
const real_t *const | yOpt = 0 , |
||
real_t *const | cputime = 0 |
||
) |
Initialises a QProblemB with given QP data and solves it using an initial homotopy with empty working set (at most nWSR iterations).
_H | Hessian matrix. |
_g | Gradient vector. |
_lb | Lower bounds (on variables). If no lower bounds exist, a NULL pointer can be passed. |
_ub | Upper bounds (on variables). If no upper bounds exist, a NULL pointer can be passed. |
nWSR | Input: Maximum number of working set recalculations when using initial homotopy. Output: Number of performed working set recalculations. |
yOpt | Initial guess for dual solution vector. |
cputime | Output: CPU time required to initialise QP. |
Definition at line 268 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/SRC/QProblemB.cpp.
returnValue QProblemB::init | ( | const real_t *const | _H, |
const real_t *const | _g, | ||
const real_t *const | _lb, | ||
const real_t *const | _ub, | ||
int & | nWSR, | ||
const real_t *const | yOpt = 0 , |
||
real_t *const | cputime = 0 |
||
) |
Initialises a QProblemB with given QP data and solves it using an initial homotopy with empty working set (at most nWSR iterations).
_H | Hessian matrix. |
_g | Gradient vector. |
_lb | Lower bounds (on variables). If no lower bounds exist, a NULL pointer can be passed. |
_ub | Upper bounds (on variables). If no upper bounds exist, a NULL pointer can be passed. |
nWSR | Input: Maximum number of working set recalculations when using initial homotopy. Output: Number of performed working set recalculations. |
yOpt | Initial guess for dual solution vector. |
cputime | Output: CPU time required to initialise QP. |
returnValue QProblemB::init | ( | SymmetricMatrix * | _H, |
const real_t *const | _g, | ||
const real_t *const | _lb, | ||
const real_t *const | _ub, | ||
int & | nWSR, | ||
real_t *const | cputime | ||
) |
Initialises a QProblemB with given QP data and solves it using an initial homotopy with empty working set (at most nWSR iterations). Note: This function internally calls solveInitialQP for initialisation!
_H | Hessian matrix. |
_g | Gradient vector. |
_lb | Lower bounds (on variables). If no lower bounds exist, a NULL pointer can be passed. |
_ub | Upper bounds (on variables). If no upper bounds exist, a NULL pointer can be passed. |
nWSR | Input: Maximum number of working set recalculations when using initial homotopy. Output: Number of performed working set recalculations. |
cputime | Input: Maximum CPU time allowed for QP initialisation. Output: CPU time spend for QP initialisation. |
Definition at line 228 of file external_packages/qpOASES-3.0beta/src/QProblemB.cpp.
returnValue QProblemB::init | ( | const real_t *const | _H, |
const real_t *const | _R, | ||
const real_t *const | _g, | ||
const real_t *const | _lb, | ||
const real_t *const | _ub, | ||
int & | nWSR, | ||
const real_t *const | yOpt = 0 , |
||
real_t *const | cputime = 0 |
||
) |
Initialises a QProblemB with given QP data and solves it using an initial homotopy with empty working set (at most nWSR iterations).
_H | Hessian matrix. |
_R | Cholesky factorization of the Hessian matrix. |
_g | Gradient vector. |
_lb | Lower bounds (on variables). If no lower bounds exist, a NULL pointer can be passed. |
_ub | Upper bounds (on variables). If no upper bounds exist, a NULL pointer can be passed. |
nWSR | Input: Maximum number of working set recalculations when using initial homotopy. Output: Number of performed working set recalculations. |
yOpt | Initial guess for dual solution vector. |
cputime | Output: CPU time required to initialise QP. |
Definition at line 298 of file external_packages/qpoases/SRC/QProblemB.cpp.
returnValue QProblemB::init | ( | const real_t *const | _H, |
const real_t *const | _g, | ||
const real_t *const | _lb, | ||
const real_t *const | _ub, | ||
int & | nWSR, | ||
real_t *const | cputime | ||
) |
Initialises a QProblemB with given QP data and solves it using an initial homotopy with empty working set (at most nWSR iterations). Note: This function internally calls solveInitialQP for initialisation!
_H | Hessian matrix. If Hessian matrix is trivial, a NULL pointer can be passed. |
_g | Gradient vector. |
_lb | Lower bounds (on variables). If no lower bounds exist, a NULL pointer can be passed. |
_ub | Upper bounds (on variables). If no upper bounds exist, a NULL pointer can be passed. |
nWSR | Input: Maximum number of working set recalculations when using initial homotopy. Output: Number of performed working set recalculations. |
cputime | Input: Maximum CPU time allowed for QP initialisation. Output: CPU time spend for QP initialisation. |
Definition at line 255 of file external_packages/qpOASES-3.0beta/src/QProblemB.cpp.
returnValue QProblemB::init | ( | const char *const | H_file, |
const char *const | g_file, | ||
const char *const | lb_file, | ||
const char *const | ub_file, | ||
int & | nWSR, | ||
real_t *const | cputime | ||
) |
Initialises a QProblemB with given QP data to be read from files and solves it using an initial homotopy with empty working set (at most nWSR iterations). Note: This function internally calls solveInitialQP for initialisation!
H_file | Name of file where Hessian matrix is stored. If Hessian matrix is trivial, a NULL pointer can be passed. |
g_file | Name of file where gradient vector is stored. |
lb_file | Name of file where lower bound vector. If no lower bounds exist, a NULL pointer can be passed. |
ub_file | Name of file where upper bound vector. If no upper bounds exist, a NULL pointer can be passed. |
nWSR | Input: Maximum number of working set recalculations when using initial homotopy. Output: Number of performed working set recalculations. |
cputime | Input: Maximum CPU time allowed for QP initialisation. Output: CPU time spend for QP initialisation. |
Definition at line 282 of file external_packages/qpOASES-3.0beta/src/QProblemB.cpp.
returnValue QProblemB::init | ( | SymmetricMatrix * | _H, |
const real_t *const | _g, | ||
const real_t *const | _lb, | ||
const real_t *const | _ub, | ||
int & | nWSR, | ||
real_t *const | cputime, | ||
const real_t *const | xOpt, | ||
const real_t *const | yOpt, | ||
const Bounds *const | guessedBounds | ||
) |
Initialises a QProblemB with given QP data and solves it depending on the parameter constellation:
1. 0, 0, 0 : start with xOpt = 0, yOpt = 0 and IB empty (or all implicit equality bounds),
2. xOpt, 0, 0 : start with xOpt, yOpt = 0 and obtain IB by "clipping",
3. 0, yOpt, 0 : start with xOpt = 0, yOpt and obtain IB from yOpt != 0,
4. 0, 0, IB: start with xOpt = 0, yOpt = 0 and IB,
5. xOpt, yOpt, 0 : start with xOpt, yOpt and obtain IB from yOpt != 0,
6. xOpt, 0, IB: start with xOpt, yOpt = 0 and IB,
7. xOpt, yOpt, IB: start with xOpt, yOpt and IB (assume them to be consistent!) Note: This function internally calls solveInitialQP for initialisation!
_H | Hessian matrix. |
_g | Gradient vector. |
_lb | Lower bounds (on variables). If no lower bounds exist, a NULL pointer can be passed. |
_ub | Upper bounds (on variables). If no upper bounds exist, a NULL pointer can be passed. |
nWSR | Input: Maximum number of working set recalculations when using initial homotopy. Output: Number of performed working set recalculations. |
cputime | Input: Maximum CPU time allowed for QP initialisation. Output: CPU time spend for QP initialisation. |
xOpt | Optimal primal solution vector. A NULL pointer can be passed. |
yOpt | Optimal dual solution vector. A NULL pointer can be passed. |
guessedBounds | Optimal working set for solution (xOpt,yOpt). A NULL pointer can be passed. |
Definition at line 309 of file external_packages/qpOASES-3.0beta/src/QProblemB.cpp.
returnValue QProblemB::init | ( | const real_t *const | _H, |
const real_t *const | _g, | ||
const real_t *const | _lb, | ||
const real_t *const | _ub, | ||
int & | nWSR, | ||
real_t *const | cputime, | ||
const real_t *const | xOpt, | ||
const real_t *const | yOpt, | ||
const Bounds *const | guessedBounds | ||
) |
Initialises a QProblemB with given QP data and solves it depending on the parameter constellation:
1. 0, 0, 0 : start with xOpt = 0, yOpt = 0 and IB empty (or all implicit equality bounds),
2. xOpt, 0, 0 : start with xOpt, yOpt = 0 and obtain IB by "clipping",
3. 0, yOpt, 0 : start with xOpt = 0, yOpt and obtain IB from yOpt != 0,
4. 0, 0, IB: start with xOpt = 0, yOpt = 0 and IB,
5. xOpt, yOpt, 0 : start with xOpt, yOpt and obtain IB from yOpt != 0,
6. xOpt, 0, IB: start with xOpt, yOpt = 0 and IB,
7. xOpt, yOpt, IB: start with xOpt, yOpt and IB (assume them to be consistent!) Note: This function internally calls solveInitialQP for initialisation!
_H | Hessian matrix. If Hessian matrix is trivial, a NULL pointer can be passed. |
_g | Gradient vector. |
_lb | Lower bounds (on variables). If no lower bounds exist, a NULL pointer can be passed. |
_ub | Upper bounds (on variables). If no upper bounds exist, a NULL pointer can be passed. |
nWSR | Input: Maximum number of working set recalculations when using initial homotopy. Output: Number of performed working set recalculations. |
cputime | Input: Maximum CPU time allowed for QP initialisation. Output: CPU time spend for QP initialisation. |
xOpt | Optimal primal solution vector. A NULL pointer can be passed. |
yOpt | Optimal dual solution vector. A NULL pointer can be passed. |
guessedBounds | Optimal working set for solution (xOpt,yOpt). A NULL pointer can be passed. |
Definition at line 354 of file external_packages/qpOASES-3.0beta/src/QProblemB.cpp.
returnValue QProblemB::init | ( | const char *const | H_file, |
const char *const | g_file, | ||
const char *const | lb_file, | ||
const char *const | ub_file, | ||
int & | nWSR, | ||
real_t *const | cputime, | ||
const real_t *const | xOpt, | ||
const real_t *const | yOpt, | ||
const Bounds *const | guessedBounds | ||
) |
Initialises a QProblemB with given QP data to be read from files and solves it depending on the parameter constellation:
1. 0, 0, 0 : start with xOpt = 0, yOpt = 0 and IB empty (or all implicit equality bounds),
2. xOpt, 0, 0 : start with xOpt, yOpt = 0 and obtain IB by "clipping",
3. 0, yOpt, 0 : start with xOpt = 0, yOpt and obtain IB from yOpt != 0,
4. 0, 0, IB: start with xOpt = 0, yOpt = 0 and IB,
5. xOpt, yOpt, 0 : start with xOpt, yOpt and obtain IB from yOpt != 0,
6. xOpt, 0, IB: start with xOpt, yOpt = 0 and IB,
7. xOpt, yOpt, IB: start with xOpt, yOpt and IB (assume them to be consistent!) Note: This function internally calls solveInitialQP for initialisation!
H_file | Name of file where Hessian matrix is stored. If Hessian matrix is trivial, a NULL pointer can be passed. |
g_file | Name of file where gradient vector is stored. |
lb_file | Name of file where lower bound vector. If no lower bounds exist, a NULL pointer can be passed. |
ub_file | Name of file where upper bound vector. If no upper bounds exist, a NULL pointer can be passed. |
nWSR | Input: Maximum number of working set recalculations when using initial homotopy. Output: Number of performed working set recalculations. |
cputime | Input: Maximum CPU time allowed for QP initialisation. Output: CPU time spend for QP initialisation. |
xOpt | Optimal primal solution vector. A NULL pointer can be passed. |
yOpt | Optimal dual solution vector. A NULL pointer can be passed. |
guessedBounds | Optimal working set for solution (xOpt,yOpt). A NULL pointer can be passed. |
Definition at line 399 of file external_packages/qpOASES-3.0beta/src/QProblemB.cpp.
BooleanType QProblemB::isBlocking | ( | real_t | num, |
real_t | den, | ||
real_t | epsNum, | ||
real_t | epsDen, | ||
real_t & | t | ||
) | const [inline, protected] |
Checks whether given ratio is blocking, i.e. limits the maximum step length along the homotopy path to a value lower than given one.
num | Numerator for performing the ratio test. |
den | Denominator for performing the ratio test. |
epsNum | Numerator tolerance. |
epsDen | Denominator tolerance. |
t | Input: Current maximum step length along the homotopy path, Output: Updated maximum possible step length along the homotopy path. |
BooleanType QProblemB::isCPUtimeLimitExceeded | ( | const real_t *const | cputime, |
real_t | starttime, | ||
int | nWSR | ||
) | const [protected] |
Determines if next QP iteration can be performed within given CPU time limit.
cputime | Maximum CPU time allowed for QP solution. |
starttime | Start time of current QP solution. |
nWSR | Number of working set recalculations performed so far. |
Definition at line 2021 of file external_packages/qpOASES-3.0beta/src/QProblemB.cpp.
BooleanType QProblemB::isInfeasible | ( | ) | const [inline] |
Returns if the QP is infeasible.
BooleanType QProblemB::isInfeasible | ( | ) | const [inline] |
Returns if the QP is infeasible.
BooleanType QProblemB::isInfeasible | ( | ) | const [inline] |
Returns if the QP is infeasible.
BooleanType QProblemB::isInitialised | ( | ) | const [inline] |
BooleanType QProblemB::isInitialised | ( | ) | const [inline] |
BooleanType QProblemB::isInitialised | ( | ) | const [inline] |
BooleanType QProblemB::isSolved | ( | ) | const [inline] |
BooleanType QProblemB::isSolved | ( | ) | const [inline] |
BooleanType QProblemB::isSolved | ( | ) | const [inline] |
BooleanType QProblemB::isUnbounded | ( | ) | const [inline] |
Returns if the QP is unbounded.
BooleanType QProblemB::isUnbounded | ( | ) | const [inline] |
Returns if the QP is unbounded.
BooleanType QProblemB::isUnbounded | ( | ) | const [inline] |
Returns if the QP is unbounded.
returnValue QProblemB::loadQPvectorsFromFile | ( | const char *const | g_file, |
const char *const | lb_file, | ||
const char *const | ub_file, | ||
real_t *const | g_new, | ||
real_t *const | lb_new, | ||
real_t *const | ub_new | ||
) | const [protected] |
Loads new QP vectors from files (internal members are not affected!).
g_file | Name of file where gradient, of neighbouring QP to be solved, is stored. |
lb_file | Name of file where lower bounds, of neighbouring QP to be solved, is stored. If no lower bounds exist, a NULL pointer can be passed. |
ub_file | Name of file where upper bounds, of neighbouring QP to be solved, is stored. If no upper bounds exist, a NULL pointer can be passed. |
g_new | Output: Gradient of neighbouring QP to be solved. |
lb_new | Output: Lower bounds of neighbouring QP to be solved |
ub_new | Output: Upper bounds of neighbouring QP to be solved |
Definition at line 1945 of file external_packages/qpOASES-3.0beta/src/QProblemB.cpp.
returnValue QProblemB::obtainAuxiliaryWorkingSet | ( | const real_t *const | xOpt, |
const real_t *const | yOpt, | ||
const Bounds *const | guessedBounds, | ||
Bounds * | auxiliaryBounds | ||
) | const [protected] |
Obtains the desired working set for the auxiliary initial QP in accordance with the user specifications
xOpt | Optimal primal solution vector. If a NULL pointer is passed, all entries are assumed to be zero. |
yOpt | Optimal dual solution vector. If a NULL pointer is passed, all entries are assumed to be zero. |
guessedBounds | Guessed working set for solution (xOpt,yOpt). |
auxiliaryBounds | Input: Allocated bound object. Ouput: Working set for auxiliary QP. |
Definition at line 900 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/SRC/QProblemB.cpp.
returnValue QProblemB::obtainAuxiliaryWorkingSet | ( | const real_t *const | xOpt, |
const real_t *const | yOpt, | ||
const Bounds *const | guessedBounds, | ||
Bounds * | auxiliaryBounds | ||
) | const [protected] |
Obtains the desired working set for the auxiliary initial QP in accordance with the user specifications
xOpt | Optimal primal solution vector. If a NULL pointer is passed, all entries are assumed to be zero. |
yOpt | Optimal dual solution vector. If a NULL pointer is passed, all entries are assumed to be zero. |
guessedBounds | Guessed working set for solution (xOpt,yOpt). |
auxiliaryBounds | Input: Allocated bound object. Ouput: Working set for auxiliary QP. |
returnValue QProblemB::obtainAuxiliaryWorkingSet | ( | const real_t *const | xOpt, |
const real_t *const | yOpt, | ||
const Bounds *const | guessedBounds, | ||
Bounds * | auxiliaryBounds | ||
) | const [protected] |
Obtains the desired working set for the auxiliary initial QP in accordance with the user specifications
xOpt | Optimal primal solution vector. If a NULL pointer is passed, all entries are assumed to be zero. |
yOpt | Optimal dual solution vector. If a NULL pointer is passed, all entries are assumed to be zero. |
guessedBounds | Guessed working set for solution (xOpt,yOpt). |
auxiliaryBounds | Input: Allocated bound object. Ouput: Working set for auxiliary QP. |
Assignment operator (deep copy).
rhs | Rhs object. |
Assignment operator (deep copy).
rhs | Rhs object. |
Definition at line 183 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/SRC/QProblemB.cpp.
Assignment operator (deep copy).
rhs | Rhs object. |
returnValue QProblemB::performDriftCorrection | ( | ) | [private] |
Drift correction at end of each active set iteration
Reimplemented in QProblem.
Definition at line 3319 of file external_packages/qpOASES-3.0beta/src/QProblemB.cpp.
returnValue QProblemB::performRamping | ( | ) | [protected, virtual] |
Ramping Strategy to avoid ties. Modifies homotopy start without changing current active set.
Reimplemented in QProblem.
Definition at line 2168 of file external_packages/qpOASES-3.0beta/src/QProblemB.cpp.
returnValue QProblemB::performRatioTest | ( | int | nIdx, |
const int *const | idxList, | ||
const SubjectTo *const | subjectTo, | ||
const real_t *const | num, | ||
const real_t *const | den, | ||
real_t | epsNum, | ||
real_t | epsDen, | ||
real_t & | t, | ||
int & | BC_idx | ||
) | const [protected] |
Performs robustified ratio test yield the maximum possible step length along the homotopy path.
nIdx | Number of ratios to be checked. |
idxList | Array containing the indices of all ratios to be checked. |
subjectTo | Bound/Constraint object corresponding to ratios to be checked. |
num | Array containing all numerators for performing the ratio test. |
den | Array containing all denominators for performing the ratio test. |
epsNum | Numerator tolerance. |
epsDen | Denominator tolerance. |
t | Output: Maximum possible step length along the homotopy path. |
BC_idx | Output: Index of blocking constraint. |
Definition at line 2081 of file external_packages/qpOASES-3.0beta/src/QProblemB.cpp.
returnValue QProblemB::performStep | ( | const real_t *const | delta_g, |
const real_t *const | delta_lb, | ||
const real_t *const | delta_ub, | ||
const real_t *const | delta_xFX, | ||
const real_t *const | delta_xFR, | ||
const real_t *const | delta_yFX, | ||
int & | BC_idx, | ||
SubjectToStatus & | BC_status | ||
) | [private] |
Determines the maximum possible step length along the homotopy path and performs this step (without changing working set).
delta_g | Step direction of gradient. |
delta_lb | Step direction of lower bounds. |
delta_ub | Step direction of upper bounds. |
delta_xFX | Primal homotopy step direction of fixed variables. |
delta_xFR | Primal homotopy step direction of free variables. |
delta_yFX | Dual homotopy step direction of fixed variables' multiplier. |
BC_idx | Output: Index of blocking constraint. |
BC_status | Output: Status of blocking constraint. |
Definition at line 3125 of file external_packages/qpOASES-3.0beta/src/QProblemB.cpp.
returnValue QProblemB::printIteration | ( | int | iteration, |
int | BC_idx, | ||
SubjectToStatus | BC_status | ||
) | [private] |
Prints concise information on the current iteration.
iteration | Number of current iteration. |
BC_idx | Index of blocking bound. |
BC_status | Status of blocking bound. |
Definition at line 3588 of file external_packages/qpOASES-3.0beta/src/QProblemB.cpp.
returnValue QProblemB::printOptions | ( | ) | const |
Prints a list of all options and their current values.
Definition at line 1138 of file external_packages/qpOASES-3.0beta/src/QProblemB.cpp.
returnValue QProblemB::printProperties | ( | ) | [virtual] |
Prints concise list of properties of the current QP.
Reimplemented in QProblem.
Definition at line 1013 of file external_packages/qpOASES-3.0beta/src/QProblemB.cpp.
returnValue QProblemB::regulariseHessian | ( | ) | [protected] |
Regularise Hessian matrix by adding a scaled identity matrix to it.
Definition at line 2049 of file external_packages/qpOASES-3.0beta/src/QProblemB.cpp.
real_t QProblemB::relativeHomotopyLength | ( | const real_t *const | g_new, |
const real_t *const | lb_new, | ||
const real_t *const | ub_new | ||
) | [protected] |
Compute relative length of homotopy in data space for termination criterion.
g_new | Final gradient. |
lb_new | Final lower variable bounds. |
ub_new | Final upper variable bounds. |
Definition at line 2129 of file external_packages/qpOASES-3.0beta/src/QProblemB.cpp.
returnValue QProblemB::removeBound | ( | int | number, |
BooleanType | updateCholesky | ||
) | [protected] |
Removes a bounds from active set (specialised version for the case where no constraints exist).
number | Number of bound to be removed from active set. |
updateCholesky | Flag indicating if Cholesky decomposition shall be updated. |
Reimplemented in QProblem, and QProblem.
Definition at line 1287 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/SRC/QProblemB.cpp.
returnValue QProblemB::removeBound | ( | int | number, |
BooleanType | updateCholesky | ||
) | [protected] |
Removes a bounds from active set (specialised version for the case where no constraints exist).
number | Number of bound to be removed from active set. |
updateCholesky | Flag indicating if Cholesky decomposition shall be updated. |
returnValue QProblemB::removeBound | ( | int | number, |
BooleanType | updateCholesky | ||
) | [private] |
Removes a bounds from active set (specialised version for the case where no constraints exist).
number | Number of bound to be removed from active set. |
updateCholesky | Flag indicating if Cholesky decomposition shall be updated. |
virtual returnValue QProblemB::reset | ( | ) | [virtual] |
returnValue QProblemB::setG | ( | const real_t *const | g_new | ) | [inline, protected] |
Changes gradient vector of the QP.
g_new | New gradient vector (with correct dimension!). |
returnValue QProblemB::setG | ( | const real_t *const | g_new | ) | [inline, protected] |
Changes gradient vector of the QP.
g_new | New gradient vector (with correct dimension!). |
returnValue QProblemB::setG | ( | const real_t *const | g_new | ) | [inline, protected] |
Changes gradient vector of the QP.
g_new | New gradient vector (with correct dimension!). |
returnValue QProblemB::setH | ( | const real_t *const | H_new | ) | [inline, protected] |
Sets Hessian matrix of the QP.
H_new | New Hessian matrix (with correct dimension!). |
returnValue QProblemB::setH | ( | const real_t *const | H_new | ) | [inline, protected] |
Sets Hessian matrix of the QP.
H_new | New Hessian matrix (with correct dimension!). |
returnValue QProblemB::setH | ( | SymmetricMatrix * | H_new | ) | [inline, protected] |
Sets Hessian matrix of the QP.
H_new | New Hessian matrix. |
returnValue QProblemB::setH | ( | const real_t *const | H_new | ) | [inline, protected] |
Sets dense Hessian matrix of the QP. If a null pointer is passed and a) hessianType is HST_IDENTITY, nothing is done, b) hessianType is not HST_IDENTITY, Hessian matrix is set to zero.
H_new | New dense Hessian matrix (with correct dimension!). |
returnValue QProblemB::setHessianType | ( | HessianType | _hessianType | ) | [inline] |
Changes the print level.
_hessianType | New Hessian type. |
returnValue QProblemB::setHessianType | ( | HessianType | _hessianType | ) | [inline] |
Changes the print level.
_hessianType | New Hessian type. |
returnValue QProblemB::setHessianType | ( | HessianType | _hessianType | ) | [inline] |
Changes the print level.
_hessianType | New Hessian type. |
returnValue QProblemB::setInfeasibilityFlag | ( | returnValue | returnvalue | ) | [protected] |
Sets internal infeasibility flag and throws given error in case the far bound strategy is not enabled (as QP might actually not be infeasible in this case).
Definition at line 2006 of file external_packages/qpOASES-3.0beta/src/QProblemB.cpp.
returnValue QProblemB::setLB | ( | const real_t *const | lb_new | ) | [inline, protected] |
Changes lower bound vector of the QP.
lb_new | New lower bound vector (with correct dimension!). |
returnValue QProblemB::setLB | ( | int | number, |
real_t | value | ||
) | [inline, protected] |
Changes single entry of lower bound vector of the QP.
number | Number of entry to be changed. |
value | New value for entry of lower bound vector. |
returnValue QProblemB::setLB | ( | const real_t *const | lb_new | ) | [inline, protected] |
Changes lower bound vector of the QP.
lb_new | New lower bound vector (with correct dimension!). |
returnValue QProblemB::setLB | ( | int | number, |
real_t | value | ||
) | [inline, protected] |
Changes single entry of lower bound vector of the QP.
number | Number of entry to be changed. |
value | New value for entry of lower bound vector. |
returnValue QProblemB::setLB | ( | const real_t *const | lb_new | ) | [inline, protected] |
Changes lower bound vector of the QP.
lb_new | New lower bound vector (with correct dimension!). |
returnValue QProblemB::setLB | ( | int | number, |
real_t | value | ||
) | [inline, protected] |
Changes single entry of lower bound vector of the QP.
number | Number of entry to be changed. |
value | New value for entry of lower bound vector. |
returnValue QProblemB::setOptions | ( | const Options & | _options | ) | [inline] |
Overrides current options with given ones.
_options | New options. |
returnValue QProblemB::setPrintLevel | ( | PrintLevel | _printlevel | ) |
Changes the print level.
_printlevel | New print level. |
Definition at line 588 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/SRC/QProblemB.cpp.
returnValue QProblemB::setPrintLevel | ( | PrintLevel | _printlevel | ) |
Changes the print level.
_printlevel | New print level. |
returnValue QProblemB::setPrintLevel | ( | PrintLevel | _printlevel | ) |
Changes the print level.
_printlevel | New print level. |
returnValue QProblemB::setUB | ( | const real_t *const | ub_new | ) | [inline, protected] |
Changes upper bound vector of the QP.
ub_new | New upper bound vector (with correct dimension!). |
returnValue QProblemB::setUB | ( | int | number, |
real_t | value | ||
) | [inline, protected] |
Changes single entry of upper bound vector of the QP.
number | Number of entry to be changed. |
value | New value for entry of upper bound vector. |
returnValue QProblemB::setUB | ( | const real_t *const | ub_new | ) | [inline, protected] |
Changes upper bound vector of the QP.
ub_new | New upper bound vector (with correct dimension!). |
returnValue QProblemB::setUB | ( | int | number, |
real_t | value | ||
) | [inline, protected] |
Changes single entry of upper bound vector of the QP.
number | Number of entry to be changed. |
value | New value for entry of upper bound vector. |
returnValue QProblemB::setUB | ( | const real_t *const | ub_new | ) | [inline, protected] |
Changes upper bound vector of the QP.
ub_new | New upper bound vector (with correct dimension!). |
returnValue QProblemB::setUB | ( | int | number, |
real_t | value | ||
) | [inline, protected] |
Changes single entry of upper bound vector of the QP.
number | Number of entry to be changed. |
value | New value for entry of upper bound vector. |
returnValue QProblemB::setupAuxiliaryQP | ( | const Bounds *const | guessedBounds | ) | [private] |
Updates QP vectors, working sets and internal data structures in order to start from an optimal solution corresponding to initial guesses of the working set for bounds
guessedBounds | Initial guess for working set of bounds. |
Definition at line 2896 of file external_packages/qpOASES-3.0beta/src/QProblemB.cpp.
returnValue QProblemB::setupAuxiliaryQPbounds | ( | BooleanType | useRelaxation | ) | [protected] |
Setups bounds of the auxiliary initial QP for given optimal primal/dual solution and given initial working set (assumes that members X, Y and BOUNDS have already been initialised!).
useRelaxation | Flag indicating if inactive bounds shall be relaxed. |
Definition at line 1161 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/SRC/QProblemB.cpp.
returnValue QProblemB::setupAuxiliaryQPbounds | ( | BooleanType | useRelaxation | ) | [protected] |
Setups bounds of the auxiliary initial QP for given optimal primal/dual solution and given initial working set (assumes that members X, Y and BOUNDS have already been initialised!).
useRelaxation | Flag indicating if inactive bounds shall be relaxed. |
returnValue QProblemB::setupAuxiliaryQPbounds | ( | BooleanType | useRelaxation | ) | [private] |
Setups bounds of the auxiliary initial QP for given optimal primal/dual solution and given initial working set (assumes that members X, Y and BOUNDS have already been initialised!).
useRelaxation | Flag indicating if inactive bounds shall be relaxed. |
returnValue QProblemB::setupAuxiliaryQPgradient | ( | ) | [protected] |
Setups gradient of the auxiliary initial QP for given optimal primal/dual solution and given initial working set (assumes that members X, Y and BOUNDS have already been initialised!).
Reimplemented in QProblem, QProblem, and QProblem.
Definition at line 1137 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/SRC/QProblemB.cpp.
returnValue QProblemB::setupAuxiliaryQPgradient | ( | ) | [protected] |
returnValue QProblemB::setupAuxiliaryQPgradient | ( | ) | [private] |
returnValue QProblemB::setupAuxiliaryQPsolution | ( | const real_t *const | xOpt, |
const real_t *const | yOpt | ||
) | [protected] |
Setups the optimal primal/dual solution of the auxiliary initial QP.
xOpt | Optimal primal solution vector. If a NULL pointer is passed, all entries are set to zero. |
yOpt | Optimal dual solution vector. If a NULL pointer is passed, all entries are set to zero. |
Reimplemented in QProblem, QProblem, and QProblem.
Definition at line 1096 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/SRC/QProblemB.cpp.
returnValue QProblemB::setupAuxiliaryQPsolution | ( | const real_t *const | xOpt, |
const real_t *const | yOpt | ||
) | [protected] |
Setups the optimal primal/dual solution of the auxiliary initial QP.
xOpt | Optimal primal solution vector. If a NULL pointer is passed, all entries are set to zero. |
yOpt | Optimal dual solution vector. If a NULL pointer is passed, all entries are set to zero. |
returnValue QProblemB::setupAuxiliaryQPsolution | ( | const real_t *const | xOpt, |
const real_t *const | yOpt | ||
) | [private] |
Setups the optimal primal/dual solution of the auxiliary initial QP.
xOpt | Optimal primal solution vector. If a NULL pointer is passed, all entries are set to zero. |
yOpt | Optimal dual solution vector. If a NULL pointer is passed, all entries are set to zero. |
returnValue QProblemB::setupAuxiliaryWorkingSet | ( | const Bounds *const | auxiliaryBounds, |
BooleanType | setupAfresh | ||
) | [protected] |
Setups bound data structure according to auxiliaryBounds. (If the working set shall be setup afresh, make sure that bounds data structure has been resetted!)
auxiliaryBounds | Working set for auxiliary QP. |
setupAfresh | Flag indicating if given working set shall be setup afresh or by updating the current one. |
Definition at line 1029 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/SRC/QProblemB.cpp.
returnValue QProblemB::setupAuxiliaryWorkingSet | ( | const Bounds *const | auxiliaryBounds, |
BooleanType | setupAfresh | ||
) | [protected] |
Setups bound data structure according to auxiliaryBounds. (If the working set shall be setup afresh, make sure that bounds data structure has been resetted!)
auxiliaryBounds | Working set for auxiliary QP. |
setupAfresh | Flag indicating if given working set shall be setup afresh or by updating the current one. |
returnValue QProblemB::setupAuxiliaryWorkingSet | ( | const Bounds *const | auxiliaryBounds, |
BooleanType | setupAfresh | ||
) | [private] |
Setups bound data structure according to auxiliaryBounds. (If the working set shall be setup afresh, make sure that bounds data structure has been resetted!)
auxiliaryBounds | Working set for auxiliary QP. |
setupAfresh | Flag indicating if given working set shall be setup afresh or by updating the current one. |
returnValue QProblemB::setupCholeskyDecomposition | ( | ) | [protected] |
Computes the Cholesky decomposition R of the (simply projected) Hessian (i.e. R^T*R = Z^T*H*Z). It only works in the case where Z is a simple projection matrix!
Definition at line 723 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/SRC/QProblemB.cpp.
returnValue QProblemB::setupCholeskyDecomposition | ( | ) | [protected] |
Computes the Cholesky decomposition R of the (simply projected) Hessian (i.e. R^T*R = Z^T*H*Z). It only works in the case where Z is a simple projection matrix!
returnValue QProblemB::setupCholeskyDecomposition | ( | ) | [protected] |
Computes the Cholesky decomposition of the (simply projected) Hessian (i.e. R^T*R = Z^T*H*Z). It only works in the case where Z is a simple projection matrix! Note: If Hessian turns out not to be positive definite, the Hessian type is set to HST_SEMIDEF accordingly.
returnValue QProblemB::setupQPdata | ( | const real_t *const | _H, |
const real_t *const | _g, | ||
const real_t *const | _lb, | ||
const real_t *const | _ub | ||
) | [protected] |
Setups internal QP data.
_H | Hessian matrix. |
_g | Gradient vector. |
_lb | Lower bounds (on variables). If no lower bounds exist, a NULL pointer can be passed. |
_ub | Upper bounds (on variables). If no upper bounds exist, a NULL pointer can be passed. |
Definition at line 1505 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/SRC/QProblemB.cpp.
returnValue QProblemB::setupQPdata | ( | const real_t *const | _H, |
const real_t *const | _R, | ||
const real_t *const | _g, | ||
const real_t *const | _lb, | ||
const real_t *const | _ub | ||
) | [protected] |
Setups internal QP data.
_H | Hessian matrix. |
_R | Cholesky factorization of the Hessian matrix. |
_g | Gradient vector. |
_lb | Lower bounds (on variables). If no lower bounds exist, a NULL pointer can be passed. |
_ub | Upper bounds (on variables). If no upper bounds exist, a NULL pointer can be passed. |
Definition at line 1548 of file external_packages/qpoases/SRC/QProblemB.cpp.
returnValue QProblemB::setupQPdata | ( | SymmetricMatrix * | _H, |
const real_t *const | _g, | ||
const real_t *const | _lb, | ||
const real_t *const | _ub | ||
) | [protected] |
Setups internal QP data.
_H | Hessian matrix. |
_g | Gradient vector. |
_lb | Lower bounds (on variables). If no lower bounds exist, a NULL pointer can be passed. |
_ub | Upper bounds (on variables). If no upper bounds exist, a NULL pointer can be passed. |
Definition at line 1787 of file external_packages/qpOASES-3.0beta/src/QProblemB.cpp.
returnValue QProblemB::setupQPdata | ( | const real_t *const | _H, |
const real_t *const | _g, | ||
const real_t *const | _lb, | ||
const real_t *const | _ub | ||
) | [protected] |
Setups internal QP data. If the current Hessian is trivial (i.e. HST_ZERO or HST_IDENTITY) but a non-trivial one is given, memory for Hessian is allocated and it is set to the given one.
_H | Hessian matrix. If Hessian matrix is trivial,a NULL pointer can be passed. |
_g | Gradient vector. |
_lb | Lower bounds (on variables). If no lower bounds exist, a NULL pointer can be passed. |
_ub | Upper bounds (on variables). If no upper bounds exist, a NULL pointer can be passed. |
returnValue QProblemB::setupQPdataFromFile | ( | const char *const | H_file, |
const char *const | g_file, | ||
const char *const | lb_file, | ||
const char *const | ub_file | ||
) | [protected] |
Setups internal QP data by loading it from files. If the current Hessian is trivial (i.e. HST_ZERO or HST_IDENTITY) but a non-trivial one is given, memory for Hessian is allocated and it is set to the given one.
H_file | Name of file where Hessian matrix, of neighbouring QP to be solved, is stored. If Hessian matrix is trivial,a NULL pointer can be passed. |
g_file | Name of file where gradient, of neighbouring QP to be solved, is stored. |
lb_file | Name of file where lower bounds, of neighbouring QP to be solved, is stored. If no lower bounds exist, a NULL pointer can be passed. |
ub_file | Name of file where upper bounds, of neighbouring QP to be solved, is stored. If no upper bounds exist, a NULL pointer can be passed. |
Definition at line 1873 of file external_packages/qpOASES-3.0beta/src/QProblemB.cpp.
returnValue QProblemB::setupSubjectToType | ( | ) | [protected] |
Determines type of constraints and bounds (i.e. implicitly fixed, unbounded etc.).
Reimplemented in QProblem, QProblem, and QProblem.
Definition at line 664 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/SRC/QProblemB.cpp.
returnValue QProblemB::setupSubjectToType | ( | ) | [protected] |
virtual returnValue QProblemB::setupSubjectToType | ( | ) | [protected, virtual] |
returnValue QProblemB::setupSubjectToType | ( | const real_t *const | lb_new, |
const real_t *const | ub_new | ||
) | [protected, virtual] |
Determines type of new constraints and bounds (i.e. implicitly fixed, unbounded etc.).
lb_new | New lower bounds. |
ub_new | New upper bounds. |
Definition at line 1365 of file external_packages/qpOASES-3.0beta/src/QProblemB.cpp.
BooleanType QProblemB::shallRefactorise | ( | const Bounds *const | guessedBounds | ) | const [private] |
Determines if it is more efficient to refactorise the matrices when hotstarting or not (i.e. better to update the existing factorisations).
guessedBounds | Guessed new working set. |
Definition at line 3369 of file external_packages/qpOASES-3.0beta/src/QProblemB.cpp.
returnValue QProblemB::solveInitialQP | ( | const real_t *const | xOpt, |
const real_t *const | yOpt, | ||
const Bounds *const | guessedBounds, | ||
int & | nWSR, | ||
real_t *const | cputime | ||
) | [protected] |
Solves a QProblemB whose QP data is assumed to be stored in the member variables. A guess for its primal/dual optimal solution vectors and the corresponding optimal working set can be provided.
xOpt | Optimal primal solution vector. A NULL pointer can be passed. |
yOpt | Optimal dual solution vector. A NULL pointer can be passed. |
guessedBounds | Guessed working set for solution (xOpt,yOpt). A NULL pointer can be passed. |
nWSR | Input: Maximum number of working set recalculations; Output: Number of performed working set recalculations. |
cputime | Output: CPU time required to solve QP (or to perform nWSR iterations). |
Definition at line 791 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/SRC/QProblemB.cpp.
returnValue QProblemB::solveInitialQP | ( | const real_t *const | xOpt, |
const real_t *const | yOpt, | ||
const Bounds *const | guessedBounds, | ||
int & | nWSR, | ||
real_t *const | cputime | ||
) | [protected] |
Solves a QProblemB whose QP data is assumed to be stored in the member variables. A guess for its primal/dual optimal solution vectors and the corresponding optimal working set can be provided.
xOpt | Optimal primal solution vector. A NULL pointer can be passed. |
yOpt | Optimal dual solution vector. A NULL pointer can be passed. |
guessedBounds | Guessed working set for solution (xOpt,yOpt). A NULL pointer can be passed. |
nWSR | Input: Maximum number of working set recalculations; Output: Number of performed working set recalculations. |
cputime | Output: CPU time required to solve QP (or to perform nWSR iterations). |
returnValue QProblemB::solveInitialQP | ( | const real_t *const | xOpt, |
const real_t *const | yOpt, | ||
const Bounds *const | guessedBounds, | ||
int & | nWSR, | ||
real_t *const | cputime | ||
) | [private] |
Solves a QProblemB whose QP data is assumed to be stored in the member variables. A guess for its primal/dual optimal solution vectors and the corresponding optimal working set can be provided. Note: This function is internally called by all init functions!
xOpt | Optimal primal solution vector. A NULL pointer can be passed. |
yOpt | Optimal dual solution vector. A NULL pointer can be passed. |
guessedBounds | Guessed working set for solution (xOpt,yOpt). A NULL pointer can be passed. |
nWSR | Input: Maximum number of working set recalculations; Output: Number of performed working set recalculations. |
cputime | Input: Maximum CPU time allowed for QP solution. Output: CPU time spend for QP solution (or to perform nWSR iterations). |
returnValue QProblemB::solveQP | ( | const real_t *const | g_new, |
const real_t *const | lb_new, | ||
const real_t *const | ub_new, | ||
int & | nWSR, | ||
real_t *const | cputime, | ||
int | nWSRperformed = 0 |
||
) | [private] |
Solves an initialised QProblemB using online active set strategy. Note: This function is internally called by all hotstart functions!
g_new | Gradient of neighbouring QP to be solved. |
lb_new | Lower bounds of neighbouring QP to be solved. If no lower bounds exist, a NULL pointer can be passed. |
ub_new | Upper bounds of neighbouring QP to be solved. If no upper bounds exist, a NULL pointer can be passed. |
nWSR | Input: Maximum number of working set recalculations; Output: Number of performed working set recalculations. |
cputime | Input: Maximum CPU time allowed for QP solution. Output: CPU time spend for QP solution (or to perform nWSR iterations). |
nWSRperformed | Number of working set recalculations already performed to solve this QP within previous solveQP() calls. This number is always zero, except for successive calls from solveRegularisedQP() or when using the far bound strategy. |
Definition at line 2352 of file external_packages/qpOASES-3.0beta/src/QProblemB.cpp.
returnValue QProblemB::solveRegularisedQP | ( | const real_t *const | g_new, |
const real_t *const | lb_new, | ||
const real_t *const | ub_new, | ||
int & | nWSR, | ||
real_t *const | cputime, | ||
int | nWSRperformed = 0 |
||
) | [private] |
Solves an initialised QProblemB using online active set strategy. Note: This function is internally called by all hotstart functions!
g_new | Gradient of neighbouring QP to be solved. |
lb_new | Lower bounds of neighbouring QP to be solved. If no lower bounds exist, a NULL pointer can be passed. |
ub_new | Upper bounds of neighbouring QP to be solved. If no upper bounds exist, a NULL pointer can be passed. |
nWSR | Input: Maximum number of working set recalculations; Output: Number of performed working set recalculations. |
cputime | Input: Maximum CPU time allowed for QP solution. Output: CPU time spend for QP solution (or to perform nWSR iterations). |
nWSRperformed | Number of working set recalculations already performed to solve this QP within previous solveRegularisedQP() calls. This number is always zero, except for successive calls when using the far bound strategy. |
Definition at line 2579 of file external_packages/qpOASES-3.0beta/src/QProblemB.cpp.
BooleanType QProblemB::usingRegularisation | ( | ) | const [inline] |
Returns if the QP has been internally regularised.
SolutionAnalysis [friend] |
Reimplemented in SQProblem, and QProblem.
Definition at line 58 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/INCLUDE/QProblemB.hpp.
Bounds QProblemB::bounds [protected] |
Data structure for problem's bounds.
Definition at line 569 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/INCLUDE/QProblemB.hpp.
int QProblemB::count [protected] |
Counts the number of hotstart function calls (internal usage only!).
Definition at line 587 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/INCLUDE/QProblemB.hpp.
real_t* QProblemB::delta_xFR_TMP [protected] |
Temporary for determineStepDirection
Definition at line 1025 of file external_packages/qpOASES-3.0beta/include/qpOASES/QProblemB.hpp.
Flipper QProblemB::flipper [protected] |
Struct for making a temporary copy of the matrix factorisations.
Definition at line 1032 of file external_packages/qpOASES-3.0beta/include/qpOASES/QProblemB.hpp.
BooleanType QProblemB::freeHessian [protected] |
Flag indicating whether the Hessian matrix needs to be de-allocated.
Definition at line 998 of file external_packages/qpOASES-3.0beta/include/qpOASES/QProblemB.hpp.
real_t QProblemB::g [protected] |
Gradient.
Definition at line 565 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/INCLUDE/QProblemB.hpp.
real_t* QProblemB::g [protected] |
Gradient.
Definition at line 1001 of file external_packages/qpOASES-3.0beta/include/qpOASES/QProblemB.hpp.
real_t QProblemB::H [protected] |
Hessian matrix.
Definition at line 564 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/INCLUDE/QProblemB.hpp.
SymmetricMatrix* QProblemB::H [protected] |
Hessian matrix.
Definition at line 999 of file external_packages/qpOASES-3.0beta/include/qpOASES/QProblemB.hpp.
BooleanType QProblemB::hasCholesky [protected] |
Flag indicating whether Cholesky decomposition has already been setup.
Definition at line 601 of file external_packages/qpoases/INCLUDE/QProblemB.hpp.
BooleanType QProblemB::hasHessian [protected] |
Flag indicating whether H contains Hessian or corresponding Cholesky factor R;
Definition at line 592 of file external_packages/qpoases/INCLUDE/QProblemB.hpp.
BooleanType QProblemB::haveCholesky [protected] |
Flag indicating whether Cholesky decomposition has already been setup.
Definition at line 1008 of file external_packages/qpOASES-3.0beta/include/qpOASES/QProblemB.hpp.
HessianType QProblemB::hessianType [protected] |
Type of Hessian matrix.
Definition at line 583 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/INCLUDE/QProblemB.hpp.
BooleanType QProblemB::infeasible [protected] |
QP infeasible?
Definition at line 580 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/INCLUDE/QProblemB.hpp.
BooleanType QProblemB::isRegularised [protected] |
Flag indicating whether Hessian matrix has been regularised.
Definition at line 1021 of file external_packages/qpOASES-3.0beta/include/qpOASES/QProblemB.hpp.
real_t QProblemB::lb [protected] |
Lower bound vector (on variables).
Definition at line 566 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/INCLUDE/QProblemB.hpp.
real_t* QProblemB::lb [protected] |
Lower bound vector (on variables).
Definition at line 1002 of file external_packages/qpOASES-3.0beta/include/qpOASES/QProblemB.hpp.
Options QProblemB::options [protected] |
Struct containing all user-defined options for solving QPs.
Definition at line 1030 of file external_packages/qpOASES-3.0beta/include/qpOASES/QProblemB.hpp.
PrintLevel QProblemB::printlevel [protected] |
Print level.
Definition at line 585 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/INCLUDE/QProblemB.hpp.
real_t QProblemB::R [protected] |
Cholesky decomposition of H (i.e. H = R^T*R).
Definition at line 571 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/INCLUDE/QProblemB.hpp.
real_t* QProblemB::R [protected] |
Cholesky factor of H (i.e. H = R^T*R).
Definition at line 1007 of file external_packages/qpOASES-3.0beta/include/qpOASES/QProblemB.hpp.
real_t QProblemB::ramp0 [protected] |
Start value for Ramping Strategy (usually 0.5 or 1.0).
Definition at line 1027 of file external_packages/qpOASES-3.0beta/include/qpOASES/QProblemB.hpp.
real_t QProblemB::ramp1 [protected] |
Final value for Ramping Strategy (usually 1.0 or 0.5).
Definition at line 1028 of file external_packages/qpOASES-3.0beta/include/qpOASES/QProblemB.hpp.
QProblemStatus QProblemB::status [protected] |
Current status of the solution process.
Definition at line 578 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/INCLUDE/QProblemB.hpp.
real_t QProblemB::tau [protected] |
Last homotopy step length.
Definition at line 576 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/INCLUDE/QProblemB.hpp.
real_t QProblemB::ub [protected] |
Upper bound vector (on variables).
Definition at line 567 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/INCLUDE/QProblemB.hpp.
real_t* QProblemB::ub [protected] |
Upper bound vector (on variables).
Definition at line 1003 of file external_packages/qpOASES-3.0beta/include/qpOASES/QProblemB.hpp.
BooleanType QProblemB::unbounded [protected] |
QP unbounded?
Definition at line 581 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/INCLUDE/QProblemB.hpp.
real_t QProblemB::x [protected] |
Primal solution vector.
Definition at line 573 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/INCLUDE/QProblemB.hpp.
real_t* QProblemB::x [protected] |
Primal solution vector.
Definition at line 1010 of file external_packages/qpOASES-3.0beta/include/qpOASES/QProblemB.hpp.
real_t QProblemB::y [protected] |
Dual solution vector.
Definition at line 574 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/INCLUDE/QProblemB.hpp.
real_t* QProblemB::y [protected] |
Dual solution vector.
Definition at line 1011 of file external_packages/qpOASES-3.0beta/include/qpOASES/QProblemB.hpp.