qpOASES  3.2.1
An Implementation of the Online Active Set Strategy
Public Member Functions | Public Attributes | Protected Member Functions | List of all members
Options Class Reference

Manages all user-specified options for solving QPs. More...

#include <Options.hpp>

Public Member Functions

 Options ()
 
 Options (const Options &rhs)
 
 ~Options ()
 
Optionsoperator= (const Options &rhs)
 
returnValue setToDefault ()
 
returnValue setToReliable ()
 
returnValue setToMPC ()
 
returnValue setToFast ()
 
returnValue ensureConsistency ()
 
returnValue print () const
 

Public Attributes

PrintLevel printLevel
 
BooleanType enableRamping
 
BooleanType enableFarBounds
 
BooleanType enableFlippingBounds
 
BooleanType enableRegularisation
 
BooleanType enableFullLITests
 
BooleanType enableNZCTests
 
int_t enableDriftCorrection
 
int_t enableCholeskyRefactorisation
 
BooleanType enableEqualities
 
real_t terminationTolerance
 
real_t boundTolerance
 
real_t boundRelaxation
 
real_t epsNum
 
real_t epsDen
 
real_t maxPrimalJump
 
real_t maxDualJump
 
real_t initialRamping
 
real_t finalRamping
 
real_t initialFarBounds
 
real_t growFarBounds
 
SubjectToStatus initialStatusBounds
 
real_t epsFlipping
 
int_t numRegularisationSteps
 
real_t epsRegularisation
 
int_t numRefinementSteps
 
real_t epsIterRef
 
real_t epsLITests
 
real_t epsNZCTests
 
real_t rcondSMin
 
BooleanType enableInertiaCorrection
 
BooleanType enableDropInfeasibles
 
int_t dropBoundPriority
 
int_t dropEqConPriority
 
int_t dropIneqConPriority
 

Protected Member Functions

returnValue copy (const Options &rhs)
 

Detailed Description

This class manages all user-specified options used for solving quadratic programs.

Author
Hans Joachim Ferreau, Andreas Potschka, Christian Kirches
Version
3.2
Date
2007-2017

Constructor & Destructor Documentation

◆ Options() [1/2]

BEGIN_NAMESPACE_QPOASES Options::Options ( )

Default constructor.

References setToDefault().

◆ Options() [2/2]

Options::Options ( const Options rhs)

Copy constructor (deep copy).

Parameters
rhsRhs object.

References copy().

◆ ~Options()

Options::~Options ( )

Destructor.

Member Function Documentation

◆ copy()

returnValue Options::copy ( const Options rhs)
protected

◆ ensureConsistency()

returnValue Options::ensureConsistency ( )

Ensures that all options have consistent values by automatically adjusting inconsistent ones. Note: This routine cannot (and does not try to) ensure that values are set to reasonable values that make the QP solution work!

Returns
SUCCESSFUL_RETURN
RET_OPTIONS_ADJUSTED

References boundRelaxation, boundTolerance, BT_FALSE, BT_TRUE, enableCholeskyRefactorisation, enableDriftCorrection, EPS, epsFlipping, epsIterRef, epsLITests, epsNZCTests, epsRegularisation, finalRamping, growFarBounds, initialFarBounds, initialRamping, maxDualJump, maxPrimalJump, numRefinementSteps, numRegularisationSteps, RET_OPTIONS_ADJUSTED, SUCCESSFUL_RETURN, terminationTolerance, and THROWWARNING.

Referenced by QProblemB::setOptions().

◆ operator=()

Options & Options::operator= ( const Options rhs)

Assignment operator (deep copy).

Parameters
rhsRhs object.

References copy().

◆ print()

returnValue Options::print ( ) const

◆ setToDefault()

returnValue Options::setToDefault ( )

◆ setToFast()

returnValue Options::setToFast ( )

Same as setToMPC( ), for ensuring backwards compatibility.

Returns
SUCCESSFUL_RETURN

References setToMPC().

◆ setToMPC()

returnValue Options::setToMPC ( )

◆ setToReliable()

returnValue Options::setToReliable ( )

Sets all options to values resulting in maximum reliabilty.

Returns
SUCCESSFUL_RETURN

References BT_TRUE, enableCholeskyRefactorisation, enableFullLITests, numRefinementSteps, setToDefault(), and SUCCESSFUL_RETURN.

Member Data Documentation

◆ boundRelaxation

real_t Options::boundRelaxation

Offset for relaxing (constraints') bounds at beginning of an initial homotopy. It is also as initial value for far bounds.

Referenced by copy(), ensureConsistency(), print(), setToDefault(), QProblem::setupAuxiliaryQPbounds(), QProblemB::setupAuxiliaryQPbounds(), and QProblem::updateActivitiesForHotstart().

◆ boundTolerance

real_t Options::boundTolerance

Lower/upper (constraints') bound tolerance (an inequality constraint whose lower and upper bounds differ by less is regarded to be an equality constraint).

Referenced by copy(), ensureConsistency(), QProblemB::hotstart(), QProblem::hotstart(), QProblemB::obtainAuxiliaryWorkingSet(), QProblem::obtainAuxiliaryWorkingSet(), print(), setToDefault(), QProblemB::setupSubjectToType(), and QProblem::setupSubjectToType().

◆ dropBoundPriority

int_t Options::dropBoundPriority

◆ dropEqConPriority

int_t Options::dropEqConPriority

◆ dropIneqConPriority

int_t Options::dropIneqConPriority

◆ enableCholeskyRefactorisation

int_t Options::enableCholeskyRefactorisation

Specifies the frequency of full refactorisation of proj. Hessian (otherwise updates).

Referenced by copy(), ensureConsistency(), main(), print(), setToDefault(), setToReliable(), QProblem::solveQP(), and QProblemB::solveQP().

◆ enableDriftCorrection

int_t Options::enableDriftCorrection

Specifies the frequency of drift corrections (0 = off).

Referenced by copy(), ensureConsistency(), print(), setToDefault(), setToMPC(), QProblem::solveQP(), and QProblemB::solveQP().

◆ enableDropInfeasibles

BooleanType Options::enableDropInfeasibles

◆ enableEqualities

BooleanType Options::enableEqualities

Specifies whether equalities shall be always treated as active constraints.

Referenced by copy(), print(), setToDefault(), setToMPC(), QProblemB::setupSubjectToType(), and QProblem::setupSubjectToType().

◆ enableFarBounds

BooleanType Options::enableFarBounds

◆ enableFlippingBounds

BooleanType Options::enableFlippingBounds

◆ enableFullLITests

BooleanType Options::enableFullLITests

Specifies whether condition-hardened LI test shall be used or not.

Referenced by QProblem::addBound_checkLI(), QProblem::addConstraint_checkLI(), copy(), print(), setToDefault(), setToReliable(), and QProblem::setupAuxiliaryWorkingSet().

◆ enableInertiaCorrection

BooleanType Options::enableInertiaCorrection

Specifies whether the working set should be repaired when negative curvature is discovered during hotstart.

Referenced by copy(), print(), and setToDefault().

◆ enableNZCTests

BooleanType Options::enableNZCTests

◆ enableRamping

BooleanType Options::enableRamping

◆ enableRegularisation

BooleanType Options::enableRegularisation

Specifies whether Hessian matrix shall be regularised in case semi-definiteness is detected.

Referenced by copy(), QProblemB::determineHessianType(), print(), QProblemB::regulariseHessian(), setToDefault(), setToMPC(), QProblemB::setupInitialCholesky(), and QProblem::setupInitialCholesky().

◆ epsDen

real_t Options::epsDen

◆ epsFlipping

real_t Options::epsFlipping

Tolerance of squared Cholesky diagonal factor which triggers flipping bound.

Referenced by copy(), ensureConsistency(), print(), QProblem::removeBound(), QProblemB::removeBound(), QProblem::removeConstraint(), and setToDefault().

◆ epsIterRef

real_t Options::epsIterRef

Early termination tolerance for iterative refinement.

Referenced by copy(), QProblem::determineStepDirection(), QProblemB::determineStepDirection(), ensureConsistency(), print(), and setToDefault().

◆ epsLITests

real_t Options::epsLITests

◆ epsNum

real_t Options::epsNum

◆ epsNZCTests

real_t Options::epsNZCTests

Tolerance for nonzero curvature tests.

Referenced by copy(), ensureConsistency(), QProblem::ensureNonzeroCurvature(), print(), and setToDefault().

◆ epsRegularisation

real_t Options::epsRegularisation

Scaling factor of identity matrix used for Hessian regularisation.

Referenced by copy(), ensureConsistency(), print(), QProblemB::regulariseHessian(), and setToDefault().

◆ finalRamping

real_t Options::finalRamping

Final value for Ramping Strategy.

Referenced by copy(), ensureConsistency(), print(), QProblemB::QProblemB(), QProblemB::reset(), and setToDefault().

◆ growFarBounds

real_t Options::growFarBounds

◆ initialFarBounds

real_t Options::initialFarBounds

◆ initialRamping

real_t Options::initialRamping

Start value for Ramping Strategy.

Referenced by copy(), ensureConsistency(), print(), QProblemB::QProblemB(), QProblemB::reset(), and setToDefault().

◆ initialStatusBounds

SubjectToStatus Options::initialStatusBounds

◆ maxDualJump

real_t Options::maxDualJump

◆ maxPrimalJump

real_t Options::maxPrimalJump

Maximum allowed jump in primal variables in nonzero curvature tests.

Referenced by copy(), ensureConsistency(), QProblem::ensureNonzeroCurvature(), print(), and setToDefault().

◆ numRefinementSteps

int_t Options::numRefinementSteps

◆ numRegularisationSteps

int_t Options::numRegularisationSteps

◆ printLevel

PrintLevel Options::printLevel

◆ rcondSMin

real_t Options::rcondSMin

Minimum reciprocal condition number of S before refactorization is triggered

Referenced by copy(), print(), and setToDefault().

◆ terminationTolerance

real_t Options::terminationTolerance

The documentation for this class was generated from the following files: