Implements the online active set strategy for QPs with general constraints. More...
#include <QProblem.hpp>
Public Member Functions | |
returnValue | getA (real_t *const _A) const |
returnValue | getA (int number, real_t *const row) const |
returnValue | getA (real_t *const _A) const |
returnValue | getA (int number, real_t *const row) const |
returnValue | getConstraints (Constraints *const _constraints) const |
returnValue | getConstraints (Constraints *const _constraints) const |
returnValue | getConstraints (Constraints &_constraints) const |
returnValue | getConstraints (Constraints &_constraints) const |
returnValue | getDualSolution (real_t *const yOpt) const |
returnValue | getDualSolution (real_t *const yOpt) const |
virtual returnValue | getDualSolution (real_t *const yOpt) const |
virtual returnValue | getDualSolution (real_t *const yOpt) const |
returnValue | getFreeVariablesFlags (BooleanType *varIsFree) |
returnValue | getLBA (real_t *const _lbA) const |
returnValue | getLBA (int number, real_t &value) const |
returnValue | getLBA (real_t *const _lbA) const |
returnValue | getLBA (int number, real_t &value) const |
int | getNAC () |
int | getNAC () |
int_t | getNAC () const |
int | getNAC () const |
int | getNC () const |
int | getNC () const |
int_t | getNC () const |
int | getNC () const |
int | getNEC () const |
int | getNEC () const |
int_t | getNEC () const |
int | getNEC () const |
int | getNIAC () |
int | getNIAC () |
int_t | getNIAC () const |
int | getNIAC () const |
int | getNZ () |
int | getNZ () |
virtual int_t | getNZ () const |
virtual int | getNZ () const |
returnValue | getUBA (real_t *const _ubA) const |
returnValue | getUBA (int number, real_t &value) const |
returnValue | getUBA (real_t *const _ubA) const |
returnValue | getUBA (int number, real_t &value) const |
virtual returnValue | getWorkingSet (real_t *workingSet) |
virtual returnValue | getWorkingSetBounds (real_t *workingSetB) |
virtual returnValue | getWorkingSetConstraints (real_t *workingSetC) |
returnValue | hotstart (const real_t *const g_new, const real_t *const lb_new, const real_t *const ub_new, const real_t *const lbA_new, const real_t *const ubA_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, const real_t *const lbA_new, const real_t *const ubA_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, const real_t *const lbA_new, const real_t *const ubA_new, int_t &nWSR, real_t *const cputime=0, const Bounds *const guessedBounds=0, const Constraints *const guessedConstraints=0) |
returnValue | hotstart (const char *const g_file, const char *const lb_file, const char *const ub_file, const char *const lbA_file, const char *const ubA_file, int_t &nWSR, real_t *const cputime=0, const Bounds *const guessedBounds=0, const Constraints *const guessedConstraints=0) |
returnValue | hotstart (const real_t *const g_new, const real_t *const lb_new, const real_t *const ub_new, const real_t *const lbA_new, const real_t *const ubA_new, int &nWSR, real_t *const cputime) |
returnValue | hotstart (const char *const g_file, const char *const lb_file, const char *const ub_file, const char *const lbA_file, const char *const ubA_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, const real_t *const lbA_new, const real_t *const ubA_new, int &nWSR, real_t *const cputime, const Bounds *const guessedBounds, const Constraints *const guessedConstraints) |
returnValue | hotstart (const char *const g_file, const char *const lb_file, const char *const ub_file, const char *const lbA_file, const char *const ubA_file, int &nWSR, real_t *const cputime, const Bounds *const guessedBounds, const Constraints *const guessedConstraints) |
returnValue | init (const real_t *const _H, const real_t *const _g, const real_t *const _A, const real_t *const _lb, const real_t *const _ub, const real_t *const _lbA, const real_t *const _ubA, 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 _A, const real_t *const _lb, const real_t *const _ub, const real_t *const _lbA, const real_t *const _ubA, int &nWSR, const real_t *const yOpt=0, real_t *const cputime=0) |
returnValue | init (SymmetricMatrix *_H, const real_t *const _g, Matrix *_A, const real_t *const _lb, const real_t *const _ub, const real_t *const _lbA, const real_t *const _ubA, int &nWSR, real_t *const cputime) |
returnValue | init (SymmetricMatrix *_H, const real_t *const _g, Matrix *_A, const real_t *const _lb, const real_t *const _ub, const real_t *const _lbA, const real_t *const _ubA, int_t &nWSR, real_t *const cputime=0, const real_t *const xOpt=0, const real_t *const yOpt=0, const Bounds *const guessedBounds=0, const Constraints *const guessedConstraints=0, const real_t *const _R=0) |
returnValue | init (const real_t *const _H, const real_t *const _R, const real_t *const _g, const real_t *const _A, const real_t *const _lb, const real_t *const _ub, const real_t *const _lbA, const real_t *const _ubA, 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 _A, const real_t *const _lb, const real_t *const _ub, const real_t *const _lbA, const real_t *const _ubA, int &nWSR, real_t *const cputime) |
returnValue | init (const real_t *const _H, const real_t *const _g, const real_t *const _A, const real_t *const _lb, const real_t *const _ub, const real_t *const _lbA, const real_t *const _ubA, int_t &nWSR, real_t *const cputime=0, const real_t *const xOpt=0, const real_t *const yOpt=0, const Bounds *const guessedBounds=0, const Constraints *const guessedConstraints=0, const real_t *const _R=0) |
returnValue | init (const char *const H_file, const char *const g_file, const char *const A_file, const char *const lb_file, const char *const ub_file, const char *const lbA_file, const char *const ubA_file, int &nWSR, real_t *const cputime) |
returnValue | init (SymmetricMatrix *_H, const real_t *const _g, Matrix *_A, const real_t *const _lb, const real_t *const _ub, const real_t *const _lbA, const real_t *const _ubA, int &nWSR, real_t *const cputime, const real_t *const xOpt, const real_t *const yOpt, const Bounds *const guessedBounds, const Constraints *const guessedConstraints) |
returnValue | init (const char *const H_file, const char *const g_file, const char *const A_file, const char *const lb_file, const char *const ub_file, const char *const lbA_file, const char *const ubA_file, int_t &nWSR, real_t *const cputime=0, const real_t *const xOpt=0, const real_t *const yOpt=0, const Bounds *const guessedBounds=0, const Constraints *const guessedConstraints=0, const char *const R_file=0) |
returnValue | init (const real_t *const _H, const real_t *const _g, const real_t *const _A, const real_t *const _lb, const real_t *const _ub, const real_t *const _lbA, const real_t *const _ubA, int &nWSR, real_t *const cputime, const real_t *const xOpt, const real_t *const yOpt, const Bounds *const guessedBounds, const Constraints *const guessedConstraints) |
returnValue | init (const char *const H_file, const char *const g_file, const char *const A_file, const char *const lb_file, const char *const ub_file, const char *const lbA_file, const char *const ubA_file, int &nWSR, real_t *const cputime, const real_t *const xOpt, const real_t *const yOpt, const Bounds *const guessedBounds, const Constraints *const guessedConstraints) |
QProblem & | operator= (const QProblem &rhs) |
QProblem & | operator= (const QProblem &rhs) |
virtual QProblem & | operator= (const QProblem &rhs) |
QProblem & | operator= (const QProblem &rhs) |
virtual returnValue | printProperties () |
virtual returnValue | printProperties () |
QProblem () | |
QProblem () | |
QProblem (int _nV, int _nC) | |
QProblem (int _nV, int _nC) | |
QProblem (const QProblem &rhs) | |
QProblem () | |
QProblem () | |
QProblem (const QProblem &rhs) | |
QProblem (int_t _nV, int_t _nC, HessianType _hessianType=HST_UNKNOWN) | |
QProblem (int _nV, int _nC, HessianType _hessianType=HST_UNKNOWN) | |
QProblem (const QProblem &rhs) | |
QProblem (const QProblem &rhs) | |
returnValue | reset () |
returnValue | reset () |
virtual returnValue | reset () |
virtual returnValue | reset () |
returnValue | setConstraintProduct (ConstraintProduct *const _constraintProduct) |
returnValue | setConstraintProduct (ConstraintProduct *const _constraintProduct) |
returnValue | solveCurrentEQP (const int_t n_rhs, const real_t *g_in, const real_t *lb_in, const real_t *ub_in, const real_t *lbA_in, const real_t *ubA_in, real_t *x_out, real_t *y_out) |
returnValue | solveCurrentEQP (const int n_rhs, const real_t *g_in, const real_t *lb_in, const real_t *ub_in, const real_t *lbA_in, const real_t *ubA_in, real_t *x_out, real_t *y_out) |
returnValue | writeQpDataIntoMatFile (const char *const filename) const |
returnValue | writeQpWorkspaceIntoMatFile (const char *const filename) |
~QProblem () | |
~QProblem () | |
virtual | ~QProblem () |
virtual | ~QProblem () |
Public Member Functions inherited from QProblemB | |
returnValue | getBounds (Bounds *const _bounds) const |
returnValue | getBounds (Bounds *const _bounds) const |
returnValue | getBounds (Bounds &_bounds) const |
returnValue | getBounds (Bounds &_bounds) const |
uint_t | getCount () const |
returnValue | getDualSolution (real_t *const yOpt) const |
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 |
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_t | getNFR () const |
int | getNFR () const |
int | getNFV () const |
int | getNFV () const |
int_t | getNFV () const |
int | getNFV () const |
int | getNFX () |
int | getNFX () |
int_t | getNFX () const |
int | getNFX () const |
int | getNV () const |
int | getNV () const |
int_t | getNV () const |
int | getNV () const |
int | getNZ () |
int | getNZ () |
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 |
real_t | getObjVal () const |
real_t | getObjVal (const real_t *const _x) const |
Options | getOptions () 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 |
returnValue | getPrimalSolution (real_t *const xOpt) const |
PrintLevel | getPrintLevel () const |
PrintLevel | getPrintLevel () const |
PrintLevel | getPrintLevel () const |
PrintLevel | getPrintLevel () const |
QProblemStatus | getStatus () 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_t &nWSR, real_t *const cputime=0, const Bounds *const guessedBounds=0) |
returnValue | hotstart (const char *const g_file, const char *const lb_file, const char *const ub_file, int_t &nWSR, real_t *const cputime=0, const Bounds *const guessedBounds=0) |
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 (SymmetricMatrix *_H, const real_t *const _g, const real_t *const _lb, const real_t *const _ub, int_t &nWSR, real_t *const cputime=0, const real_t *const xOpt=0, const real_t *const yOpt=0, const Bounds *const guessedBounds=0, const real_t *const _R=0) |
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 (const real_t *const _H, const real_t *const _g, const real_t *const _lb, const real_t *const _ub, int_t &nWSR, real_t *const cputime=0, const real_t *const xOpt=0, const real_t *const yOpt=0, const Bounds *const guessedBounds=0, const real_t *const _R=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, 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_t &nWSR, real_t *const cputime=0, const real_t *const xOpt=0, const real_t *const yOpt=0, const Bounds *const guessedBounds=0, const char *const R_file=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, 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 | isInfeasible () const |
BooleanType | isInitialised () const |
BooleanType | isInitialised () const |
BooleanType | isInitialised () const |
BooleanType | isInitialised () const |
BooleanType | isSolved () const |
BooleanType | isSolved () const |
BooleanType | isSolved () const |
BooleanType | isSolved () const |
BooleanType | isUnbounded () 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) |
virtual QProblemB & | operator= (const QProblemB &rhs) |
returnValue | printOptions () const |
returnValue | printOptions () const |
QProblemB () | |
QProblemB () | |
QProblemB (int _nV) | |
QProblemB (int _nV) | |
QProblemB (const QProblemB &rhs) | |
QProblemB (const QProblemB &rhs) | |
QProblemB () | |
QProblemB () | |
QProblemB (int_t _nV, HessianType _hessianType=HST_UNKNOWN) | |
QProblemB (int _nV, HessianType _hessianType=HST_UNKNOWN) | |
QProblemB (const QProblemB &rhs) | |
QProblemB (const QProblemB &rhs) | |
returnValue | reset () |
returnValue | reset () |
returnValue | resetCounter () |
returnValue | setHessianType (HessianType _hessianType) |
returnValue | setHessianType (HessianType _hessianType) |
returnValue | setHessianType (HessianType _hessianType) |
returnValue | setHessianType (HessianType _hessianType) |
returnValue | setOptions (const Options &_options) |
returnValue | setOptions (const Options &_options) |
returnValue | setPrintLevel (PrintLevel _printlevel) |
returnValue | setPrintLevel (PrintLevel _printlevel) |
returnValue | setPrintLevel (PrintLevel _printlevel) |
returnValue | setPrintLevel (PrintLevel _printlevel) |
BooleanType | usingRegularisation () const |
BooleanType | usingRegularisation () const |
~QProblemB () | |
~QProblemB () | |
virtual | ~QProblemB () |
virtual | ~QProblemB () |
Public Attributes | |
DenseMatrix * | A |
DenseMatrix | AA |
real_t | Ax_l [NCMAX] |
real_t | Ax_u [NCMAX] |
Bounds | bounds |
ConstraintProduct | constraintProduct |
unsigned int | count |
real_t | delta_xFR_TMP [NVMAX] |
real_t | delta_xFRy [NCMAX] |
real_t | delta_xFRz [NVMAX] |
real_t | delta_yAC_TMP [NCMAX] |
Flipper | flipper |
real_t | g [NVMAX] |
DenseMatrix * | H |
BooleanType | haveCholesky |
HessianType | hessianType |
DenseMatrix | HH |
BooleanType | infeasible |
real_t | lb [NVMAX] |
Options | options |
real_t | R [NVMAX *NVMAX] |
real_t | ramp0 |
real_t | ramp1 |
int | rampOffset |
real_t | regVal |
QProblemStatus | status |
TabularOutput | tabularOutput |
real_t | tau |
real_t | tempA [NVMAX] |
real_t | tempB [NCMAX] |
real_t | ub [NVMAX] |
BooleanType | unbounded |
real_t | x [NVMAX] |
real_t | y [NVMAX+NCMAX] |
real_t | ZFR_delta_xFRz [NVMAX] |
Public Attributes inherited from QProblemB | |
unsigned int | count |
real_t | delta_xFR_TMP [NVMAX] |
DenseMatrix * | H |
DenseMatrix | HH |
int | rampOffset |
Protected Member Functions | |
returnValue | addBound (int number, SubjectToStatus B_status, BooleanType updateCholesky) |
returnValue | addBound (int number, SubjectToStatus B_status, BooleanType updateCholesky) |
virtual returnValue | addBound (int_t number, SubjectToStatus B_status, BooleanType updateCholesky, BooleanType ensureLI=BT_TRUE) |
returnValue | addBound (int number, SubjectToStatus B_status, BooleanType updateCholesky, BooleanType ensureLI=BT_TRUE) |
returnValue | addBound_checkLI (int number) |
returnValue | addBound_checkLI (int number) |
virtual returnValue | addBound_checkLI (int_t number) |
returnValue | addBound_checkLI (int number) |
returnValue | addBound_ensureLI (int number, SubjectToStatus B_status) |
returnValue | addBound_ensureLI (int number, SubjectToStatus B_status) |
virtual returnValue | addBound_ensureLI (int_t number, SubjectToStatus B_status) |
returnValue | addBound_ensureLI (int number, SubjectToStatus B_status) |
returnValue | addConstraint (int number, SubjectToStatus C_status, BooleanType updateCholesky) |
returnValue | addConstraint (int number, SubjectToStatus C_status, BooleanType updateCholesky) |
virtual returnValue | addConstraint (int_t number, SubjectToStatus C_status, BooleanType updateCholesky, BooleanType ensureLI=BT_TRUE) |
returnValue | addConstraint (int number, SubjectToStatus C_status, BooleanType updateCholesky, BooleanType ensureLI=BT_TRUE) |
returnValue | addConstraint_checkLI (int number) |
returnValue | addConstraint_checkLI (int number) |
virtual returnValue | addConstraint_checkLI (int_t number) |
returnValue | addConstraint_checkLI (int number) |
returnValue | addConstraint_ensureLI (int number, SubjectToStatus C_status) |
returnValue | addConstraint_ensureLI (int number, SubjectToStatus C_status) |
virtual returnValue | addConstraint_ensureLI (int_t number, SubjectToStatus C_status) |
returnValue | addConstraint_ensureLI (int number, SubjectToStatus C_status) |
BooleanType | areBoundsConsistent (const real_t *const delta_lb, const real_t *const delta_ub, const real_t *const delta_lbA, const real_t *const delta_ubA) const |
BooleanType | areBoundsConsistent (const real_t *const delta_lb, const real_t *const delta_ub, const real_t *const delta_lbA, const real_t *const delta_ubA) const |
returnValue | areBoundsConsistent (const real_t *const lb, const real_t *const ub, const real_t *const lbA, const real_t *const ubA) 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 | backsolveT (const real_t *const b, BooleanType transposed, real_t *const a) |
returnValue | backsolveT (const real_t *const b, BooleanType transposed, real_t *const a) |
virtual returnValue | backsolveT (const real_t *const b, BooleanType transposed, real_t *const a) const |
returnValue | backsolveT (const real_t *const b, BooleanType transposed, real_t *const a) const |
returnValue | changeActiveSet (int_t BC_idx, SubjectToStatus BC_status, BooleanType BC_isBound) |
returnValue | changeActiveSet (int BC_idx, SubjectToStatus BC_status, BooleanType BC_isBound) |
returnValue | checkKKTconditions () |
returnValue | checkKKTconditions () |
returnValue | clear () |
returnValue | clear () |
returnValue | computeInitialCholesky () |
virtual returnValue | computeProjectedCholesky () |
returnValue | copy (const QProblem &rhs) |
returnValue | copy (const QProblem &rhs) |
returnValue | determineDataShift (const real_t *const g_new, const real_t *const lbA_new, const real_t *const ubA_new, const real_t *const lb_new, const real_t *const ub_new, real_t *const delta_g, real_t *const delta_lbA, real_t *const delta_ubA, real_t *const delta_lb, real_t *const delta_ub, BooleanType &Delta_bC_isZero, BooleanType &Delta_bB_isZero) |
returnValue | determineDataShift (const real_t *const g_new, const real_t *const lbA_new, const real_t *const ubA_new, const real_t *const lb_new, const real_t *const ub_new, real_t *const delta_g, real_t *const delta_lbA, real_t *const delta_ubA, real_t *const delta_lb, real_t *const delta_ub, BooleanType &Delta_bC_isZero, BooleanType &Delta_bB_isZero) |
virtual returnValue | determineStepDirection (const real_t *const delta_g, const real_t *const delta_lbA, const real_t *const delta_ubA, const real_t *const delta_lb, const real_t *const delta_ub, BooleanType Delta_bC_isZero, BooleanType Delta_bB_isZero, real_t *const delta_xFX, real_t *const delta_xFR, real_t *const delta_yAC, real_t *const delta_yFX) |
returnValue | determineStepDirection (const real_t *const delta_g, const real_t *const delta_lbA, const real_t *const delta_ubA, const real_t *const delta_lb, const real_t *const delta_ub, BooleanType Delta_bC_isZero, BooleanType Delta_bB_isZero, real_t *const delta_xFX, real_t *const delta_xFR, real_t *const delta_yAC, real_t *const delta_yFX) |
returnValue | dropInfeasibles (int_t BC_number, SubjectToStatus BC_status, BooleanType BC_isBound, real_t *xiB, real_t *xiC) |
returnValue | ensureNonzeroCurvature (BooleanType removeBoundNotConstraint, int_t remIdx, BooleanType &exchangeHappened, BooleanType &addBoundNotConstraint, int_t &addIdx, SubjectToStatus &addStatus) |
returnValue | ensureNonzeroCurvature (BooleanType removeBoundNotConstraint, int remIdx, BooleanType &exchangeHappened, BooleanType &addBoundNotConstraint, int &addIdx, SubjectToStatus &addStatus) |
real_t | getRelativeHomotopyLength (const real_t *const g_new, const real_t *const lb_new, const real_t *const ub_new, const real_t *const lbA_new, const real_t *const ubA_new) |
returnValue | hotstart_determineDataShift (const int *const FX_idx, const int *const AC_idx, const real_t *const g_new, const real_t *const lbA_new, const real_t *const ubA_new, const real_t *const lb_new, const real_t *const ub_new, real_t *const delta_g, real_t *const delta_lbA, real_t *const delta_ubA, real_t *const delta_lb, real_t *const delta_ub, BooleanType &Delta_bC_isZero, BooleanType &Delta_bB_isZero) |
returnValue | hotstart_determineDataShift (const int *const FX_idx, const int *const AC_idx, const real_t *const g_new, const real_t *const lbA_new, const real_t *const ubA_new, const real_t *const lb_new, const real_t *const ub_new, real_t *const delta_g, real_t *const delta_lbA, real_t *const delta_ubA, real_t *const delta_lb, real_t *const delta_ub, BooleanType &Delta_bC_isZero, BooleanType &Delta_bB_isZero) |
returnValue | hotstart_determineStepDirection (const int *const FR_idx, const int *const FX_idx, const int *const AC_idx, const real_t *const delta_g, const real_t *const delta_lbA, const real_t *const delta_ubA, const real_t *const delta_lb, const real_t *const delta_ub, BooleanType Delta_bC_isZero, BooleanType Delta_bB_isZero, real_t *const delta_xFX, real_t *const delta_xFR, real_t *const delta_yAC, real_t *const delta_yFX) |
returnValue | hotstart_determineStepDirection (const int *const FR_idx, const int *const FX_idx, const int *const AC_idx, const real_t *const delta_g, const real_t *const delta_lbA, const real_t *const delta_ubA, const real_t *const delta_lb, const real_t *const delta_ub, BooleanType Delta_bC_isZero, BooleanType Delta_bB_isZero, real_t *const delta_xFX, real_t *const delta_xFR, real_t *const delta_yAC, real_t *const delta_yFX) |
returnValue | hotstart_determineStepLength (const int *const FR_idx, const int *const FX_idx, const int *const AC_idx, const int *const IAC_idx, const real_t *const delta_lbA, const real_t *const delta_ubA, 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_yAC, const real_t *const delta_yFX, real_t *const delta_Ax, int &BC_idx, SubjectToStatus &BC_status, BooleanType &BC_isBound) |
returnValue | hotstart_determineStepLength (const int *const FR_idx, const int *const FX_idx, const int *const AC_idx, const int *const IAC_idx, const real_t *const delta_lbA, const real_t *const delta_ubA, 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_yAC, const real_t *const delta_yFX, real_t *const delta_Ax, int &BC_idx, SubjectToStatus &BC_status, BooleanType &BC_isBound) |
returnValue | hotstart_performStep (const int *const FR_idx, const int *const FX_idx, const int *const AC_idx, const int *const IAC_idx, const real_t *const delta_g, const real_t *const delta_lbA, const real_t *const delta_ubA, 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_yAC, const real_t *const delta_yFX, const real_t *const delta_Ax, int BC_idx, SubjectToStatus BC_status, BooleanType BC_isBound) |
returnValue | hotstart_performStep (const int *const FR_idx, const int *const FX_idx, const int *const AC_idx, const int *const IAC_idx, const real_t *const delta_g, const real_t *const delta_lbA, const real_t *const delta_ubA, 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_yAC, const real_t *const delta_yFX, const real_t *const delta_Ax, int BC_idx, SubjectToStatus BC_status, BooleanType BC_isBound) |
returnValue | loadQPvectorsFromFile (const char *const g_file, const char *const lb_file, const char *const ub_file, const char *const lbA_file, const char *const ubA_file, real_t *const g_new, real_t *const lb_new, real_t *const ub_new, real_t *const lbA_new, real_t *const ubA_new) const |
returnValue | loadQPvectorsFromFile (const char *const g_file, const char *const lb_file, const char *const ub_file, const char *const lbA_file, const char *const ubA_file, real_t *const g_new, real_t *const lb_new, real_t *const ub_new, real_t *const lbA_new, real_t *const ubA_new) const |
returnValue | obtainAuxiliaryWorkingSet (const real_t *const xOpt, const real_t *const yOpt, const Bounds *const guessedBounds, const Constraints *const guessedConstraints, Bounds *auxiliaryBounds, Constraints *auxiliaryConstraints) const |
returnValue | obtainAuxiliaryWorkingSet (const real_t *const xOpt, const real_t *const yOpt, const Bounds *const guessedBounds, const Constraints *const guessedConstraints, Bounds *auxiliaryBounds, Constraints *auxiliaryConstraints) const |
returnValue | obtainAuxiliaryWorkingSet (const real_t *const xOpt, const real_t *const yOpt, const Bounds *const guessedBounds, const Constraints *const guessedConstraints, Bounds *auxiliaryBounds, Constraints *auxiliaryConstraints) const |
returnValue | obtainAuxiliaryWorkingSet (const real_t *const xOpt, const real_t *const yOpt, const Bounds *const guessedBounds, const Constraints *const guessedConstraints, Bounds *auxiliaryBounds, Constraints *auxiliaryConstraints) const |
virtual returnValue | performDriftCorrection () |
returnValue | performDriftCorrection () |
returnValue | performPlainRatioTest (int_t nIdx, const int_t *const idxList, const real_t *const num, const real_t *const den, real_t epsNum, real_t epsDen, real_t &t, int_t &BC_idx) const |
returnValue | performPlainRatioTest (int nIdx, const int *const idxList, const real_t *const num, const real_t *const den, real_t epsNum, real_t epsDen, real_t &t, int &BC_idx) const |
virtual returnValue | performRamping () |
virtual returnValue | performRamping () |
returnValue | performStep (const real_t *const delta_g, const real_t *const delta_lbA, const real_t *const delta_ubA, 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_yAC, const real_t *const delta_yFX, int_t &BC_idx, SubjectToStatus &BC_status, BooleanType &BC_isBound) |
returnValue | performStep (const real_t *const delta_g, const real_t *const delta_lbA, const real_t *const delta_ubA, 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_yAC, const real_t *const delta_yFX, int &BC_idx, SubjectToStatus &BC_status, BooleanType &BC_isBound) |
returnValue | printIteration (int_t iter, int_t BC_idx, SubjectToStatus BC_status, BooleanType BC_isBound, real_t homotopyLength, BooleanType isFirstCall=BT_TRUE) |
returnValue | printIteration (int iteration, int BC_idx, SubjectToStatus BC_status, BooleanType BC_isBound) |
real_t | relativeHomotopyLength (const real_t *const g_new, const real_t *const lb_new, const real_t *const ub_new, const real_t *const lbA_new, const real_t *const ubA_new) |
returnValue | removeBound (int number, BooleanType updateCholesky) |
returnValue | removeBound (int number, BooleanType updateCholesky) |
virtual returnValue | removeBound (int_t number, BooleanType updateCholesky, BooleanType allowFlipping=BT_FALSE, BooleanType ensureNZC=BT_FALSE) |
returnValue | removeBound (int number, BooleanType updateCholesky, BooleanType allowFlipping=BT_FALSE, BooleanType ensureNZC=BT_FALSE) |
returnValue | removeConstraint (int number, BooleanType updateCholesky) |
returnValue | removeConstraint (int number, BooleanType updateCholesky) |
virtual returnValue | removeConstraint (int_t number, BooleanType updateCholesky, BooleanType allowFlipping=BT_FALSE, BooleanType ensureNZC=BT_FALSE) |
returnValue | removeConstraint (int number, BooleanType updateCholesky, BooleanType allowFlipping=BT_FALSE, BooleanType ensureNZC=BT_FALSE) |
returnValue | setA (const real_t *const A_new) |
returnValue | setA (int number, const real_t *const value) |
returnValue | setA (const real_t *const A_new) |
returnValue | setA (int number, const real_t *const value) |
returnValue | setA (Matrix *A_new) |
returnValue | setA (const real_t *const A_new) |
returnValue | setA (Matrix *A_new) |
returnValue | setA (const real_t *const A_new) |
returnValue | setLBA (const real_t *const lbA_new) |
returnValue | setLBA (int number, real_t value) |
returnValue | setLBA (const real_t *const lbA_new) |
returnValue | setLBA (int number, real_t value) |
returnValue | setLBA (const real_t *const lbA_new) |
returnValue | setLBA (int_t number, real_t value) |
returnValue | setLBA (const real_t *const lbA_new) |
returnValue | setLBA (int number, real_t value) |
returnValue | setUBA (const real_t *const ubA_new) |
returnValue | setUBA (int number, real_t value) |
returnValue | setUBA (const real_t *const ubA_new) |
returnValue | setUBA (int number, real_t value) |
returnValue | setUBA (const real_t *const ubA_new) |
returnValue | setUBA (int_t number, real_t value) |
returnValue | setUBA (const real_t *const ubA_new) |
returnValue | setUBA (int number, real_t value) |
virtual returnValue | setupAuxiliaryQP (const Bounds *const guessedBounds, const Constraints *const guessedConstraints) |
virtual returnValue | setupAuxiliaryQP (const Bounds *const guessedBounds, const Constraints *const guessedConstraints) |
returnValue | setupAuxiliaryQPbounds (const Bounds *const auxiliaryBounds, const Constraints *const auxiliaryConstraints, BooleanType useRelaxation) |
returnValue | setupAuxiliaryQPbounds (const Bounds *const auxiliaryBounds, const Constraints *const auxiliaryConstraints, BooleanType useRelaxation) |
returnValue | setupAuxiliaryQPbounds (const Bounds *const auxiliaryBounds, const Constraints *const auxiliaryConstraints, BooleanType useRelaxation) |
returnValue | setupAuxiliaryQPbounds (const Bounds *const auxiliaryBounds, const Constraints *const auxiliaryConstraints, BooleanType useRelaxation) |
returnValue | setupAuxiliaryQPgradient () |
returnValue | setupAuxiliaryQPgradient () |
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 | 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, const Constraints *const auxiliaryConstraints, BooleanType setupAfresh) |
returnValue | setupAuxiliaryWorkingSet (const Bounds *const auxiliaryBounds, const Constraints *const auxiliaryConstraints, BooleanType setupAfresh) |
virtual returnValue | setupAuxiliaryWorkingSet (const Bounds *const auxiliaryBounds, const Constraints *const auxiliaryConstraints, BooleanType setupAfresh) |
returnValue | setupAuxiliaryWorkingSet (const Bounds *const auxiliaryBounds, const Constraints *const auxiliaryConstraints, BooleanType setupAfresh) |
returnValue | setupCholeskyDecompositionProjected () |
returnValue | setupCholeskyDecompositionProjected () |
returnValue | setupCholeskyDecompositionProjected () |
virtual returnValue | setupInitialCholesky () |
returnValue | setupQPdata (const real_t *const _H, const real_t *const _g, const real_t *const _A, const real_t *const _lb, const real_t *const _ub, const real_t *const _lbA, const real_t *const _ubA) |
returnValue | setupQPdata (const real_t *const _H, const real_t *const _R, const real_t *const _g, const real_t *const _A, const real_t *const _lb, const real_t *const _ub, const real_t *const _lbA, const real_t *const _ubA) |
returnValue | setupQPdata (SymmetricMatrix *_H, const real_t *const _g, Matrix *_A, const real_t *const _lb, const real_t *const _ub, const real_t *const _lbA, const real_t *const _ubA) |
returnValue | setupQPdata (const real_t *const _H, const real_t *const _g, const real_t *const _A, const real_t *const _lb, const real_t *const _ub, const real_t *const _lbA, const real_t *const _ubA) |
returnValue | setupQPdata (SymmetricMatrix *_H, const real_t *const _g, Matrix *_A, const real_t *const _lb, const real_t *const _ub, const real_t *const _lbA, const real_t *const _ubA) |
returnValue | setupQPdata (const real_t *const _H, const real_t *const _g, const real_t *const _A, const real_t *const _lb, const real_t *const _ub, const real_t *const _lbA, const real_t *const _ubA) |
returnValue | setupQPdataFromFile (const char *const H_file, const char *const g_file, const char *const A_file, const char *const lb_file, const char *const ub_file, const char *const lbA_file, const char *const ubA_file) |
returnValue | setupQPdataFromFile (const char *const H_file, const char *const g_file, const char *const A_file, const char *const lb_file, const char *const ub_file, const char *const lbA_file, const char *const ubA_file) |
returnValue | setupSubjectToType () |
returnValue | setupSubjectToType () |
virtual returnValue | setupSubjectToType () |
virtual returnValue | setupSubjectToType (const real_t *const lb_new, const real_t *const ub_new, const real_t *const lbA_new, const real_t *const ubA_new) |
virtual returnValue | setupSubjectToType () |
virtual returnValue | setupSubjectToType (const real_t *const lb_new, const real_t *const ub_new, const real_t *const lbA_new, const real_t *const ubA_new) |
returnValue | setupTQfactorisation () |
returnValue | setupTQfactorisation () |
virtual returnValue | setupTQfactorisation () |
returnValue | setupTQfactorisation () |
BooleanType | shallRefactorise (const Bounds *const guessedBounds, const Constraints *const guessedConstraints) const |
BooleanType | shallRefactorise (const Bounds *const guessedBounds, const Constraints *const guessedConstraints) const |
returnValue | solveInitialQP (const real_t *const xOpt, const real_t *const yOpt, const Bounds *const guessedBounds, const Constraints *const guessedConstraints, int &nWSR, real_t *const cputime) |
returnValue | solveInitialQP (const real_t *const xOpt, const real_t *const yOpt, const Bounds *const guessedBounds, const Constraints *const guessedConstraints, int &nWSR, real_t *const cputime) |
returnValue | solveInitialQP (const real_t *const xOpt, const real_t *const yOpt, const Bounds *const guessedBounds, const Constraints *const guessedConstraints, const real_t *const _R, int_t &nWSR, real_t *const cputime) |
returnValue | solveInitialQP (const real_t *const xOpt, const real_t *const yOpt, const Bounds *const guessedBounds, const Constraints *const guessedConstraints, 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, const real_t *const lbA_new, const real_t *const ubA_new, int_t &nWSR, real_t *const cputime, int_t nWSRperformed=0, BooleanType isFirstCall=BT_TRUE) |
returnValue | solveQP (const real_t *const g_new, const real_t *const lb_new, const real_t *const ub_new, const real_t *const lbA_new, const real_t *const ubA_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, const real_t *const lbA_new, const real_t *const ubA_new, int_t &nWSR, real_t *const cputime, int_t nWSRperformed=0, BooleanType isFirstCall=BT_TRUE) |
returnValue | solveRegularisedQP (const real_t *const g_new, const real_t *const lb_new, const real_t *const ub_new, const real_t *const lbA_new, const real_t *const ubA_new, int &nWSR, real_t *const cputime, int nWSRperformed=0) |
virtual returnValue | updateActivitiesForHotstart (const real_t *const lb_new, const real_t *const ub_new, const real_t *const lbA_new, const real_t *const ubA_new) |
returnValue | updateFarBounds (real_t curFarBound, int_t nRamp, const real_t *const lb_new, real_t *const lb_new_far, const real_t *const ub_new, real_t *const ub_new_far, const real_t *const lbA_new, real_t *const lbA_new_far, const real_t *const ubA_new, real_t *const ubA_new_far) const |
Protected Member Functions inherited from QProblemB | |
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 |
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 | areBoundsConsistent (const real_t *const lb, const real_t *const 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) |
virtual returnValue | backsolveR (const real_t *const b, BooleanType transposed, real_t *const a) const |
virtual returnValue | backsolveR (const real_t *const b, BooleanType transposed, BooleanType removingBound, real_t *const a) const |
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 () |
returnValue | clear () |
virtual returnValue | computeCholesky () |
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 |
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 | copy (const QProblemB &rhs) |
SymSparseMat * | createDiagSparseMat (int_t n, real_t diagVal=1.0) |
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 | 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 | determineHessianType () |
real_t | getRelativeHomotopyLength (const real_t *const g_new, const real_t *const lb_new, const real_t *const ub_new) |
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 | 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_t nWSR) 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 | 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 |
returnValue | obtainAuxiliaryWorkingSet (const real_t *const xOpt, const real_t *const yOpt, const Bounds *const guessedBounds, Bounds *auxiliaryBounds) const |
returnValue | performRatioTest (int_t nIdx, const int_t *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_t &BC_idx) const |
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 () |
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 | 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 | setH (SymmetricMatrix *H_new) |
returnValue | setH (const real_t *const H_new) |
returnValue | setInfeasibilityFlag (returnValue returnvalue, BooleanType doThrowError=BT_FALSE) |
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_t 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_t number, real_t value) |
returnValue | setUB (const real_t *const ub_new) |
returnValue | setUB (int number, real_t value) |
virtual returnValue | setupAuxiliaryQP (const Bounds *const guessedBounds) |
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 | 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 | 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 (const real_t *const lb_new, const real_t *const ub_new) |
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) |
returnValue | updateFarBounds (real_t curFarBound, int_t nRamp, const real_t *const lb_new, real_t *const lb_new_far, const real_t *const ub_new, real_t *const ub_new_far) const |
Friends | |
class | SolutionAnalysis |
Implements the online active set strategy for QPs with general constraints.
A class for setting up and solving quadratic programs. The main feature is the possibily to use the newly developed online active set strategy for parametric quadratic programming.
A class for setting up and solving quadratic programs. The main feature is the possibily to use the newly developed online active set strategy for parametric quadratic programming.
A class for setting up and solving quadratic programs. The main feature is the possibily to use the newly developed online active set strategy for parametric quadratic programming.
A class for setting up and solving quadratic programs. The main feature is the possibily to use the newly developed online active set strategy for parametric quadratic programming.
Definition at line 53 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/INCLUDE/QProblem.hpp.
BEGIN_NAMESPACE_QPOASES QProblem::QProblem | ( | ) |
Default constructor.
Definition at line 62 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/SRC/QProblem.cpp.
QProblem::QProblem | ( | int | _nV, |
int | _nC | ||
) |
Constructor which takes the QP dimensions only.
_nV | Number of variables. |
_nC | Number of constraints. |
Definition at line 75 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/SRC/QProblem.cpp.
QProblem::QProblem | ( | const QProblem & | rhs | ) |
Copy constructor (deep copy).
rhs | Rhs object. |
Definition at line 101 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/SRC/QProblem.cpp.
QProblem::~QProblem | ( | ) |
Destructor.
Definition at line 144 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/SRC/QProblem.cpp.
QProblem::QProblem | ( | ) |
Default constructor.
QProblem::QProblem | ( | int | _nV, |
int | _nC | ||
) |
Constructor which takes the QP dimensions only.
_nV | Number of variables. |
_nC | Number of constraints. |
QProblem::QProblem | ( | const QProblem & | rhs | ) |
Copy constructor (deep copy).
rhs | Rhs object. |
QProblem::~QProblem | ( | ) |
Destructor.
QProblem::QProblem | ( | ) |
Default constructor.
QProblem::QProblem | ( | int | _nV, |
int | _nC, | ||
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. |
_nC | Number of constraints. |
_hessianType | Type of Hessian matrix. |
Definition at line 80 of file external_packages/qpOASES-3.0beta/src/QProblem.cpp.
QProblem::QProblem | ( | const QProblem & | rhs | ) |
Copy constructor (deep copy).
rhs | Rhs object. |
|
virtual |
Destructor.
QProblem::QProblem | ( | ) |
Default constructor.
QProblem::QProblem | ( | int_t | _nV, |
int_t | _nC, | ||
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. |
_nC | Number of constraints. |
_hessianType | Type of Hessian matrix. |
QProblem::QProblem | ( | const QProblem & | rhs | ) |
Copy constructor (deep copy).
rhs | Rhs object. |
|
virtual |
Destructor.
|
protected |
Adds a bound to active set.
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. |
Definition at line 1787 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/SRC/QProblem.cpp.
|
protected |
Adds a bound to active set.
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. |
|
protectedvirtual |
Adds a bound to active set.
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. |
ensureLI | Ensure linear independence by exchange rules by default. |
Reimplemented in SQProblemSchur.
|
protected |
Adds a bound to active set.
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. |
ensureLI | Ensure linear independence by exchange rules by default. |
Definition at line 3371 of file external_packages/qpOASES-3.0beta/src/QProblem.cpp.
|
protected |
Checks if new active bound to be added is linearly dependent from from row of the active constraints matrix.
number | Number of bound to be added to active set. |
Definition at line 1953 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/SRC/QProblem.cpp.
|
protected |
Checks if new active bound to be added is linearly dependent from from row of the active constraints matrix.
number | Number of bound to be added to active set. |
|
protectedvirtual |
Checks if new active bound to be added is linearly dependent from from row of the active constraints matrix.
number | Number of bound to be added to active set. |
Reimplemented in SQProblemSchur.
|
protected |
Checks if new active bound to be added is linearly dependent from from row of the active constraints matrix.
number | Number of bound to be added to active set. |
|
protected |
Ensures linear independence of constraint matrix when a new bound is added. To this end a bound or constraint is removed simultaneously if necessary.
number | Number of bound to be added to active set. |
B_status | Status of new active bound. |
Definition at line 1975 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/SRC/QProblem.cpp.
|
protected |
Ensures linear independence of constraint matrix when a new bound is added. To this end a bound or constraint is removed simultaneously if necessary.
number | Number of bound to be added to active set. |
B_status | Status of new active bound. |
|
protectedvirtual |
Ensures linear independence of constraint matrix when a new bound is added. To this end a bound or constraint is removed simultaneously if necessary.
number | Number of bound to be added to active set. |
B_status | Status of new active bound. |
Reimplemented in SQProblemSchur.
|
protected |
Ensures linear independence of constraint matrix when a new bound is added. To this end a bound or constraint is removed simultaneously if necessary.
number | Number of bound to be added to active set. |
B_status | Status of new active bound. |
|
protected |
Adds a constraint to active set.
number | Number of constraint to be added to active set. |
C_status | Status of new active constraint. |
updateCholesky | Flag indicating if Cholesky decomposition shall be updated. |
Definition at line 1339 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/SRC/QProblem.cpp.
|
protected |
Adds a constraint to active set.
number | Number of constraint to be added to active set. |
C_status | Status of new active constraint. |
updateCholesky | Flag indicating if Cholesky decomposition shall be updated. |
|
protectedvirtual |
Adds a constraint to active set.
number | Number of constraint to be added to active set. |
C_status | Status of new active constraint. |
updateCholesky | Flag indicating if Cholesky decomposition shall be updated. |
ensureLI | Ensure linear independence by exchange rules by default. |
Reimplemented in SQProblemSchur.
|
protected |
Adds a constraint to active set.
number | Number of constraint to be added to active set. |
C_status | Status of new active constraint. |
updateCholesky | Flag indicating if Cholesky decomposition shall be updated. |
ensureLI | Ensure linear independence by exchange rules by default. |
Definition at line 2901 of file external_packages/qpOASES-3.0beta/src/QProblem.cpp.
|
protected |
Checks if new active constraint to be added is linearly dependent from from row of the active constraints matrix.
number | Number of constraint to be added to active set. |
Definition at line 1493 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/SRC/QProblem.cpp.
|
protected |
Checks if new active constraint to be added is linearly dependent from from row of the active constraints matrix.
number | Number of constraint to be added to active set. |
|
protectedvirtual |
Checks if new active constraint to be added is linearly dependent from from row of the active constraints matrix.
number | Number of constraint to be added to active set. |
Reimplemented in SQProblemSchur.
|
protected |
Checks if new active constraint to be added is linearly dependent from from row of the active constraints matrix.
number | Number of constraint to be added to active set. |
|
protected |
Ensures linear independence of constraint matrix when a new constraint is added. To this end a bound or constraint is removed simultaneously if necessary.
number | Number of constraint to be added to active set. |
C_status | Status of new active bound. |
Definition at line 1527 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/SRC/QProblem.cpp.
|
protected |
Ensures linear independence of constraint matrix when a new constraint is added. To this end a bound or constraint is removed simultaneously if necessary.
number | Number of constraint to be added to active set. |
C_status | Status of new active bound. |
|
protectedvirtual |
Ensures linear independence of constraint matrix when a new constraint is added. To this end a bound or constraint is removed simultaneously if necessary.
number | Number of constraint to be added to active set. |
C_status | Status of new active bound. |
Reimplemented in SQProblemSchur.
|
protected |
Ensures linear independence of constraint matrix when a new constraint is added. To this end a bound or constraint is removed simultaneously if necessary.
number | Number of constraint to be added to active set. |
C_status | Status of new active bound. |
|
protected |
Checks if lower/upper (constraints') bounds remain consistent (i.e. if lb <= ub and lbA <= ubA ) during the current step.
delta_lb | Step direction of lower bounds. |
delta_ub | Step direction of upper bounds. |
delta_lbA | Step direction of lower constraints' bounds. |
delta_ubA | Step direction of upper constraints' bounds. |
Definition at line 3496 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/SRC/QProblem.cpp.
|
protected |
Checks if lower/upper (constraints') bounds remain consistent (i.e. if lb <= ub and lbA <= ubA ) during the current step.
delta_lb | Step direction of lower bounds. |
delta_ub | Step direction of upper bounds. |
delta_lbA | Step direction of lower constraints' bounds. |
delta_ubA | Step direction of upper constraints' bounds. |
|
protected |
Decides if lower bounds are smaller than upper bounds
lb | Vector of lower bounds |
ub | Vector of upper bounds |
lbA | Vector of lower constraints |
ubA | Vector of upper constraints |
|
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 2514 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/SRC/QProblem.cpp.
|
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 2526 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/SRC/QProblem.cpp.
|
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 |
|
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 |
|
protected |
Solves the system Ta = b or T^Ta = b where T is a reverse upper triangular matrix.
b | Right hand side vector. |
transposed | Indicates if the transposed system shall be solved. |
a | Output: Solution vector |
Definition at line 2586 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/SRC/QProblem.cpp.
|
protected |
Solves the system Ta = b or T^Ta = b where T is a reverse upper triangular matrix.
b | Right hand side vector. |
transposed | Indicates if the transposed system shall be solved. |
a | Output: Solution vector |
|
protectedvirtual |
Solves the system Ta = b or T^Ta = b where T is a reverse upper triangular matrix.
b | Right hand side vector. |
transposed | Indicates if the transposed system shall be solved. |
a | Output: Solution vector |
Reimplemented in SQProblemSchur.
|
protected |
Solves the system Ta = b or T^Ta = b where T is a reverse upper triangular matrix.
b | Right hand side vector. |
transposed | Indicates if the transposed system shall be solved. |
a | Output: Solution vector |
Definition at line 4547 of file external_packages/qpOASES-3.0beta/src/QProblem.cpp.
|
protected |
Updates the active set.
BC_idx | Index of blocking constraint. |
BC_status | Status of blocking constraint. |
BC_isBound | Indicates if blocking constraint is a bound. |
|
protected |
Updates the active set.
BC_idx | Index of blocking constraint. |
BC_status | Status of blocking constraint. |
BC_isBound | Indicates if blocking constraint is a bound. |
Definition at line 5399 of file external_packages/qpOASES-3.0beta/src/QProblem.cpp.
|
protected |
Determines the maximum violation of the KKT optimality conditions of the current iterate within the QProblem object.
Definition at line 3656 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/SRC/QProblem.cpp.
|
protected |
Determines the maximum violation of the KKT optimality conditions of the current iterate within the QProblem object.
|
protected |
Frees all allocated memory.
|
protected |
Frees all allocated memory.
Definition at line 1321 of file external_packages/qpOASES-3.0beta/src/QProblem.cpp.
|
protected |
Computes initial Cholesky decomposition of the projected Hessian making use of the function setupCholeskyDecomposition() or setupCholeskyDecompositionProjected().
Definition at line 466 of file external_packages/qpOASES-3.0beta/src/QProblem.cpp.
|
protectedvirtual |
Computes the Cholesky decomposition of the projected Hessian (i.e. R^T*R = Z^T*H*Z). Note: If Hessian turns out not to be positive definite, the Hessian type is set to HST_SEMIDEF accordingly.
Reimplemented in SQProblemSchur.
Definition at line 2008 of file external_packages/qpOASES-3.2.0/src/QProblem.cpp.
|
protected |
Copies all members from given rhs object.
rhs | Rhs object. |
|
protected |
Copies all members from given rhs object.
rhs | Rhs object. |
Definition at line 1414 of file external_packages/qpOASES-3.0beta/src/QProblem.cpp.
|
protected |
Determines step direction of the shift of the QP data.
g_new | New gradient vector. |
lbA_new | New lower constraints' bounds. |
ubA_new | New upper constraints' bounds. |
lb_new | New lower bounds. |
ub_new | New upper bounds. |
delta_g | Output: Step direction of gradient vector. |
delta_lbA | Output: Step direction of lower constraints' bounds. |
delta_ubA | Output: Step direction of upper constraints' bounds. |
delta_lb | Output: Step direction of lower bounds. |
delta_ub | Output: Step direction of upper bounds. |
Delta_bC_isZero | Output: Indicates if active constraints' bounds are to be shifted. |
Delta_bB_isZero | Output: Indicates if active bounds are to be shifted. |
|
protected |
Determines step direction of the shift of the QP data.
g_new | New gradient vector. |
lbA_new | New lower constraints' bounds. |
ubA_new | New upper constraints' bounds. |
lb_new | New lower bounds. |
ub_new | New upper bounds. |
delta_g | Output: Step direction of gradient vector. |
delta_lbA | Output: Step direction of lower constraints' bounds. |
delta_ubA | Output: Step direction of upper constraints' bounds. |
delta_lb | Output: Step direction of lower bounds. |
delta_ub | Output: Step direction of upper bounds. |
Delta_bC_isZero | Output: Indicates if active constraints' bounds are to be shifted. |
Delta_bB_isZero | Output: Indicates if active bounds are to be shifted. |
Definition at line 4600 of file external_packages/qpOASES-3.0beta/src/QProblem.cpp.
|
protectedvirtual |
Determines step direction of the homotopy path.
delta_g | Step direction of gradient vector. |
delta_lbA | Step direction of lower constraints' bounds. |
delta_ubA | Step direction of upper constraints' bounds. |
delta_lb | Step direction of lower bounds. |
delta_ub | Step direction of upper bounds. |
Delta_bC_isZero | Indicates if active constraints' bounds are to be shifted. |
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_yAC | Output: Dual homotopy step direction of active constraints' multiplier. |
delta_yFX | Output: Dual homotopy step direction of fixed variables' multiplier. |
Reimplemented in SQProblemSchur.
|
protected |
Determines step direction of the homotopy path.
delta_g | Step direction of gradient vector. |
delta_lbA | Step direction of lower constraints' bounds. |
delta_ubA | Step direction of upper constraints' bounds. |
delta_lb | Step direction of lower bounds. |
delta_ub | Step direction of upper bounds. |
Delta_bC_isZero | Indicates if active constraints' bounds are to be shifted. |
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_yAC | Output: Dual homotopy step direction of active constraints' multiplier. |
delta_yFX | Output: Dual homotopy step direction of fixed variables' multiplier. |
Definition at line 4666 of file external_packages/qpOASES-3.0beta/src/QProblem.cpp.
|
protected |
Drops the blocking bound/constraint that led to infeasibility, or finds another bound/constraint to drop according to drop priorities.
BC_number | Number of the bound or constraint to be added. |
BC_status | New status of the bound or constraint to be added. |
BC_isBound | Whether a bound or a constraint is to be added. |
xiB | (not yet documented) |
xiC | (not yet documented) |
Definition at line 6234 of file external_packages/qpOASES-3.2.0/src/QProblem.cpp.
|
protected |
Ensure non-zero curvature by primal jump.
removeBoundNotConstraint | SubjectTo to be removed is a bound. |
remIdx | Index of bound/constraint to be removed. |
exchangeHappened | Output: Exchange was necessary to ensure. |
addBoundNotConstraint | SubjectTo to be added is a bound. |
addIdx | Index of bound/constraint to be added. |
addStatus | Status of bound/constraint to be added. |
|
protected |
Ensure non-zero curvature by primal jump.
removeBoundNotConstraint | SubjectTo to be removed is a bound. |
remIdx | Index of bound/constraint to be removed. |
exchangeHappened | Output: Exchange was necessary to ensure. |
addBoundNotConstraint | SubjectTo to be added is a bound. |
addIdx | Index of bound/constraint to be added. |
addStatus | Status of bound/constraint to be added. |
Definition at line 4306 of file external_packages/qpOASES-3.0beta/src/QProblem.cpp.
|
inline |
Returns constraint matrix of the QP (deep copy).
_A | Array of appropriate dimension for copying constraint matrix. |
|
inline |
Returns a single row of constraint matrix of the QP (deep copy).
number | Number of entry to be returned. |
row | Array of appropriate dimension for copying (number)th constraint. |
|
inline |
Returns constraint matrix of the QP (deep copy).
_A | Array of appropriate dimension for copying constraint matrix. |
|
inline |
Returns a single row of constraint matrix of the QP (deep copy).
number | Number of entry to be returned. |
row | Array of appropriate dimension for copying (number)th constraint. |
|
inline |
Returns current constraints object of the QP (deep copy).
_constraints | Output: Constraints object. |
|
inline |
Returns current constraints object of the QP (deep copy).
_constraints | Output: Constraints object. |
|
inline |
Returns current constraints object of the QP (deep copy).
_constraints | Output: Constraints object. |
|
inline |
Returns current constraints object of the QP (deep copy).
_constraints | Output: Constraints object. |
|
virtual |
Returns the dual solution vector (deep copy).
yOpt | Output: Dual solution vector (if QP has been solved). |
Reimplemented from QProblemB.
Definition at line 477 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/SRC/QProblem.cpp.
|
virtual |
|
virtual |
|
virtual |
returnValue QProblem::getFreeVariablesFlags | ( | BooleanType * | varIsFree | ) |
Set the incoming array to true for each variable entry that is in the set of free variables
Definition at line 1044 of file external_packages/qpOASES-3.2.0/src/QProblem.cpp.
|
inline |
Returns lower constraints' bound vector of the QP (deep copy).
_lbA | Array of appropriate dimension for copying lower constraints' bound vector. |
|
inline |
Returns single entry of lower constraints' bound vector of the QP.
number | Number of entry to be returned. |
value | Output: lbA[number]. |
|
inline |
Returns lower constraints' bound vector of the QP (deep copy).
_lbA | Array of appropriate dimension for copying lower constraints' bound vector. |
|
inline |
Returns single entry of lower constraints' bound vector of the QP.
number | Number of entry to be returned. |
value | Output: lbA[number]. |
|
inline |
Returns the number of active constraints.
|
inline |
Returns the number of active constraints.
|
inline |
Returns the number of active constraints.
|
inline |
Returns the number of active constraints.
|
inline |
Returns the number of constraints.
|
inline |
Returns the number of constraints.
|
inline |
Returns the number of constraints.
|
inline |
Returns the number of constraints.
|
inline |
Returns the number of (implicitly defined) equality constraints.
|
inline |
Returns the number of (implicitly defined) equality constraints.
|
inline |
Returns the number of (implicitly defined) equality constraints.
|
inline |
Returns the number of (implicitly defined) equality constraints.
|
inline |
Returns the number of inactive constraints.
|
inline |
Returns the number of inactive constraints.
|
inline |
Returns the number of inactive constraints.
|
inline |
Returns the number of inactive constraints.
int QProblem::getNZ | ( | ) |
Returns the dimension of null space.
Definition at line 467 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/SRC/QProblem.cpp.
int QProblem::getNZ | ( | ) |
Returns the dimension of null space.
|
virtual |
|
virtual |
Returns the dimension of null space.
Reimplemented from QProblemB.
Definition at line 1117 of file external_packages/qpOASES-3.0beta/src/QProblem.cpp.
|
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. |
lbA_new | Final lower constraint bounds. |
ubA_new | Final upper constraint bounds. |
Definition at line 5342 of file external_packages/qpOASES-3.2.0/src/QProblem.cpp.
|
inline |
Returns upper constraints' bound vector of the QP (deep copy).
_ubA | Array of appropriate dimension for copying upper constraints' bound vector. |
|
inline |
Returns single entry of upper constraints' bound vector of the QP.
number | Number of entry to be returned. |
value | Output: ubA[number]. |
|
inline |
Returns upper constraints' bound vector of the QP (deep copy).
_ubA | Array of appropriate dimension for copying upper constraints' bound vector. |
|
inline |
Returns single entry of upper constraints' bound vector of the QP.
number | Number of entry to be returned. |
value | Output: ubA[number]. |
|
virtual |
Writes a vector with the state of the working set
workingSet | Output: array containing state of the working set. |
Reimplemented from QProblemB.
Definition at line 780 of file external_packages/qpOASES-3.2.0/src/QProblem.cpp.
|
virtual |
Writes a vector with the state of the working set of bounds
workingSetB | Output: array containing state of the working set of bounds. |
Reimplemented from QProblemB.
Definition at line 800 of file external_packages/qpOASES-3.2.0/src/QProblem.cpp.
|
virtual |
Writes a vector with the state of the working set of constraints
workingSetC | Output: array containing state of the working set of constraints. |
Reimplemented from QProblemB.
Definition at line 809 of file external_packages/qpOASES-3.2.0/src/QProblem.cpp.
returnValue QProblem::hotstart | ( | const real_t *const | g_new, |
const real_t *const | lb_new, | ||
const real_t *const | ub_new, | ||
const real_t *const | lbA_new, | ||
const real_t *const | ubA_new, | ||
int & | nWSR, | ||
real_t *const | cputime | ||
) |
Solves QProblem 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. |
lbA_new | Lower constraints' bounds of neighbouring QP to be solved. If no lower constraints' bounds exist, a NULL pointer can be passed. |
ubA_new | Upper constraints' bounds of neighbouring QP to be solved. If no upper constraints' 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 255 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/SRC/QProblem.cpp.
returnValue QProblem::hotstart | ( | const real_t *const | g_new, |
const real_t *const | lb_new, | ||
const real_t *const | ub_new, | ||
const real_t *const | lbA_new, | ||
const real_t *const | ubA_new, | ||
int & | nWSR, | ||
real_t *const | cputime | ||
) |
Solves QProblem 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. |
lbA_new | Lower constraints' bounds of neighbouring QP to be solved. If no lower constraints' bounds exist, a NULL pointer can be passed. |
ubA_new | Upper constraints' bounds of neighbouring QP to be solved. If no upper constraints' 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 QProblem::hotstart | ( | const real_t *const | g_new, |
const real_t *const | lb_new, | ||
const real_t *const | ub_new, | ||
const real_t *const | lbA_new, | ||
const real_t *const | ubA_new, | ||
int_t & | nWSR, | ||
real_t *const | cputime = 0 , |
||
const Bounds *const | guessedBounds = 0 , |
||
const Constraints *const | guessedConstraints = 0 |
||
) |
Solves an initialised QP sequence using the online active set strategy. By default, QP solution is started from previous solution. If a guess for the working set is provided, an initialised homotopy is performed.
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. |
lbA_new | Lower constraints' bounds of neighbouring QP to be solved. If no lower constraints' bounds exist, a NULL pointer can be passed. |
ubA_new | Upper constraints' bounds of neighbouring QP to be solved. If no upper constraints' 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 spent for QP solution (or to perform nWSR iterations). |
guessedBounds | Optimal working set of bounds for solution (xOpt,yOpt). (If a null pointer is passed, the previous working set of bounds is kept!) |
guessedConstraints | Optimal working set of constraints for solution (xOpt,yOpt). (If a null pointer is passed, the previous working set of constraints is kept!) |
returnValue QProblem::hotstart | ( | const char *const | g_file, |
const char *const | lb_file, | ||
const char *const | ub_file, | ||
const char *const | lbA_file, | ||
const char *const | ubA_file, | ||
int_t & | nWSR, | ||
real_t *const | cputime = 0 , |
||
const Bounds *const | guessedBounds = 0 , |
||
const Constraints *const | guessedConstraints = 0 |
||
) |
Solves an initialised QP sequence using the online active set strategy, where QP data is read from files. By default, QP solution is started from previous solution. If a guess for the working set is provided, an initialised homotopy is performed.
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. |
lbA_file | Name of file where lower constraints' bounds, of neighbouring QP to be solved, is stored. If no lower constraints' bounds exist, a NULL pointer can be passed. |
ubA_file | Name of file where upper constraints' bounds, of neighbouring QP to be solved, is stored. If no upper constraints' 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 spent for QP solution (or to perform nWSR iterations). |
guessedBounds | Optimal working set of bounds for solution (xOpt,yOpt). (If a null pointer is passed, the previous working set of bounds is kept!) |
guessedConstraints | Optimal working set of constraints for solution (xOpt,yOpt). (If a null pointer is passed, the previous working set of constraints is kept!) |
returnValue QProblem::hotstart | ( | const real_t *const | g_new, |
const real_t *const | lb_new, | ||
const real_t *const | ub_new, | ||
const real_t *const | lbA_new, | ||
const real_t *const | ubA_new, | ||
int & | nWSR, | ||
real_t *const | cputime | ||
) |
Solves QProblem 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. |
lbA_new | Lower constraints' bounds of neighbouring QP to be solved. If no lower constraints' bounds exist, a NULL pointer can be passed. |
ubA_new | Upper constraints' bounds of neighbouring QP to be solved. If no upper constraints' 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 QProblem::hotstart | ( | const char *const | g_file, |
const char *const | lb_file, | ||
const char *const | ub_file, | ||
const char *const | lbA_file, | ||
const char *const | ubA_file, | ||
int & | nWSR, | ||
real_t *const | cputime | ||
) |
Solves QProblem using 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. |
lbA_file | Name of file where lower constraints' bounds, of neighbouring QP to be solved, is stored. If no lower constraints' bounds exist, a NULL pointer can be passed. |
ubA_file | Name of file where upper constraints' bounds, of neighbouring QP to be solved, is stored. If no upper constraints' 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 809 of file external_packages/qpOASES-3.0beta/src/QProblem.cpp.
returnValue QProblem::hotstart | ( | const real_t *const | g_new, |
const real_t *const | lb_new, | ||
const real_t *const | ub_new, | ||
const real_t *const | lbA_new, | ||
const real_t *const | ubA_new, | ||
int & | nWSR, | ||
real_t *const | cputime, | ||
const Bounds *const | guessedBounds, | ||
const Constraints *const | guessedConstraints | ||
) |
Solves an initialised QProblem 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. |
lbA_new | Lower constraints' bounds of neighbouring QP to be solved. If no lower constraints' bounds exist, a NULL pointer can be passed. |
ubA_new | Upper constraints' bounds of neighbouring QP to be solved. If no upper constraints' 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! |
guessedConstraints | Initial guess for working set of constraints. A null pointer corresponds to an empty working set! |
Definition at line 883 of file external_packages/qpOASES-3.0beta/src/QProblem.cpp.
returnValue QProblem::hotstart | ( | const char *const | g_file, |
const char *const | lb_file, | ||
const char *const | ub_file, | ||
const char *const | lbA_file, | ||
const char *const | ubA_file, | ||
int & | nWSR, | ||
real_t *const | cputime, | ||
const Bounds *const | guessedBounds, | ||
const Constraints *const | guessedConstraints | ||
) |
Solves an initialised QProblem 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. |
lbA_file | Name of file where lower constraints' bounds, of neighbouring QP to be solved, is stored. If no lower constraints' bounds exist, a NULL pointer can be passed. |
ubA_file | Name of file where upper constraints' bounds, of neighbouring QP to be solved, is stored. If no upper constraints' 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! |
guessedConstraints | Initial guess for working set of constraints. A null pointer corresponds to an empty working set! |
Definition at line 968 of file external_packages/qpOASES-3.0beta/src/QProblem.cpp.
|
protected |
Determines step direction of the shift of the QP data.
FX_idx | Index array of fixed variables. |
AC_idx | Index array of active constraints. |
g_new | New gradient vector. |
lbA_new | New lower constraints' bounds. |
ubA_new | New upper constraints' bounds. |
lb_new | New lower bounds. |
ub_new | New upper bounds. |
delta_g | Output: Step direction of gradient vector. |
delta_lbA | Output: Step direction of lower constraints' bounds. |
delta_ubA | Output: Step direction of upper constraints' bounds. |
delta_lb | Output: Step direction of lower bounds. |
delta_ub | Output: Step direction of upper bounds. |
Delta_bC_isZero | Output: Indicates if active constraints' bounds are to be shifted. |
Delta_bB_isZero | Output: Indicates if active bounds are to be shifted. |
Definition at line 2639 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/SRC/QProblem.cpp.
|
protected |
Determines step direction of the shift of the QP data.
FX_idx | Index array of fixed variables. |
AC_idx | Index array of active constraints. |
g_new | New gradient vector. |
lbA_new | New lower constraints' bounds. |
ubA_new | New upper constraints' bounds. |
lb_new | New lower bounds. |
ub_new | New upper bounds. |
delta_g | Output: Step direction of gradient vector. |
delta_lbA | Output: Step direction of lower constraints' bounds. |
delta_ubA | Output: Step direction of upper constraints' bounds. |
delta_lb | Output: Step direction of lower bounds. |
delta_ub | Output: Step direction of upper bounds. |
Delta_bC_isZero | Output: Indicates if active constraints' bounds are to be shifted. |
Delta_bB_isZero | Output: Indicates if active bounds are to be shifted. |
|
protected |
Determines step direction of the homotopy path.
FR_idx | Index array of free variables. |
FX_idx | Index array of fixed variables. |
AC_idx | Index array of active constraints. |
delta_g | Step direction of gradient vector. |
delta_lbA | Step direction of lower constraints' bounds. |
delta_ubA | Step direction of upper constraints' bounds. |
delta_lb | Step direction of lower bounds. |
delta_ub | Step direction of upper bounds. |
Delta_bC_isZero | Indicates if active constraints' bounds are to be shifted. |
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_yAC | Output: Dual homotopy step direction of active constraints' multiplier. |
delta_yFX | Output: Dual homotopy step direction of fixed variables' multiplier. |
Definition at line 2697 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/SRC/QProblem.cpp.
|
protected |
Determines step direction of the homotopy path.
FR_idx | Index array of free variables. |
FX_idx | Index array of fixed variables. |
AC_idx | Index array of active constraints. |
delta_g | Step direction of gradient vector. |
delta_lbA | Step direction of lower constraints' bounds. |
delta_ubA | Step direction of upper constraints' bounds. |
delta_lb | Step direction of lower bounds. |
delta_ub | Step direction of upper bounds. |
Delta_bC_isZero | Indicates if active constraints' bounds are to be shifted. |
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_yAC | Output: Dual homotopy step direction of active constraints' multiplier. |
delta_yFX | Output: Dual homotopy step direction of fixed variables' multiplier. |
|
protected |
Determines the maximum possible step length along the homotopy path.
FR_idx | Index array of free variables. |
FX_idx | Index array of fixed variables. |
AC_idx | Index array of active constraints. |
IAC_idx | Index array of inactive constraints. |
delta_lbA | Step direction of lower constraints' bounds. |
delta_ubA | Step direction of upper constraints' bounds. |
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_yAC | Dual homotopy step direction of active constraints' multiplier. |
delta_yFX | Dual homotopy step direction of fixed variables' multiplier. |
delta_Ax | Output: Step in vector Ax. |
BC_idx | Output: Index of blocking constraint. |
BC_status | Output: Status of blocking constraint. |
BC_isBound | Output: Indicates if blocking constraint is a bound. |
Definition at line 3052 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/SRC/QProblem.cpp.
|
protected |
Determines the maximum possible step length along the homotopy path.
FR_idx | Index array of free variables. |
FX_idx | Index array of fixed variables. |
AC_idx | Index array of active constraints. |
IAC_idx | Index array of inactive constraints. |
delta_lbA | Step direction of lower constraints' bounds. |
delta_ubA | Step direction of upper constraints' bounds. |
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_yAC | Dual homotopy step direction of active constraints' multiplier. |
delta_yFX | Dual homotopy step direction of fixed variables' multiplier. |
delta_Ax | Output: Step in vector Ax. |
BC_idx | Output: Index of blocking constraint. |
BC_status | Output: Status of blocking constraint. |
BC_isBound | Output: Indicates if blocking constraint is a bound. |
|
protected |
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. |
AC_idx | Index array of active constraints. |
IAC_idx | Index array of inactive constraints. |
delta_g | Step direction of gradient vector. |
delta_lbA | Step direction of lower constraints' bounds. |
delta_ubA | Step direction of upper constraints' bounds. |
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_yAC | Dual homotopy step direction of active constraints' multiplier. |
delta_yFX | Dual homotopy step direction of fixed variables' multiplier. |
delta_Ax | Step in vector Ax. |
BC_idx | Index of blocking constraint. |
BC_status | Status of blocking constraint. |
BC_isBound | Indicates if blocking constraint is a bound. |
Definition at line 3318 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/SRC/QProblem.cpp.
|
protected |
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. |
AC_idx | Index array of active constraints. |
IAC_idx | Index array of inactive constraints. |
delta_g | Step direction of gradient vector. |
delta_lbA | Step direction of lower constraints' bounds. |
delta_ubA | Step direction of upper constraints' bounds. |
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_yAC | Dual homotopy step direction of active constraints' multiplier. |
delta_yFX | Dual homotopy step direction of fixed variables' multiplier. |
delta_Ax | Step in vector Ax. |
BC_idx | Index of blocking constraint. |
BC_status | Status of blocking constraint. |
BC_isBound | Indicates if blocking constraint is a bound. |
returnValue QProblem::init | ( | const real_t *const | _H, |
const real_t *const | _g, | ||
const real_t *const | _A, | ||
const real_t *const | _lb, | ||
const real_t *const | _ub, | ||
const real_t *const | _lbA, | ||
const real_t *const | _ubA, | ||
int & | nWSR, | ||
const real_t *const | yOpt = 0 , |
||
real_t *const | cputime = 0 |
||
) |
Initialises a QProblem 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. |
_A | Constraint matrix. |
_lb | Lower bound vector (on variables). If no lower bounds exist, a NULL pointer can be passed. |
_ub | Upper bound vector (on variables). If no upper bounds exist, a NULL pointer can be passed. |
_lbA | Lower constraints' bound vector. If no lower constraints' bounds exist, a NULL pointer can be passed. |
_ubA | Upper constraints' bound vector. If no lower constraints' 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 237 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/SRC/QProblem.cpp.
returnValue QProblem::init | ( | const real_t *const | _H, |
const real_t *const | _g, | ||
const real_t *const | _A, | ||
const real_t *const | _lb, | ||
const real_t *const | _ub, | ||
const real_t *const | _lbA, | ||
const real_t *const | _ubA, | ||
int & | nWSR, | ||
const real_t *const | yOpt = 0 , |
||
real_t *const | cputime = 0 |
||
) |
Initialises a QProblem 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. |
_A | Constraint matrix. |
_lb | Lower bound vector (on variables). If no lower bounds exist, a NULL pointer can be passed. |
_ub | Upper bound vector (on variables). If no upper bounds exist, a NULL pointer can be passed. |
_lbA | Lower constraints' bound vector. If no lower constraints' bounds exist, a NULL pointer can be passed. |
_ubA | Upper constraints' bound vector. If no lower constraints' 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 QProblem::init | ( | SymmetricMatrix * | _H, |
const real_t *const | _g, | ||
Matrix * | _A, | ||
const real_t *const | _lb, | ||
const real_t *const | _ub, | ||
const real_t *const | _lbA, | ||
const real_t *const | _ubA, | ||
int & | nWSR, | ||
real_t *const | cputime | ||
) |
Initialises a QProblem 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. |
_A | Constraint matrix. |
_lb | Lower bound vector (on variables). If no lower bounds exist, a NULL pointer can be passed. |
_ub | Upper bound vector (on variables). If no upper bounds exist, a NULL pointer can be passed. |
_lbA | Lower constraints' bound vector. If no lower constraints' bounds exist, a NULL pointer can be passed. |
_ubA | Upper constraints' bound vector. If no lower constraints' 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 230 of file external_packages/qpOASES-3.0beta/src/QProblem.cpp.
returnValue QProblem::init | ( | SymmetricMatrix * | _H, |
const real_t *const | _g, | ||
Matrix * | _A, | ||
const real_t *const | _lb, | ||
const real_t *const | _ub, | ||
const real_t *const | _lbA, | ||
const real_t *const | _ubA, | ||
int_t & | nWSR, | ||
real_t *const | cputime = 0 , |
||
const real_t *const | xOpt = 0 , |
||
const real_t *const | yOpt = 0 , |
||
const Bounds *const | guessedBounds = 0 , |
||
const Constraints *const | guessedConstraints = 0 , |
||
const real_t *const | _R = 0 |
||
) |
Initialises a QP problem with given QP data and tries to solve it using at most nWSR iterations. Depending on the parameter constellation it:
Note: This function internally calls solveInitialQP for initialisation!
\return SUCCESSFUL_RETURN \n RET_INIT_FAILED \n RET_INIT_FAILED_CHOLESKY \n RET_INIT_FAILED_TQ \n RET_INIT_FAILED_HOTSTART \n RET_INIT_FAILED_INFEASIBILITY \n RET_INIT_FAILED_UNBOUNDEDNESS \n RET_MAX_NWSR_REACHED \n RET_INVALID_ARGUMENTS
_H | Hessian matrix (a shallow copy is made). |
_g | Gradient vector. |
_A | Constraint matrix (a shallow copy is made). |
_lb | Lower bound vector (on variables). If no lower bounds exist, a NULL pointer can be passed. |
_ub | Upper bound vector (on variables). If no upper bounds exist, a NULL pointer can be passed. |
_lbA | Lower constraints' bound vector. If no lower constraints' bounds exist, a NULL pointer can be passed. |
_ubA | Upper constraints' bound vector. If no lower constraints' 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 spent for QP initialisation (if pointer passed). |
xOpt | Optimal primal solution vector. (If a null pointer is passed, the old primal solution is kept!) |
yOpt | Optimal dual solution vector. (If a null pointer is passed, the old dual solution is kept!) |
guessedBounds | Optimal working set of bounds for solution (xOpt,yOpt). (If a null pointer is passed, all bounds are assumed inactive!) |
guessedConstraints | Optimal working set of constraints for solution (xOpt,yOpt). (If a null pointer is passed, all constraints are assumed inactive!) |
_R | Pre-computed (upper triangular) Cholesky factor of Hessian matrix. The Cholesky factor must be stored in a real_t array of size nV*nV in row-major format. Note: Only used if xOpt/yOpt and gB are NULL! (If a null pointer is passed, Cholesky decomposition is computed internally!) |
Definition at line 244 of file external_packages/qpOASES-3.2.0/src/QProblem.cpp.
returnValue QProblem::init | ( | const real_t *const | _H, |
const real_t *const | _R, | ||
const real_t *const | _g, | ||
const real_t *const | _A, | ||
const real_t *const | _lb, | ||
const real_t *const | _ub, | ||
const real_t *const | _lbA, | ||
const real_t *const | _ubA, | ||
int & | nWSR, | ||
const real_t *const | yOpt = 0 , |
||
real_t *const | cputime = 0 |
||
) |
Initialises a QProblem 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. |
_A | Constraint matrix. |
_lb | Lower bound vector (on variables). If no lower bounds exist, a NULL pointer can be passed. |
_ub | Upper bound vector (on variables). If no upper bounds exist, a NULL pointer can be passed. |
_lbA | Lower constraints' bound vector. If no lower constraints' bounds exist, a NULL pointer can be passed. |
_ubA | Upper constraints' bound vector. If no lower constraints' 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 251 of file external_packages/qpoases/SRC/QProblem.cpp.
returnValue QProblem::init | ( | const real_t *const | _H, |
const real_t *const | _g, | ||
const real_t *const | _A, | ||
const real_t *const | _lb, | ||
const real_t *const | _ub, | ||
const real_t *const | _lbA, | ||
const real_t *const | _ubA, | ||
int & | nWSR, | ||
real_t *const | cputime | ||
) |
Initialises a QProblem 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. |
_A | Constraint matrix. |
_lb | Lower bound vector (on variables). If no lower bounds exist, a NULL pointer can be passed. |
_ub | Upper bound vector (on variables). If no upper bounds exist, a NULL pointer can be passed. |
_lbA | Lower constraints' bound vector. If no lower constraints' bounds exist, a NULL pointer can be passed. |
_ubA | Upper constraints' bound vector. If no lower constraints' 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 258 of file external_packages/qpOASES-3.0beta/src/QProblem.cpp.
returnValue QProblem::init | ( | const real_t *const | _H, |
const real_t *const | _g, | ||
const real_t *const | _A, | ||
const real_t *const | _lb, | ||
const real_t *const | _ub, | ||
const real_t *const | _lbA, | ||
const real_t *const | _ubA, | ||
int_t & | nWSR, | ||
real_t *const | cputime = 0 , |
||
const real_t *const | xOpt = 0 , |
||
const real_t *const | yOpt = 0 , |
||
const Bounds *const | guessedBounds = 0 , |
||
const Constraints *const | guessedConstraints = 0 , |
||
const real_t *const | _R = 0 |
||
) |
Initialises a QP problem with given QP data and tries to solve it using at most nWSR iterations. Depending on the parameter constellation it:
Note: This function internally calls solveInitialQP for initialisation!
\return SUCCESSFUL_RETURN \n RET_INIT_FAILED \n RET_INIT_FAILED_CHOLESKY \n RET_INIT_FAILED_TQ \n RET_INIT_FAILED_HOTSTART \n RET_INIT_FAILED_INFEASIBILITY \n RET_INIT_FAILED_UNBOUNDEDNESS \n RET_MAX_NWSR_REACHED \n RET_INVALID_ARGUMENTS
_H | Hessian matrix (a shallow copy is made). If Hessian matrix is trivial, a NULL pointer can be passed. |
_g | Gradient vector. |
_A | Constraint matrix (a shallow copy is made). |
_lb | Lower bound vector (on variables). If no lower bounds exist, a NULL pointer can be passed. |
_ub | Upper bound vector (on variables). If no upper bounds exist, a NULL pointer can be passed. |
_lbA | Lower constraints' bound vector. If no lower constraints' bounds exist, a NULL pointer can be passed. |
_ubA | Upper constraints' bound vector. If no lower constraints' 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 spent for QP initialisation (if pointer passed). |
xOpt | Optimal primal solution vector. (If a null pointer is passed, the old primal solution is kept!) |
yOpt | Optimal dual solution vector. (If a null pointer is passed, the old dual solution is kept!) |
guessedBounds | Optimal working set of bounds for solution (xOpt,yOpt). (If a null pointer is passed, all bounds are assumed inactive!) |
guessedConstraints | Optimal working set of constraints for solution (xOpt,yOpt). (If a null pointer is passed, all constraints are assumed inactive!) |
_R | Pre-computed (upper triangular) Cholesky factor of Hessian matrix. The Cholesky factor must be stored in a real_t array of size nV*nV in row-major format. Note: Only used if xOpt/yOpt and gB are NULL! (If a null pointer is passed, Cholesky decomposition is computed internally!) |
Definition at line 302 of file external_packages/qpOASES-3.2.0/src/QProblem.cpp.
returnValue QProblem::init | ( | const char *const | H_file, |
const char *const | g_file, | ||
const char *const | A_file, | ||
const char *const | lb_file, | ||
const char *const | ub_file, | ||
const char *const | lbA_file, | ||
const char *const | ubA_file, | ||
int & | nWSR, | ||
real_t *const | cputime | ||
) |
Initialises a QProblem 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. |
A_file | Name of file where constraint matrix 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. |
lbA_file | Name of file where lower constraints' bound vector. If no lower constraints' bounds exist, a NULL pointer can be passed. |
ubA_file | Name of file where upper constraints' bound vector. If no upper constraints' 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 286 of file external_packages/qpOASES-3.0beta/src/QProblem.cpp.
returnValue QProblem::init | ( | SymmetricMatrix * | _H, |
const real_t *const | _g, | ||
Matrix * | _A, | ||
const real_t *const | _lb, | ||
const real_t *const | _ub, | ||
const real_t *const | _lbA, | ||
const real_t *const | _ubA, | ||
int & | nWSR, | ||
real_t *const | cputime, | ||
const real_t *const | xOpt, | ||
const real_t *const | yOpt, | ||
const Bounds *const | guessedBounds, | ||
const Constraints *const | guessedConstraints | ||
) |
Initialises a QProblem with given QP data and solves it depending on the parameter constellation:
_H | Hessian matrix. |
_g | Gradient vector. |
_A | Constraint matrix. |
_lb | Lower bound vector (on variables). If no lower bounds exist, a NULL pointer can be passed. |
_ub | Upper bound vector (on variables). If no upper bounds exist, a NULL pointer can be passed. |
_lbA | Lower constraints' bound vector. If no lower constraints' bounds exist, a NULL pointer can be passed. |
_ubA | Upper constraints' bound vector. If no lower constraints' 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. (If a null pointer is passed, the old primal solution is kept!) |
yOpt | Optimal dual solution vector. (If a null pointer is passed, the old dual solution is kept!) |
guessedBounds | Optimal working set of bounds for solution (xOpt,yOpt). |
guessedConstraints | Optimal working set of constraints for solution (xOpt,yOpt). |
Definition at line 314 of file external_packages/qpOASES-3.0beta/src/QProblem.cpp.
returnValue QProblem::init | ( | const char *const | H_file, |
const char *const | g_file, | ||
const char *const | A_file, | ||
const char *const | lb_file, | ||
const char *const | ub_file, | ||
const char *const | lbA_file, | ||
const char *const | ubA_file, | ||
int_t & | nWSR, | ||
real_t *const | cputime = 0 , |
||
const real_t *const | xOpt = 0 , |
||
const real_t *const | yOpt = 0 , |
||
const Bounds *const | guessedBounds = 0 , |
||
const Constraints *const | guessedConstraints = 0 , |
||
const char *const | R_file = 0 |
||
) |
Initialises a QP problem with given data to be read from files and solves it using at most nWSR iterations. Depending on the parameter constellation it:
Note: This function internally calls solveInitialQP for initialisation!
\return SUCCESSFUL_RETURN \n RET_INIT_FAILED \n RET_INIT_FAILED_CHOLESKY \n RET_INIT_FAILED_TQ \n RET_INIT_FAILED_HOTSTART \n RET_INIT_FAILED_INFEASIBILITY \n RET_INIT_FAILED_UNBOUNDEDNESS \n RET_MAX_NWSR_REACHED \n RET_UNABLE_TO_READ_FILE \n RET_INVALID_ARGUMENTS
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. |
A_file | Name of file where constraint matrix 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. |
lbA_file | Name of file where lower constraints' bound vector. If no lower constraints' bounds exist, a NULL pointer can be passed. |
ubA_file | Name of file where upper constraints' bound vector. If no upper constraints' 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 spent for QP initialisation (if pointer passed). |
xOpt | Optimal primal solution vector. (If a null pointer is passed, the old primal solution is kept!) |
yOpt | Optimal dual solution vector. (If a null pointer is passed, the old dual solution is kept!) |
guessedBounds | Optimal working set of bounds for solution (xOpt,yOpt). (If a null pointer is passed, all bounds are assumed inactive!) |
guessedConstraints | Optimal working set of constraints for solution (xOpt,yOpt). (If a null pointer is passed, all constraints are assumed inactive!) |
R_file | Name of the file where a pre-computed (upper triangular) Cholesky factor of the Hessian matrix is stored. (If a null pointer is passed, Cholesky decomposition is computed internally!) |
Definition at line 360 of file external_packages/qpOASES-3.2.0/src/QProblem.cpp.
returnValue QProblem::init | ( | const real_t *const | _H, |
const real_t *const | _g, | ||
const real_t *const | _A, | ||
const real_t *const | _lb, | ||
const real_t *const | _ub, | ||
const real_t *const | _lbA, | ||
const real_t *const | _ubA, | ||
int & | nWSR, | ||
real_t *const | cputime, | ||
const real_t *const | xOpt, | ||
const real_t *const | yOpt, | ||
const Bounds *const | guessedBounds, | ||
const Constraints *const | guessedConstraints | ||
) |
Initialises a QProblem with given QP data and solves it depending on the parameter constellation:
_H | Hessian matrix. If Hessian matrix is trivial, a NULL pointer can be passed. |
_g | Gradient vector. |
_A | Constraint matrix. |
_lb | Lower bound vector (on variables). If no lower bounds exist, a NULL pointer can be passed. |
_ub | Upper bound vector (on variables). If no upper bounds exist, a NULL pointer can be passed. |
_lbA | Lower constraints' bound vector. If no lower constraints' bounds exist, a NULL pointer can be passed. |
_ubA | Upper constraints' bound vector. If no lower constraints' 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. (If a null pointer is passed, the old primal solution is kept!) |
yOpt | Optimal dual solution vector. (If a null pointer is passed, the old dual solution is kept!) |
guessedBounds | Optimal working set of bounds for solution (xOpt,yOpt). |
guessedConstraints | Optimal working set of constraints for solution (xOpt,yOpt). |
Definition at line 368 of file external_packages/qpOASES-3.0beta/src/QProblem.cpp.
returnValue QProblem::init | ( | const char *const | H_file, |
const char *const | g_file, | ||
const char *const | A_file, | ||
const char *const | lb_file, | ||
const char *const | ub_file, | ||
const char *const | lbA_file, | ||
const char *const | ubA_file, | ||
int & | nWSR, | ||
real_t *const | cputime, | ||
const real_t *const | xOpt, | ||
const real_t *const | yOpt, | ||
const Bounds *const | guessedBounds, | ||
const Constraints *const | guessedConstraints | ||
) |
Initialises a QProblem with given QP data to be read from files and solves it depending on the parameter constellation:
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. |
A_file | Name of file where constraint matrix 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. |
lbA_file | Name of file where lower constraints' bound vector. If no lower constraints' bounds exist, a NULL pointer can be passed. |
ubA_file | Name of file where upper constraints' bound vector. If no upper constraints' 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. (If a null pointer is passed, the old primal solution is kept!) |
yOpt | Optimal dual solution vector. (If a null pointer is passed, the old dual solution is kept!) |
guessedBounds | Optimal working set of bounds for solution (xOpt,yOpt). |
guessedConstraints | Optimal working set of constraints for solution (xOpt,yOpt). |
Definition at line 422 of file external_packages/qpOASES-3.0beta/src/QProblem.cpp.
|
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. |
lbA_file | Name of file where lower constraints' bounds, of neighbouring QP to be solved, is stored. If no lower constraints' bounds exist, a NULL pointer can be passed. |
ubA_file | Name of file where upper constraints' bounds, of neighbouring QP to be solved, is stored. If no upper constraints' 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 |
lbA_new | Output: Lower constraints' bounds of neighbouring QP to be solved |
ubA_new | Output: Upper constraints' bounds of neighbouring QP to be solved |
|
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. |
lbA_file | Name of file where lower constraints' bounds, of neighbouring QP to be solved, is stored. If no lower constraints' bounds exist, a NULL pointer can be passed. |
ubA_file | Name of file where upper constraints' bounds, of neighbouring QP to be solved, is stored. If no upper constraints' 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 |
lbA_new | Output: Lower constraints' bounds of neighbouring QP to be solved |
ubA_new | Output: Upper constraints' bounds of neighbouring QP to be solved |
Definition at line 5981 of file external_packages/qpOASES-3.0beta/src/QProblem.cpp.
|
protected |
Obtains the desired working set for the auxiliary initial QP in accordance with the user specifications (assumes that member AX has already been initialised!)
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 of bounds for solution (xOpt,yOpt). |
guessedConstraints | Guessed working set for solution (xOpt,yOpt). |
auxiliaryBounds | Input: Allocated bound object. Ouput: Working set of constraints for auxiliary QP. |
auxiliaryConstraints | Input: Allocated bound object. Ouput: Working set for auxiliary QP. |
Definition at line 857 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/SRC/QProblem.cpp.
|
protected |
Obtains the desired working set for the auxiliary initial QP in accordance with the user specifications (assumes that member AX has already been initialised!)
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 of bounds for solution (xOpt,yOpt). |
guessedConstraints | Guessed working set for solution (xOpt,yOpt). |
auxiliaryBounds | Input: Allocated bound object. Ouput: Working set of constraints for auxiliary QP. |
auxiliaryConstraints | Input: Allocated bound object. Ouput: Working set for auxiliary QP. |
|
protected |
Obtains the desired working set for the auxiliary initial QP in accordance with the user specifications (assumes that member AX has already been initialised!)
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 of bounds for solution (xOpt,yOpt). |
guessedConstraints | Guessed working set for solution (xOpt,yOpt). |
auxiliaryBounds | Input: Allocated bound object. Ouput: Working set of constraints for auxiliary QP. |
auxiliaryConstraints | Input: Allocated bound object. Ouput: Working set for auxiliary QP. |
|
protected |
Obtains the desired working set for the auxiliary initial QP in accordance with the user specifications (assumes that member AX has already been initialised!)
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 of bounds for solution (xOpt,yOpt). |
guessedConstraints | Guessed working set for solution (xOpt,yOpt). |
auxiliaryBounds | Input: Allocated bound object. Ouput: Working set of constraints for auxiliary QP. |
auxiliaryConstraints | Input: Allocated bound object. Ouput: Working set for auxiliary QP. |
Assignment operator (deep copy).
rhs | Rhs object. |
Definition at line 152 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/SRC/QProblem.cpp.
Assignment operator (deep copy).
rhs | Rhs object. |
Assignment operator (deep copy).
rhs | Rhs object. |
Assignment operator (deep copy).
rhs | Rhs object. |
|
protectedvirtual |
Drift correction at end of each active set iteration
Reimplemented from QProblemB.
|
protectedvirtual |
Drift correction at end of each active set iteration
Reimplemented from QProblemB.
Definition at line 5575 of file external_packages/qpOASES-3.0beta/src/QProblem.cpp.
|
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. |
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. |
|
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. |
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 4284 of file external_packages/qpOASES-3.0beta/src/QProblem.cpp.
|
protectedvirtual |
Ramping Strategy to avoid ties. Modifies homotopy start without changing current active set.
Reimplemented from QProblemB.
|
protectedvirtual |
Ramping Strategy to avoid ties. Modifies homotopy start without changing current active set.
Reimplemented from QProblemB.
Definition at line 5517 of file external_packages/qpOASES-3.0beta/src/QProblem.cpp.
|
protected |
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_lbA | Step direction of lower constraints' bounds. |
delta_ubA | Step direction of upper constraints' bounds. |
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_yAC | Dual homotopy step direction of active constraints' multiplier. |
delta_yFX | Dual homotopy step direction of fixed variables' multiplier. |
BC_idx | Output: Index of blocking constraint. |
BC_status | Output: Status of blocking constraint. |
BC_isBound | Output: Indicates if blocking constraint is a bound. |
|
protected |
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_lbA | Step direction of lower constraints' bounds. |
delta_ubA | Step direction of upper constraints' bounds. |
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_yAC | Dual homotopy step direction of active constraints' multiplier. |
delta_yFX | Dual homotopy step direction of fixed variables' multiplier. |
BC_idx | Output: Index of blocking constraint. |
BC_status | Output: Status of blocking constraint. |
BC_isBound | Output: Indicates if blocking constraint is a bound. |
Definition at line 4997 of file external_packages/qpOASES-3.0beta/src/QProblem.cpp.
|
protected |
Prints concise information on the current iteration.
iter | Number of current iteration. |
BC_idx | Index of blocking constraint. |
BC_status | Status of blocking constraint. |
BC_isBound | Indicates if blocking constraint is a bound. |
homotopyLength | Current homotopy distance. |
isFirstCall | Indicating whether this is the first call for current QP. |
Definition at line 5981 of file external_packages/qpOASES-3.2.0/src/QProblem.cpp.
|
protected |
Prints concise information on the current iteration.
iteration | Number of current iteration. |
BC_idx | Index of blocking constraint. |
BC_status | Status of blocking constraint. |
BC_isBound | Indicates if blocking constraint is a bound. |
Definition at line 6039 of file external_packages/qpOASES-3.0beta/src/QProblem.cpp.
|
virtual |
Prints concise list of properties of the current QP.
Reimplemented from QProblemB.
|
virtual |
Prints concise list of properties of the current QP.
Reimplemented from QProblemB.
Definition at line 1164 of file external_packages/qpOASES-3.0beta/src/QProblem.cpp.
|
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. |
lbA_new | Final lower constraint bounds. |
ubA_new | Final upper constraint bounds. |
Definition at line 5485 of file external_packages/qpOASES-3.0beta/src/QProblem.cpp.
|
protected |
Removes a bounds from active set.
number | Number of bound to be removed from active set. |
updateCholesky | Flag indicating if Cholesky decomposition shall be updated. |
Definition at line 2351 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/SRC/QProblem.cpp.
|
protected |
Removes a bounds from active set.
number | Number of bound to be removed from active set. |
updateCholesky | Flag indicating if Cholesky decomposition shall be updated. |
|
protectedvirtual |
Removes a bounds from active set.
number | Number of bound to be removed from active set. |
updateCholesky | Flag indicating if Cholesky decomposition shall be updated. |
allowFlipping | Flag indicating if flipping bounds are allowed. |
ensureNZC | Flag indicating if non-zero curvature is ensured by exchange rules. |
Reimplemented in SQProblemSchur.
|
protected |
Removes a bounds from active set.
number | Number of bound to be removed from active set. |
updateCholesky | Flag indicating if Cholesky decomposition shall be updated. |
allowFlipping | Flag indicating if flipping bounds are allowed. |
ensureNZC | Flag indicating if non-zero curvature is ensured by exchange rules. |
Definition at line 4058 of file external_packages/qpOASES-3.0beta/src/QProblem.cpp.
|
protected |
Removes a constraint from active set.
number | Number of constraint to be removed from active set. |
updateCholesky | Flag indicating if Cholesky decomposition shall be updated. |
Definition at line 2201 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/SRC/QProblem.cpp.
|
protected |
Removes a constraint from active set.
number | Number of constraint to be removed from active set. |
updateCholesky | Flag indicating if Cholesky decomposition shall be updated. |
|
protectedvirtual |
Removes a constraint from active set.
number | Number of constraint to be removed from active set. |
updateCholesky | Flag indicating if Cholesky decomposition shall be updated. |
allowFlipping | Flag indicating if flipping bounds are allowed. |
ensureNZC | Flag indicating if non-zero curvature is ensured by exchange rules. |
Reimplemented in SQProblemSchur.
|
protected |
Removes a constraint from active set.
number | Number of constraint to be removed from active set. |
updateCholesky | Flag indicating if Cholesky decomposition shall be updated. |
allowFlipping | Flag indicating if flipping bounds are allowed. |
ensureNZC | Flag indicating if non-zero curvature is ensured by exchange rules. |
Definition at line 3829 of file external_packages/qpOASES-3.0beta/src/QProblem.cpp.
|
virtual |
Clears all data structures of QProblemB except for QP data.
Reimplemented from QProblemB.
Reimplemented in SQProblemSchur.
Definition at line 203 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/SRC/QProblem.cpp.
|
virtual |
Clears all data structures of QProblemB except for QP data.
Reimplemented from QProblemB.
Reimplemented in SQProblemSchur.
|
virtual |
Clears all data structures of QProblemB except for QP data.
Reimplemented from QProblemB.
Reimplemented in SQProblemSchur.
|
virtual |
Clears all data structures of QProblemB except for QP data.
Reimplemented from QProblemB.
Reimplemented in SQProblemSchur.
|
inlineprotected |
Sets constraint matrix of the QP.
(Remark: Also internal vector Ax is recomputed!)
A_new | New constraint matrix (with correct dimension!). |
|
inlineprotected |
Changes single row of constraint matrix of the QP.
(Remark: Also correponding component of internal vector Ax is recomputed!)
number | Number of row to be changed. |
value | New (number)th constraint (with correct dimension!). |
|
inlineprotected |
Sets constraint matrix of the QP.
(Remark: Also internal vector Ax is recomputed!)
A_new | New constraint matrix (with correct dimension!). |
|
inlineprotected |
Changes single row of constraint matrix of the QP.
(Remark: Also correponding component of internal vector Ax is recomputed!)
number | Number of row to be changed. |
value | New (number)th constraint (with correct dimension!). |
|
inlineprotected |
Sets constraint matrix of the QP.
Note: Also internal vector Ax is recomputed!
A_new | New constraint matrix (a shallow copy is made). |
|
inlineprotected |
Sets dense constraint matrix of the QP.
Note: Also internal vector Ax is recomputed!
A_new | New dense constraint matrix (with correct dimension!), a shallow copy is made. |
|
inlineprotected |
Sets constraint matrix of the QP.
Note: Also internal vector Ax is recomputed!
A_new | New constraint matrix. |
|
inlineprotected |
Sets dense constraint matrix of the QP.
Note: Also internal vector Ax is recomputed!
A_new | New dense constraint matrix (with correct dimension!). |
returnValue QProblem::setConstraintProduct | ( | ConstraintProduct *const | _constraintProduct | ) |
Defines user-defined routine for calculating the constraint product A*x
returnValue QProblem::setConstraintProduct | ( | ConstraintProduct *const | _constraintProduct | ) |
Defines user-defined routine for calculating the constraint product A*x
Definition at line 1153 of file external_packages/qpOASES-3.0beta/src/QProblem.cpp.
|
inlineprotected |
Sets constraints' lower bound vector of the QP.
lbA_new | New constraints' lower bound vector (with correct dimension!). |
|
inlineprotected |
Changes single entry of lower constraints' bound vector of the QP.
number | Number of entry to be changed. |
value | New value for entry of lower constraints' bound vector (with correct dimension!). |
|
inlineprotected |
Sets constraints' lower bound vector of the QP.
lbA_new | New constraints' lower bound vector (with correct dimension!). |
|
inlineprotected |
Changes single entry of lower constraints' bound vector of the QP.
number | Number of entry to be changed. |
value | New value for entry of lower constraints' bound vector (with correct dimension!). |
|
inlineprotected |
Sets constraints' lower bound vector of the QP.
lbA_new | New constraints' lower bound vector (with correct dimension!). |
|
inlineprotected |
Changes single entry of lower constraints' bound vector of the QP.
number | Number of entry to be changed. |
value | New value for entry of lower constraints' bound vector (with correct dimension!). |
|
inlineprotected |
Sets constraints' lower bound vector of the QP.
lbA_new | New constraints' lower bound vector (with correct dimension!). |
|
inlineprotected |
Changes single entry of lower constraints' bound vector of the QP.
number | Number of entry to be changed. |
value | New value for entry of lower constraints' bound vector (with correct dimension!). |
|
inlineprotected |
Sets constraints' upper bound vector of the QP.
ubA_new | New constraints' upper bound vector (with correct dimension!). |
|
inlineprotected |
Changes single entry of upper constraints' bound vector of the QP.
number | Number of entry to be changed. |
value | New value for entry of upper constraints' bound vector (with correct dimension!). |
|
inlineprotected |
Sets constraints' upper bound vector of the QP.
ubA_new | New constraints' upper bound vector (with correct dimension!). |
|
inlineprotected |
Changes single entry of upper constraints' bound vector of the QP.
number | Number of entry to be changed. |
value | New value for entry of upper constraints' bound vector (with correct dimension!). |
|
inlineprotected |
Sets constraints' upper bound vector of the QP.
ubA_new | New constraints' upper bound vector (with correct dimension!). |
|
inlineprotected |
Changes single entry of upper constraints' bound vector of the QP.
number | Number of entry to be changed. |
value | New value for entry of upper constraints' bound vector (with correct dimension!). |
|
inlineprotected |
Sets constraints' upper bound vector of the QP.
ubA_new | New constraints' upper bound vector (with correct dimension!). |
|
inlineprotected |
Changes single entry of upper constraints' bound vector of the QP.
number | Number of entry to be changed. |
value | New value for entry of upper constraints' bound vector (with correct dimension!). |
|
protectedvirtual |
guessedBounds | Initial guess for working set of bounds. |
guessedConstraints | Initial guess for working set of constraints. |
|
protectedvirtual |
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 and constraints.
guessedBounds | Initial guess for working set of bounds. |
guessedConstraints | Initial guess for working set of constraints. |
Definition at line 5669 of file external_packages/qpOASES-3.0beta/src/QProblem.cpp.
|
protected |
Setups (constraints') bounds of the auxiliary initial QP for given optimal primal/dual solution and given initial working set (assumes that members X, Y and BOUNDS, CONSTRAINTS have already been initialised!).
auxiliaryBounds | Working set of bounds for auxiliary QP. |
auxiliaryConstraints | Working set of constraints for auxiliary QP. |
useRelaxation | Flag indicating if inactive (constraints') bounds shall be relaxed. |
Definition at line 1198 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/SRC/QProblem.cpp.
|
protected |
Setups (constraints') bounds of the auxiliary initial QP for given optimal primal/dual solution and given initial working set (assumes that members X, Y and BOUNDS, CONSTRAINTS have already been initialised!).
auxiliaryBounds | Working set of bounds for auxiliary QP. |
auxiliaryConstraints | Working set of constraints for auxiliary QP. |
useRelaxation | Flag indicating if inactive (constraints') bounds shall be relaxed. |
|
protected |
Sets up (constraints') bounds of the auxiliary initial QP for given optimal primal/dual solution and given initial working set (assumes that members X, Y and BOUNDS, CONSTRAINTS have already been initialised!).
auxiliaryBounds | Working set of bounds for auxiliary QP. |
auxiliaryConstraints | Working set of constraints for auxiliary QP. |
useRelaxation | Flag indicating if inactive (constraints') bounds shall be relaxed. |
|
protected |
Setups (constraints') bounds of the auxiliary initial QP for given optimal primal/dual solution and given initial working set (assumes that members X, Y and BOUNDS, CONSTRAINTS have already been initialised!).
auxiliaryBounds | Working set of bounds for auxiliary QP. |
auxiliaryConstraints | Working set of constraints for auxiliary QP. |
useRelaxation | Flag indicating if inactive (constraints') bounds shall be relaxed. |
|
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, CONSTRAINTS have already been initialised!).
Definition at line 1169 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/SRC/QProblem.cpp.
|
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, CONSTRAINTS have already been initialised!).
|
protected |
Sets up gradient of the auxiliary initial QP for given optimal primal/dual solution and given initial working set (assumes that members X, Y and BOUNDS, CONSTRAINTS have already been initialised!).
|
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, CONSTRAINTS have already been initialised!).
|
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. |
Definition at line 1116 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/SRC/QProblem.cpp.
|
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. |
|
protected |
Sets up 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. |
|
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. |
|
protected |
Setups bound and constraints data structures according to auxiliaryBounds/Constraints. (If the working set shall be setup afresh, make sure that bounds and constraints data structure have been resetted and the TQ factorisation has been initialised!)
auxiliaryBounds | Working set of bounds for auxiliary QP. |
auxiliaryConstraints | Working set of constraints for auxiliary QP. |
setupAfresh | Flag indicating if given working set shall be setup afresh or by updating the current one. |
Definition at line 1000 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/SRC/QProblem.cpp.
|
protected |
Setups bound and constraints data structures according to auxiliaryBounds/Constraints. (If the working set shall be setup afresh, make sure that bounds and constraints data structure have been resetted and the TQ factorisation has been initialised!)
auxiliaryBounds | Working set of bounds for auxiliary QP. |
auxiliaryConstraints | Working set of constraints for auxiliary QP. |
setupAfresh | Flag indicating if given working set shall be setup afresh or by updating the current one. |
|
protectedvirtual |
Sets up bound and constraints data structures according to auxiliaryBounds/Constraints. (If the working set shall be setup afresh, make sure that bounds and constraints data structure have been resetted and the TQ factorisation has been initialised!)
auxiliaryBounds | Working set of bounds for auxiliary QP. |
auxiliaryConstraints | Working set of constraints for auxiliary QP. |
setupAfresh | Flag indicating if given working set shall be setup afresh or by updating the current one. |
Reimplemented in SQProblemSchur.
|
protected |
Setups bound and constraints data structures according to auxiliaryBounds/Constraints. (If the working set shall be setup afresh, make sure that bounds and constraints data structure have been resetted and the TQ factorisation has been initialised!)
auxiliaryBounds | Working set of bounds for auxiliary QP. |
auxiliaryConstraints | Working set of constraints for auxiliary QP. |
setupAfresh | Flag indicating if given working set shall be setup afresh or by updating the current one. |
|
protected |
Computes the Cholesky decomposition R of the projected Hessian (i.e. R^T*R = Z^T*H*Z).
Definition at line 578 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/SRC/QProblem.cpp.
|
protected |
Computes the Cholesky decomposition R of the projected Hessian (i.e. R^T*R = Z^T*H*Z).
|
protected |
Computes the Cholesky decomposition of the projected Hessian (i.e. R^T*R = Z^T*H*Z). Note: If Hessian turns out not to be positive definite, the Hessian type is set to HST_SEMIDEF accordingly.
|
protectedvirtual |
Computes initial Cholesky decomposition of the projected Hessian making use of the function computeCholesky() or computeProjectedCholesky().
Reimplemented from QProblemB.
Definition at line 2107 of file external_packages/qpOASES-3.2.0/src/QProblem.cpp.
|
protected |
Setups internal QP data.
_H | Hessian matrix. |
_g | Gradient vector. |
_A | Constraint matrix. |
_lb | Lower bound vector (on variables). If no lower bounds exist, a NULL pointer can be passed. |
_ub | Upper bound vector (on variables). If no upper bounds exist, a NULL pointer can be passed. |
_lbA | Lower constraints' bound vector. If no lower constraints' bounds exist, a NULL pointer can be passed. |
_ubA | Upper constraints' bound vector. If no lower constraints' bounds exist, a NULL pointer can be passed. |
Definition at line 3520 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/SRC/QProblem.cpp.
|
protected |
Setups internal QP data.
_H | Hessian matrix. |
_R | Cholesky factorization of the Hessian matrix. |
_g | Gradient vector. |
_A | Constraint matrix. |
_lb | Lower bound vector (on variables). If no lower bounds exist, a NULL pointer can be passed. |
_ub | Upper bound vector (on variables). If no upper bounds exist, a NULL pointer can be passed. |
_lbA | Lower constraints' bound vector. If no lower constraints' bounds exist, a NULL pointer can be passed. |
_ubA | Upper constraints' bound vector. If no lower constraints' bounds exist, a NULL pointer can be passed. |
Definition at line 3607 of file external_packages/qpoases/SRC/QProblem.cpp.
|
protected |
Sets up internal QP data.
_H | Hessian matrix. If Hessian matrix is trivial,a NULL pointer can be passed. |
_g | Gradient vector. |
_A | Constraint matrix. |
_lb | Lower bound vector (on variables). If no lower bounds exist, a NULL pointer can be passed. |
_ub | Upper bound vector (on variables). If no upper bounds exist, a NULL pointer can be passed. |
_lbA | Lower constraints' bound vector. If no lower constraints' bounds exist, a NULL pointer can be passed. |
_ubA | Upper constraints' bound vector. If no lower constraints' bounds exist, a NULL pointer can be passed. |
|
protected |
Sets up dense 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. |
_A | Constraint matrix. |
_lb | Lower bound vector (on variables). If no lower bounds exist, a NULL pointer can be passed. |
_ub | Upper bound vector (on variables). If no upper bounds exist, a NULL pointer can be passed. |
_lbA | Lower constraints' bound vector. If no lower constraints' bounds exist, a NULL pointer can be passed. |
_ubA | Upper constraints' bound vector. If no lower constraints' bounds exist, a NULL pointer can be passed. |
|
protected |
Setups internal QP data.
_H | Hessian matrix. If Hessian matrix is trivial,a NULL pointer can be passed. |
_g | Gradient vector. |
_A | Constraint matrix. |
_lb | Lower bound vector (on variables). If no lower bounds exist, a NULL pointer can be passed. |
_ub | Upper bound vector (on variables). If no upper bounds exist, a NULL pointer can be passed. |
_lbA | Lower constraints' bound vector. If no lower constraints' bounds exist, a NULL pointer can be passed. |
_ubA | Upper constraints' bound vector. If no lower constraints' bounds exist, a NULL pointer can be passed. |
Definition at line 5806 of file external_packages/qpOASES-3.0beta/src/QProblem.cpp.
|
protected |
Setups dense 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. |
_A | Constraint matrix. |
_lb | Lower bound vector (on variables). If no lower bounds exist, a NULL pointer can be passed. |
_ub | Upper bound vector (on variables). If no upper bounds exist, a NULL pointer can be passed. |
_lbA | Lower constraints' bound vector. If no lower constraints' bounds exist, a NULL pointer can be passed. |
_ubA | Upper constraints' bound vector. If no lower constraints' bounds exist, a NULL pointer can be passed. |
|
protected |
Sets up 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. |
A_file | Name of file where constraint matrix, 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. |
lbA_file | Name of file where lower constraints' bounds, of neighbouring QP to be solved, is stored. If no lower constraints' bounds exist, a NULL pointer can be passed. |
ubA_file | Name of file where upper constraints' bounds, of neighbouring QP to be solved, is stored. If no upper constraints' bounds exist, a NULL pointer can be passed. |
|
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. |
A_file | Name of file where constraint matrix, 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. |
lbA_file | Name of file where lower constraints' bounds, of neighbouring QP to be solved, is stored. If no lower constraints' bounds exist, a NULL pointer can be passed. |
ubA_file | Name of file where upper constraints' bounds, of neighbouring QP to be solved, is stored. If no upper constraints' bounds exist, a NULL pointer can be passed. |
Definition at line 5912 of file external_packages/qpOASES-3.0beta/src/QProblem.cpp.
|
protectedvirtual |
Determines type of constraints and bounds (i.e. implicitly fixed, unbounded etc.).
Reimplemented from QProblemB.
Definition at line 507 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/SRC/QProblem.cpp.
|
protectedvirtual |
Determines type of constraints and bounds (i.e. implicitly fixed, unbounded etc.).
Reimplemented from QProblemB.
|
protectedvirtual |
Determines type of existing constraints and bounds (i.e. implicitly fixed, unbounded etc.).
Reimplemented from QProblemB.
|
protectedvirtual |
lb_new | New lower bounds. |
ub_new | New upper bounds. |
lbA_new | New lower constraints' bounds. |
ubA_new | New upper constraints' bounds. |
|
protectedvirtual |
Determines type of existing constraints and bounds (i.e. implicitly fixed, unbounded etc.).
Reimplemented from QProblemB.
|
protectedvirtual |
Determines type of new constraints and bounds (i.e. implicitly fixed, unbounded etc.).
lb_new | New lower bounds. |
ub_new | New upper bounds. |
lbA_new | New lower constraints' bounds. |
ubA_new | New upper constraints' bounds. |
Definition at line 2127 of file external_packages/qpOASES-3.0beta/src/QProblem.cpp.
|
protected |
Initialises TQ factorisation of A (i.e. A*Q = [0 T]) if NO constraint is active.
Definition at line 680 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/SRC/QProblem.cpp.
|
protected |
Initialises TQ factorisation of A (i.e. A*Q = [0 T]) if NO constraint is active.
|
protectedvirtual |
Initialises TQ factorisation of A (i.e. A*Q = [0 T]) if NO constraint is active.
Reimplemented in SQProblemSchur.
|
protected |
Initialises TQ factorisation of A (i.e. A*Q = [0 T]) if NO constraint is active.
|
protected |
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 of bounds. |
guessedConstraints | Guessed new working set of constraints. |
|
protected |
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 of bounds. |
guessedConstraints | Guessed new working set of constraints. |
Definition at line 5767 of file external_packages/qpOASES-3.0beta/src/QProblem.cpp.
returnValue QProblem::solveCurrentEQP | ( | const int_t | n_rhs, |
const real_t * | g_in, | ||
const real_t * | lb_in, | ||
const real_t * | ub_in, | ||
const real_t * | lbA_in, | ||
const real_t * | ubA_in, | ||
real_t * | x_out, | ||
real_t * | y_out | ||
) |
Solves an equality-constrained QP problem resulting from the current working set.
n_rhs | Number of consecutive right hand sides |
g_in | Gradient of neighbouring QP to be solved. |
lb_in | Lower bounds of neighbouring QP to be solved. If no lower bounds exist, a NULL pointer can be passed. |
ub_in | Upper bounds of neighbouring QP to be solved. If no upper bounds exist, a NULL pointer can be passed. |
lbA_in | Lower constraints' bounds of neighbouring QP to be solved. If no lower constraints' bounds exist, a NULL pointer can be passed. |
ubA_in | Upper constraints' bounds of neighbouring QP to be solved. |
x_out | Output: Primal solution |
y_out | Output: Dual solution |
returnValue QProblem::solveCurrentEQP | ( | const int | n_rhs, |
const real_t * | g_in, | ||
const real_t * | lb_in, | ||
const real_t * | ub_in, | ||
const real_t * | lbA_in, | ||
const real_t * | ubA_in, | ||
real_t * | x_out, | ||
real_t * | y_out | ||
) |
Solves using the current working set
n_rhs | Number of consecutive right hand sides |
g_in | Gradient of neighbouring QP to be solved. |
lb_in | Lower bounds of neighbouring QP to be solved. If no lower bounds exist, a NULL pointer can be passed. |
ub_in | Upper bounds of neighbouring QP to be solved. If no upper bounds exist, a NULL pointer can be passed. |
lbA_in | Lower constraints' bounds of neighbouring QP to be solved. If no lower constraints' bounds exist, a NULL pointer can be passed. |
ubA_in | Upper constraints' bounds of neighbouring QP to be solved. |
x_out | Primal solution |
y_out | Dual solution |
Definition at line 1045 of file external_packages/qpOASES-3.0beta/src/QProblem.cpp.
|
protected |
Solves a QProblem whose QP data is assumed to be stored in the member variables. A guess for its primal/dual optimal solution vectors and the corresponding working sets of bounds and constraints 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 of bounds for solution (xOpt,yOpt). A NULL pointer can be passed. |
guessedConstraints | Optimal working set of constraints 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 713 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/SRC/QProblem.cpp.
|
protected |
Solves a QProblem whose QP data is assumed to be stored in the member variables. A guess for its primal/dual optimal solution vectors and the corresponding working sets of bounds and constraints 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 of bounds for solution (xOpt,yOpt). A NULL pointer can be passed. |
guessedConstraints | Optimal working set of constraints 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). |
|
protected |
Solves a QProblem whose QP data is assumed to be stored in the member variables. A guess for its primal/dual optimal solution vectors and the corresponding working sets of bounds and constraints can be provided. Note: This function is internally called by all init functions!
xOpt | Optimal primal solution vector. |
yOpt | Optimal dual solution vector. |
guessedBounds | Optimal working set of bounds for solution (xOpt,yOpt). |
guessedConstraints | Optimal working set of constraints for solution (xOpt,yOpt). |
_R | Pre-computed (upper triangular) Cholesky factor of Hessian matrix. |
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 spent for QP solution (or to perform nWSR iterations). |
Definition at line 1279 of file external_packages/qpOASES-3.2.0/src/QProblem.cpp.
|
protected |
Solves a QProblem whose QP data is assumed to be stored in the member variables. A guess for its primal/dual optimal solution vectors and the corresponding working sets of bounds and constraints 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 of bounds for solution (xOpt,yOpt). A NULL pointer can be passed. |
guessedConstraints | Optimal working set of constraints 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). |
|
protected |
Solves QProblem 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. |
lbA_new | Lower constraints' bounds of neighbouring QP to be solved. If no lower constraints' bounds exist, a NULL pointer can be passed. |
ubA_new | Upper constraints' bounds of neighbouring QP to be solved. If no upper constraints' 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 spent 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. |
isFirstCall | Indicating whether this is the first call for current QP. |
Definition at line 1455 of file external_packages/qpOASES-3.2.0/src/QProblem.cpp.
|
protected |
Solves QProblem 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. |
lbA_new | Lower constraints' bounds of neighbouring QP to be solved. If no lower constraints' bounds exist, a NULL pointer can be passed. |
ubA_new | Upper constraints' bounds of neighbouring QP to be solved. If no upper constraints' 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 1694 of file external_packages/qpOASES-3.0beta/src/QProblem.cpp.
|
protected |
Solves QProblem 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. |
lbA_new | Lower constraints' bounds of neighbouring QP to be solved. If no lower constraints' bounds exist, a NULL pointer can be passed. |
ubA_new | Upper constraints' bounds of neighbouring QP to be solved. If no upper constraints' 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 spent 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. |
isFirstCall | Indicating whether this is the first call for current QP. |
Definition at line 1731 of file external_packages/qpOASES-3.2.0/src/QProblem.cpp.
|
protected |
Solves QProblem 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. |
lbA_new | Lower constraints' bounds of neighbouring QP to be solved. If no lower constraints' bounds exist, a NULL pointer can be passed. |
ubA_new | Upper constraints' bounds of neighbouring QP to be solved. If no upper constraints' 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 2014 of file external_packages/qpOASES-3.0beta/src/QProblem.cpp.
|
protectedvirtual |
Update activities in a hot start if some of the bounds have become infinity or if variables have become fixed.
lb_new | New lower bounds. |
ub_new | New upper bounds. |
lbA_new | New lower constraints' bounds. |
ubA_new | New upper constraints' bounds. |
Definition at line 1839 of file external_packages/qpOASES-3.2.0/src/QProblem.cpp.
|
protected |
...
curFarBound | ... |
nRamp | ... |
lb_new | ... |
lb_new_far | ... |
ub_new | ... |
ub_new_far | ... |
lbA_new | ... |
lbA_new_far | ... |
ubA_new | ... |
ubA_new_far | ... |
Definition at line 5468 of file external_packages/qpOASES-3.2.0/src/QProblem.cpp.
returnValue QProblem::writeQpDataIntoMatFile | ( | const char *const | filename | ) | const |
...
filename | Mat file name. |
Definition at line 6333 of file external_packages/qpOASES-3.2.0/src/QProblem.cpp.
returnValue QProblem::writeQpWorkspaceIntoMatFile | ( | const char *const | filename | ) |
...
filename | Mat file name. |
Definition at line 6377 of file external_packages/qpOASES-3.2.0/src/QProblem.cpp.
|
friend |
Definition at line 56 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/INCLUDE/QProblem.hpp.
DenseMatrix* QProblem::A |
Constraint matrix pointer.
Definition at line 103 of file QProblem.h.
|
protected |
Constraint matrix.
Definition at line 610 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/INCLUDE/QProblem.hpp.
|
protected |
Constraint matrix.
Definition at line 1066 of file external_packages/qpOASES-3.0beta/include/qpOASES/QProblem.hpp.
DenseMatrix QProblem::AA |
Constraint matrix.
Definition at line 104 of file QProblem.h.
|
protected |
Stores the current product A*x (for increased efficiency only).
Stores the current A*x
(for increased efficiency only).
Definition at line 620 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/INCLUDE/QProblem.hpp.
|
protected |
Stores the current A*x
(for increased efficiency only).
Definition at line 1077 of file external_packages/qpOASES-3.0beta/include/qpOASES/QProblem.hpp.
Stores the current distance to lower constraints' bounds A*x-lbA
(for increased efficiency only).
Definition at line 117 of file QProblem.h.
|
protected |
Stores the current distance to lower constraints' bounds A*x-lbA
(for increased efficiency only).
Definition at line 1079 of file external_packages/qpOASES-3.0beta/include/qpOASES/QProblem.hpp.
Stores the current distance to lower constraints' bounds ubA-A*x
(for increased efficiency only).
Definition at line 119 of file QProblem.h.
|
protected |
Stores the current distance to lower constraints' bounds ubA-A*x
(for increased efficiency only).
Definition at line 1081 of file external_packages/qpOASES-3.0beta/include/qpOASES/QProblem.hpp.
Bounds QProblem::bounds |
Data structure for problem's bounds.
Definition at line 72 of file QProblem.h.
ConstraintProduct QProblem::constraintProduct |
Pointer to user-defined constraint product function.
Definition at line 122 of file QProblem.h.
|
protected |
Pointer to user-defined constraint product function.
Definition at line 1084 of file external_packages/qpOASES-3.0beta/include/qpOASES/QProblem.hpp.
|
protected |
Data structure for problem's constraints.
Definition at line 614 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/INCLUDE/QProblem.hpp.
unsigned int QProblem::count |
Counts the number of hotstart function calls (internal usage only!).
Definition at line 90 of file QProblem.h.
|
protected |
Data structure for storing (possible) cycling information (NOT YET IMPLEMENTED!).
Definition at line 622 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/INCLUDE/QProblem.hpp.
Temporary for determineStepDirection
Definition at line 92 of file QProblem.h.
Temporary for determineStepDirection.
Definition at line 127 of file QProblem.h.
|
protected |
Temporary for determineStepDirection.
Definition at line 1089 of file external_packages/qpOASES-3.0beta/include/qpOASES/QProblem.hpp.
Temporary for determineStepDirection.
Definition at line 128 of file QProblem.h.
|
protected |
Temporary for determineStepDirection.
Definition at line 1090 of file external_packages/qpOASES-3.0beta/include/qpOASES/QProblem.hpp.
Temporary for determineStepDirection.
Definition at line 129 of file QProblem.h.
|
protected |
Temporary for determineStepDirection.
Definition at line 1091 of file external_packages/qpOASES-3.0beta/include/qpOASES/QProblem.hpp.
Flipper QProblem::flipper |
Struct for making a temporary copy of the matrix factorisations.
Definition at line 101 of file QProblem.h.
|
protected |
Flag indicating whether the constraint matrix needs to be de-allocated.
Definition at line 1065 of file external_packages/qpOASES-3.0beta/include/qpOASES/QProblem.hpp.
Gradient.
Definition at line 68 of file QProblem.h.
DenseMatrix* QProblem::H |
Hessian matrix pointer.
Definition at line 65 of file QProblem.h.
BooleanType QProblem::haveCholesky |
Flag indicating whether Cholesky decomposition has already been setup.
Definition at line 75 of file QProblem.h.
HessianType QProblem::hessianType |
Type of Hessian matrix.
Definition at line 87 of file QProblem.h.
DenseMatrix QProblem::HH |
Hessian matrix.
Definition at line 66 of file QProblem.h.
|
protected |
Auxiliary variable for debug output.
Definition at line 1093 of file external_packages/qpOASES-3.0beta/include/qpOASES/QProblem.hpp.
|
protected |
Auxiliary variable for debug output.
Definition at line 1095 of file external_packages/qpOASES-3.0beta/include/qpOASES/QProblem.hpp.
|
protected |
Auxiliary variable for debug output.
Definition at line 1094 of file external_packages/qpOASES-3.0beta/include/qpOASES/QProblem.hpp.
|
protected |
Auxiliary variable for debug output.
Definition at line 1096 of file external_packages/qpOASES-3.0beta/include/qpOASES/QProblem.hpp.
BooleanType QProblem::infeasible |
QP infeasible?
Definition at line 84 of file QProblem.h.
Lower bound vector (on variables).
Definition at line 69 of file QProblem.h.
|
protected |
Lower constraints' bound vector.
Definition at line 611 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/INCLUDE/QProblem.hpp.
|
protected |
Lower constraints' bound vector.
Definition at line 1068 of file external_packages/qpOASES-3.0beta/include/qpOASES/QProblem.hpp.
Options QProblem::options |
Struct containing all user-defined options for solving QPs.
Definition at line 98 of file QProblem.h.
|
protected |
Orthonormal quadratic matrix, A = [0 T]*Q'.
Definition at line 617 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/INCLUDE/QProblem.hpp.
|
protected |
Orthonormal quadratic matrix, A = [0 T]*Q'.
Definition at line 1074 of file external_packages/qpOASES-3.0beta/include/qpOASES/QProblem.hpp.
Cholesky factor of H (i.e. H = R^T*R).
Definition at line 74 of file QProblem.h.
real_t QProblem::ramp0 |
Start value for Ramping Strategy.
Definition at line 94 of file QProblem.h.
real_t QProblem::ramp1 |
Final value for Ramping Strategy.
Definition at line 95 of file QProblem.h.
int QProblem::rampOffset |
Offset index for Ramping.
Definition at line 96 of file QProblem.h.
real_t QProblem::regVal |
Holds the offset used to regularise Hessian matrix (zero by default).
Definition at line 88 of file QProblem.h.
|
protected |
Matrix T is stored in a (sizeT x sizeT) array.
Definition at line 618 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/INCLUDE/QProblem.hpp.
|
protected |
Matrix T is stored in a (sizeT x sizeT) array.
Definition at line 1050 of file external_packages/qpOASES-3.2.0/include/qpOASES/QProblem.hpp.
QProblemStatus QProblem::status |
Current status of the solution process.
Definition at line 82 of file QProblem.h.
|
protected |
Reverse triangular matrix, A = [0 T]*Q'.
Definition at line 616 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/INCLUDE/QProblem.hpp.
|
protected |
Reverse triangular matrix, A = [0 T]*Q'.
Definition at line 1073 of file external_packages/qpOASES-3.0beta/include/qpOASES/QProblem.hpp.
TabularOutput QProblem::tabularOutput |
Struct storing information for tabular output (printLevel == PL_TABULAR).
Definition at line 99 of file QProblem.h.
real_t QProblem::tau |
Last homotopy step length.
Definition at line 80 of file QProblem.h.
Temporary for determineStepDirection.
Definition at line 124 of file QProblem.h.
|
protected |
Temporary for determineStepDirection.
Definition at line 1086 of file external_packages/qpOASES-3.0beta/include/qpOASES/QProblem.hpp.
Temporary for determineStepDirection.
Definition at line 125 of file QProblem.h.
|
protected |
Temporary for determineStepDirection.
Definition at line 1087 of file external_packages/qpOASES-3.0beta/include/qpOASES/QProblem.hpp.
Upper bound vector (on variables).
Definition at line 70 of file QProblem.h.
|
protected |
Upper constraints' bound vector.
Definition at line 612 of file examples/code_generation/mpc_mhe/getting_started_export/qpoases/INCLUDE/QProblem.hpp.
|
protected |
Upper constraints' bound vector.
Definition at line 1069 of file external_packages/qpOASES-3.0beta/include/qpOASES/QProblem.hpp.
BooleanType QProblem::unbounded |
QP unbounded?
Definition at line 85 of file QProblem.h.
Primal solution vector.
Definition at line 77 of file QProblem.h.
Dual solution vector.
Definition at line 78 of file QProblem.h.
Temporary for determineStepDirection.
Definition at line 126 of file QProblem.h.
|
protected |
Temporary for determineStepDirection.
Definition at line 1088 of file external_packages/qpOASES-3.0beta/include/qpOASES/QProblem.hpp.