Public Member Functions | Protected Member Functions | Protected Attributes | List of all members

Base class for all kind of constraints (except for bounds) within optimal control problems. More...

#include <constraint_element.hpp>

Inheritance diagram for ConstraintElement:
Inheritance graph
[legend]

Public Member Functions

 ConstraintElement ()
 
 ConstraintElement (const Grid &grid_, int nFcn_, int nB_)
 
 ConstraintElement (const ConstraintElement &rhs)
 
returnValue get (Function &function_, DMatrix &lb_, DMatrix &ub_)
 
virtual returnValue getBackwardSensitivities (BlockMatrix *D, int order)
 
virtual returnValue getForwardSensitivities (BlockMatrix *D, int order)
 
GridgetGrid ()
 
int getNP () const
 
int getNU () const
 
int getNW () const
 
int getNX () const
 
int getNXA () const
 
virtual returnValue getResiduum (BlockMatrix &lower_residuum, BlockMatrix &upper_residuum)
 
returnValue init (const OCPiterate &iter)
 
BooleanType isAffine () const
 
ConstraintElementoperator= (const ConstraintElement &rhs)
 
virtual returnValue setBackwardSeed (BlockMatrix *seed, int order)
 
virtual returnValue setForwardSeed (BlockMatrix *xSeed_, BlockMatrix *xaSeed_, BlockMatrix *pSeed_, BlockMatrix *uSeed_, BlockMatrix *wSeed_, int order)
 
virtual returnValue setUnitForwardSeed ()
 
virtual ~ConstraintElement ()
 

Protected Member Functions

virtual returnValue initializeEvaluationPoints (const OCPiterate &iter)
 

Protected Attributes

BlockMatrixbSeed
 
BlockMatrixbSeed2
 
CondensingType condType
 
BlockMatrix dBackward
 
BlockMatrix dForward
 
Functionfcn
 
Grid grid
 
EvaluationPointJJ
 
double ** lb
 
int na
 
int nB
 
int nFcn
 
int np
 
int nu
 
int nw
 
int nx
 
int ny
 
BlockMatrixpSeed
 
BlockMatrixpSeed2
 
BlockMatrix residuumL
 
BlockMatrix residuumU
 
int * t_index
 
double ** ub
 
BlockMatrixuSeed
 
BlockMatrixuSeed2
 
BlockMatrixwSeed
 
BlockMatrixwSeed2
 
BlockMatrixxaSeed
 
BlockMatrixxaSeed2
 
BlockMatrixxSeed
 
BlockMatrixxSeed2
 
int ** y_index
 
EvaluationPointz
 

Detailed Description

Base class for all kind of constraints (except for bounds) within optimal control problems.

The class ConstraintElement serves as base class for all kind of different constraints (except for box constraints) within optimal control problems.

\author Boris Houska, Hans Joachim Ferreau

Definition at line 57 of file constraint_element.hpp.

Constructor & Destructor Documentation

BEGIN_NAMESPACE_ACADO ConstraintElement::ConstraintElement ( )

Default constructor.

Definition at line 45 of file constraint_element.cpp.

ConstraintElement::ConstraintElement ( const Grid grid_,
int  nFcn_,
int  nB_ 
)

Default constructor.

Definition at line 82 of file constraint_element.cpp.

ConstraintElement::ConstraintElement ( const ConstraintElement rhs)

Copy constructor (deep copy).

Definition at line 133 of file constraint_element.cpp.

ConstraintElement::~ConstraintElement ( )
virtual

Destructor.

Definition at line 248 of file constraint_element.cpp.

Member Function Documentation

returnValue ConstraintElement::get ( Function function_,
DMatrix lb_,
DMatrix ub_ 
)

Definition at line 753 of file constraint_element.cpp.

returnValue ConstraintElement::getBackwardSensitivities ( BlockMatrix D,
int  order 
)
virtual

Returns the result for the backward sensitivities in BlockMatrix form.

Returns
SUCCESSFUL_RETURN
RET_INPUT_OUT_OF_RANGE
Parameters
Dthe result for the forward sensitivi- ties
orderthe order

Definition at line 709 of file constraint_element.cpp.

returnValue ConstraintElement::getForwardSensitivities ( BlockMatrix D,
int  order 
)
virtual

Returns the result for the forward sensitivities in BlockMatrix form.

Returns
SUCCESSFUL_RETURN
RET_INPUT_OUT_OF_RANGE
Parameters
Dthe result for the forward sensitivi- ties
orderthe order

Definition at line 692 of file constraint_element.cpp.

Grid& ConstraintElement::getGrid ( )
inline

returns the constraint grid

int ConstraintElement::getNP ( ) const
inline

Returns the number of parameters

Returns
The requested number of parameters.
int ConstraintElement::getNU ( ) const
inline

Returns the number of controls

Returns
The requested number of controls.
int ConstraintElement::getNW ( ) const
inline

Returns the number of disturbances

Returns
The requested number of disturbances.
int ConstraintElement::getNX ( ) const
inline

Returns the number of differential states

Returns
The requested number of differential states.
int ConstraintElement::getNXA ( ) const
inline

Returns the number of algebraic states

Returns
The requested number of algebraic states.
returnValue ConstraintElement::getResiduum ( BlockMatrix lower_residuum,
BlockMatrix upper_residuum 
)
virtual

Returns the result for the residuum.

Returns
SUCCESSFUL_RETURN
Parameters
lower_residuumthe lower residuum
upper_residuumthe upper residuum

Definition at line 681 of file constraint_element.cpp.

returnValue ConstraintElement::init ( const OCPiterate iter)

Initializes the Constraint Element: The dimensions and
index lists.

Returns
SUCCESSFUL_RETURN

Definition at line 479 of file constraint_element.cpp.

returnValue ConstraintElement::initializeEvaluationPoints ( const OCPiterate iter)
protectedvirtual

Reimplemented in AlgebraicConsistencyConstraint.

Definition at line 731 of file constraint_element.cpp.

BooleanType ConstraintElement::isAffine ( ) const
inline

returns whether the constraint element is affine.

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

Assignment operator (deep copy).

Definition at line 306 of file constraint_element.cpp.

returnValue ConstraintElement::setBackwardSeed ( BlockMatrix seed,
int  order 
)
virtual

Define a backward seed in form of a block matrix.

Returns
SUCCESFUL_RETURN
RET_INPUT_OUT_OF_RANGE
Parameters
seedthe seed matrix
orderthe order of the seed.

Definition at line 649 of file constraint_element.cpp.

returnValue ConstraintElement::setForwardSeed ( BlockMatrix xSeed_,
BlockMatrix xaSeed_,
BlockMatrix pSeed_,
BlockMatrix uSeed_,
BlockMatrix wSeed_,
int  order 
)
virtual

Define a forward seed in form of a block matrix.

Returns
SUCCESFUL RETURN
RET_INPUT_OUT_OF_RANGE
Parameters
xSeed_the seed in x -direction
xaSeed_the seed in xa-direction
pSeed_the seed in p -direction
uSeed_the seed in u -direction
wSeed_the seed in w -direction
orderthe order of the seed.

Definition at line 530 of file constraint_element.cpp.

returnValue ConstraintElement::setUnitForwardSeed ( )
virtual

Defines the first order forward seed to be
the unit-directions matrix.

Returns
SUCCESFUL_RETURN
RET_INPUT_OUT_OF_RANGE

Definition at line 631 of file constraint_element.cpp.

Member Data Documentation

BlockMatrix* ConstraintElement::bSeed
protected

the 1st order backward seed

Definition at line 284 of file constraint_element.hpp.

BlockMatrix* ConstraintElement::bSeed2
protected

the 2nd order backward seed

Definition at line 292 of file constraint_element.hpp.

CondensingType ConstraintElement::condType
protected

the condensing type

Definition at line 303 of file constraint_element.hpp.

BlockMatrix ConstraintElement::dBackward
protected

the first order backward derivatives

Definition at line 301 of file constraint_element.hpp.

BlockMatrix ConstraintElement::dForward
protected

the first order forward derivatives

Definition at line 300 of file constraint_element.hpp.

Function* ConstraintElement::fcn
protected

the functions

Definition at line 247 of file constraint_element.hpp.

Grid ConstraintElement::grid
protected

the constraint grid

Definition at line 246 of file constraint_element.hpp.

EvaluationPoint* ConstraintElement::JJ
protected

Definition at line 252 of file constraint_element.hpp.

double** ConstraintElement::lb
protected

lower bounds

Definition at line 248 of file constraint_element.hpp.

int ConstraintElement::na
protected

number of alg. states

Definition at line 266 of file constraint_element.hpp.

int ConstraintElement::nB
protected

number of bounds

Definition at line 273 of file constraint_element.hpp.

int ConstraintElement::nFcn
protected

number of functions

Definition at line 272 of file constraint_element.hpp.

int ConstraintElement::np
protected

number of parameters

Definition at line 268 of file constraint_element.hpp.

int ConstraintElement::nu
protected

number of controls

Definition at line 267 of file constraint_element.hpp.

int ConstraintElement::nw
protected

number of disturbances

Definition at line 269 of file constraint_element.hpp.

int ConstraintElement::nx
protected

number of diff. states

Definition at line 265 of file constraint_element.hpp.

int ConstraintElement::ny
protected

:= nx+na+nu+np+nw

Definition at line 270 of file constraint_element.hpp.

BlockMatrix* ConstraintElement::pSeed
protected

the 1st order forward seed in p-direction

Definition at line 280 of file constraint_element.hpp.

BlockMatrix* ConstraintElement::pSeed2
protected

the 2nd order forward seed in p-direction

Definition at line 288 of file constraint_element.hpp.

BlockMatrix ConstraintElement::residuumL
protected

the residuum vectors

Definition at line 297 of file constraint_element.hpp.

BlockMatrix ConstraintElement::residuumU
protected

the residuum vectors

Definition at line 298 of file constraint_element.hpp.

int* ConstraintElement::t_index
protected

time indices

Definition at line 259 of file constraint_element.hpp.

double** ConstraintElement::ub
protected

upper bounds

Definition at line 249 of file constraint_element.hpp.

BlockMatrix* ConstraintElement::uSeed
protected

the 1st order forward seed in u-direction

Definition at line 281 of file constraint_element.hpp.

BlockMatrix* ConstraintElement::uSeed2
protected

the 2nd order forward seed in u-direction

Definition at line 289 of file constraint_element.hpp.

BlockMatrix* ConstraintElement::wSeed
protected

the 1st order forward seed in w-direction

Definition at line 282 of file constraint_element.hpp.

BlockMatrix* ConstraintElement::wSeed2
protected

the 2nd order forward seed in w-direction

Definition at line 290 of file constraint_element.hpp.

BlockMatrix* ConstraintElement::xaSeed
protected

the 1st order forward seed in x-direction

Definition at line 279 of file constraint_element.hpp.

BlockMatrix* ConstraintElement::xaSeed2
protected

the 2nd order forward seed in x-direction

Definition at line 287 of file constraint_element.hpp.

BlockMatrix* ConstraintElement::xSeed
protected

the 1st order forward seed in x-direction

Definition at line 278 of file constraint_element.hpp.

BlockMatrix* ConstraintElement::xSeed2
protected

the 2nd order forward seed in x-direction

Definition at line 286 of file constraint_element.hpp.

int** ConstraintElement::y_index
protected

index lists

Definition at line 258 of file constraint_element.hpp.

EvaluationPoint* ConstraintElement::z
protected

the evaluation points

Definition at line 251 of file constraint_element.hpp.


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


acado
Author(s): Milan Vukov, Rien Quirynen
autogenerated on Mon Jun 10 2019 12:35:22