ACADO Toolkit
1.2.0beta
Toolkit for Automatic Control and Dynamic Optimization

ACADOcsparse  (not yet documented) 
Acos  Implements the scalar inverse cosine operator (arccos) within the symbolic operators family 
Actuator  Allows to simulate the behaviour of actuators within the Process 
AdaptiveReferenceTrajectory  Allows to define an adaptive reference trajectory that the ControlLaw aims to track 
Addition  Implements the scalar addition operator within the symbolic expressions family 
AdjointIRKExport  Allows to export a tailored implicit RungeKutta integrator with adjoint sensitivity generation for fast model predictive control 
AlgebraicConsistencyConstraint  Deals with algebraic consistency constraints within optimal control problems 
AlgebraicState  Implements a scalar algebraic state 
AlgorithmicBase  Base class for all algorithmic modules within the ACADO Toolkit providing some basic functionality 
Asin  Implements the scalar inverse sine operator (arcsin) within the symbolic operators family 
Atan  Implements the scalar inverse tangens operator (arctan) within the symbolic operators family 
BandedCP  Data class for storing conic programs arising from optimal control 
BandedCPsolver  Base class for algorithms solving banded conic programs arising in optimal control 
BFGSupdate  Implements BFGS updates for approximating secondorder derivatives within NLPsolvers 
BinaryOperator  Abstract base class for all scalarvalued binary operators within the symbolic operators family 
BlockMatrix  Implements a very rudimentary block sparse matrix class 
BoundaryConstraint  Stores and evaluates boundary constraints within optimal control problems 
BoxConstraint  Stores and evaluates box constraints within optimal control problems 
CFunction  (no description yet) 
ClippingFunctionality  Allows to transform the output of the ControlLaw before passing it to the Process 
Clock  Base class for all kind of time measurements 
CollocationMethod  Discretizes a DifferentialEquation by means of a collocation scheme 
ColoredNoise  Generates pseudorandom colored noise for simulating the Process 
CondensingBasedCPsolver  Solves banded conic programs arising in optimal control using condensing 
ConjugateGradientMethod  Implements a conjugate gradient method as sparse linear algebra solver 
ConstantHessian  Implements a constant Hessian as approximation of secondorder derivatives within NLPsolvers 
Constraint  Stores and evaluates the constraints of optimal control problems 
ConstraintComponent  Data class for symbolically formulating constraints within optimal control problems 
ConstraintElement  Base class for all kind of constraints (except for bounds) within optimal control problems 
Control  Implements a control variable 
ControlLaw  Base class for interfacing online feedback laws to be used within a Controller 
Controller  Calculates the control inputs of the Process based on the Process outputs 
COperator  The class COperator is an auxiliary class to use CFunctions within a function evaluation tree 
Cos  Implements the scalar cosine operator within the symbolic operators family 
CoupledPathConstraint  Stores and evaluates coupled path constraints within optimal control problems 
Curve  Allows to work with piecewisecontinous function defined over a scalar time interval 
DenseCP  Data class for storing generic conic programs 
DenseCPsolver  Base class for algorithms solving conic programs 
DenseQPsolver  Abstract base class for algorithms solving quadratic programs 
DiagonallyImplicitRKExport  Allows to export a tailored diagonally implicit RungeKutta integrator for fast model predictive control 
DiagonallyIRK3Export  Allows to export a tailored diagonally implicit 2stage RungeKutta method of order 3 for fast model predictive control 
DiagonallyIRK4Export  Allows to export a tailored diagonally implicit 3stage RungeKutta method of order 4 for fast model predictive control 
DiagonallyIRK5Export  Allows to export a tailored diagonally implicit 5stage RungeKutta method of order 5 for fast model predictive control 
DifferentialEquation  Allows to setup and evaluate differential equations (ODEs and DAEs) based on SymbolicExpressions 
DifferentialState  Implements a differential state 
DifferentialStateDerivative  Implements a derivative of a differential state 
DiscreteTimeExport  Allows to export a tailored discretetime 'integrator' for fast model predictive control 
DiscretizedDifferentialEquation  Allows to setup and evaluate discretized differential equations based on SymbolicExpressions 
Disturbance  Implements a disturbance variable 
DoubleConstant  Implements a scalar constant within the symbolic operators family 
DynamicDiscretization  Base class for discretizing a DifferentialEquation for use in optimal control algorithms 
DynamicEstimator  Implements an online state/parameter estimator based on dynamic optimization 
DynamicSystem  Stores a DifferentialEquation together with an OutputFcn 
EllipsoidalIntegrator  Validated integrator for ODEs based on Taylor models with ellipsoidal remainder term 
Estimator  Base class for interfacing online state/parameter estimators 
EvaluationBase  Abstract base class for templated evaluation of operators 
EvaluationPoint  Allows to setup function evaluation points 
EvaluationTemplate< T >  Templated class for operator evaluation 
ExactHessian  Implements an exact Hessian computation for obtaining secondorder derivatives within NLPsolvers 
TaylorModel< T >::Exceptions  Taylor model exceptions 
Exp  Implements the scalar exponential operator within the symbolic operators family 
ExplicitEulerExport  Allows to export a tailored explicit Euler method for fast model predictive control 
ExplicitRungeKutta2Export  Allows to export a tailored explicit RungeKutta integrator of order 2 for fast model predictive control 
ExplicitRungeKutta3Export  Allows to export a tailored explicit RungeKutta integrator of order 3 for fast model predictive control 
ExplicitRungeKutta4Export  Allows to export a tailored explicit RungeKutta integrator of order 4 for fast model predictive control 
ExplicitRungeKuttaExport  Allows to export a tailored explicit RungeKutta integrator for fast model predictive control 
ExportAcadoFunction  Allows to export code of an ACADO function 
ExportAlgorithm  Allows to export automatically generated algorithms for fast model predictive control 
ExportAlgorithmFactory< AlgorithmBase, AlgorithmType >  Factory for creation of exported algorithms 
ExportArgument  Defines a matrixvalued variable that can be passed as argument to exported functions 
ExportArgumentInternal  Defines a matrixvalued variable that can be passed as argument to exported functions 
ExportArgumentList  Allows to store a list of calling arguments of an ExportFunction 
ExportArithmeticStatement  Allows to export code of different arithmetic statements 
ExportAuxiliaryFunctions  A class for generating some helper functions 
ExportCholeskyDecomposition  A class for exporting a function for calculation of the Cholesky decomposition 
ExportData  Abstract base class to define variables to be used for exporting code 
ExportDataDeclaration  Allows to export code containing variable declarations 
ExportDataInternal  
ExportFile  Allows to export files containing automatically generated algorithms for fast model predictive control 
ExportForcesGenerator  Generator of the FORCES interface, the to, be called from MATLAB 
ExportForcesInterface  A class for configuration and export for interface to the FORCES QP solver 
ExportForLoop  Allows to export code of a forloop 
ExportFunction  Allows to export code of an arbitrary function 
ExportFunctionCall  Allows to export code of a function call 
ExportFunctionDeclaration  Allows to export code containing function (forward) declarations 
ExportGaussElim  Allows to export Gaussian elimination for solving linear systems of specific dimensions 
ExportGaussNewtonCN2  TBD 
ExportGaussNewtonCondensed  A class for export of GaussNewton condensed OCP solver 
ExportGaussNewtonForces  A class for export of an OCP solver using sparse QP solver FORCES 
ExportGaussNewtonQpDunes  A class for export of an OCP solver using sparse QP solver qpDUNES 
ExportHouseholderQR  Allows to export Householder QR Factorization for solving linear systems of specific dimensions 
ExportIndex  Defines a scalarvalued index variable to be used for exporting code 
ExportIndexComparator  
ExportIndexNode  
ExportLinearSolver  Allows to export automatically generated algorithms for solving linear systems of specific dimensions 
ExportMatlabIntegrator  .. 
ExportMatlabRhs  .. 
ExportModule  Userinterface to automatically generate algorithms for fast model predictive control 
ExportNLPSolver  Base class for export of NLP/OCP solvers 
ExportQpDunesInterface  Interface generator for the qpDUNES QP solver 
ExportQpOasesInterface  A class for generating the glue code for interfacing qpOASES 
ExportSimulinkInterface  A class for generating the glue code and makefile for interfacing generated code and Simulink 
ExportStatement  Base class for all kind of statements to be exported by the code generation tool 
ExportStatementBlock  Allows to export code for a block of statements 
ExportStatementString  Allows to export code writing a string 
ExportTemplatedFile  Allows export of template files 
ExportVariable  Defines a matrixvalued variable to be used for exporting code 
ExportVariableInternal  Defines a matrixvalued variable to be used for exporting code 
Expression  Base class for all variables within the symbolic expressions family 
FeedforwardLaw  Implements a feedforward law to be used within a Controller 
ForwardIRKExport  Allows to export a tailored implicit RungeKutta integrator with forward sensitivity generation for fast model predictive control 
Frame  Define the concept of a mechanical frame 
FrameNode  Internal class to make Frame trees referencesafe 
Function  Allows to setup and evaluate a general function based on SymbolicExpressions 
FunctionEvaluationTree  Organizes the evaluation of the function tree 
GaussianNoise  Generates pseudorandom Gaussian noise for simulating the Process 
GaussLegendre2Export  Allows to export a tailored GaussLegendre method of order 2 for fast model predictive control 
GaussLegendre4Export  Allows to export a tailored GaussLegendre method of order 4 for fast model predictive control 
GaussLegendre6Export  Allows to export a tailored GaussLegendre method of order 6 for fast model predictive control 
GaussLegendre8Export  Allows to export a tailored GaussLegendre method of order 8 for fast model predictive control 
GaussNewtonApproximation  Implements a GaussNewton approximation as secondorder derivatives within NLPsolvers 
GaussNewtonApproximationWithBFGS  Implements a GaussNewton approximation with block BFGS updates as secondorder derivatives within NLPsolvers 
GnuplotWindow  Provides an interface to Gnuplot for plotting algorithmic outputs 
Grid  Allows to conveniently handle (onedimensional) grids consisting of time points 
ImplicitRungeKuttaExport  Allows to export a tailored implicit RungeKutta integrator for fast model predictive control 
IntegerControl  Implements an integervalued control 
IntegerParameter  Implements an integervalued parameter 
IntegrationAlgorithm  Userinterface to integrate a DynamicSystem, possibly over multiple stages 
Integrator  Abstract base class for all kinds of algorithms for integrating differential equations (ODEs or DAEs) 
IntegratorBDF  Implements the backwarddifferentiation formula for integrating DAEs 
IntegratorDiscretizedODE  Implements a scheme for evaluating discretized ODEs 
IntegratorExport  Allows to export a tailored integrator for fast model predictive control 
IntegratorLYAPUNOV  Base class for all kinds of RungeKutta schemes for integrating ODEs 
IntegratorLYAPUNOV45  Implements the RungeKutta45 scheme for integrating ODEs 
IntegratorRK  Abstract base class for all kinds of RungeKutta schemes for integrating ODEs 
IntegratorRK12  Implements the RungeKutta12 scheme for integrating ODEs 
IntegratorRK23  Implements the RungeKutta23 scheme for integrating ODEs 
IntegratorRK45  Implements the RungeKutta45 scheme for integrating ODEs 
IntegratorRK78  Implements the RungeKutta78 scheme for integrating ODEs 
IntermediateState  Implements an intermediate state 
Interval  Implements a rudimentary interval class 
IPmethod  Implements different interiorpoint methods for solving NLPs 
KalmanFilter  Provides a Kalman filter for state estimation 
KinVec  Represent kinematical vectors 
LagrangeTerm  Stores and evaluates Lagrange terms within optimal control problems 
LinearStateFeedback  Implements a linear state feedback law to be used within a Controller 
Logarithm  Implements the scalar logarithm operator within the symbolic operators family 
LogCollection  Manages a generic list of log records (for internal use) 
Logger  A very simple logging class 
Logging  Provides a generic way to store algorithmic information during runtime 
LogRecord  Allows to setup and store userspecified log records of algorithmic information 
LogRecordItem  Allows to manage single items of userspecified LogRecords of algorithmic information (for internal use) 
LSQEndTerm  Stores and evaluates LSQ mayer terms within optimal control problems 
LSQTerm  Stores and evaluates LSQ terms within optimal control problems 
Lyapunov  Implements a parameter 
MatFile  Simple class for writing binary data file that are compatible with Matlab 
Matrix  Implements a rudimentary dense matrix class 
MatrixVariable  Provides matrixvalued optimization variables 
MatrixVariablesGrid  Provides a time grid consisting of matrixvalued optimization variables at each grid point 
MayerTerm  Stores and evaluates Mayer terms within optimal control problems 
MemoryAllocator  
MHEalgorithm  Userinterface to formulate and solve moving horizon estimation problems 
ModelContainer  Container class to store and pass data to the ModelData class 
ModelData  Data class for defining models and everything that is related, to be passed to the integrator 
MultiObjectiveAlgorithm  Userinterface to formulate and solve optimal control problems with multiple objectives 
MultiObjectiveFunctionality  Encapsulates functionality for defining OCPs having multiple objectives 
NARXExport  Allows to export a tailored polynomial NARX integrator for fast model predictive control 
NLP  Data class for defining static optimization problems 
NLPderivativeApproximation  Base class for techniques of approximating secondorder derivatives within NLPsolvers 
NLPsolver  Base class for different algorithms for solving nonlinear programming (NLP) problems 
Noise  Base class for generating pseudorandom noise for simulating the Process 
NonsmoothOperator  Abstract base class for all scalarvalued symbolic operators 
NormalConjugateGradientMethod  Implements a conjugate gradient method as sparse linear algebra solver for nonsymmetric linear systems 
Objective  Stores and evaluates the objective function of optimal control problems 
ObjectiveElement  Base class for all kind of objective function terms within optimal control problems 
ObjectPool< T, C >  An object pool class that creates and reuses objects of an arbitrary type 
OCP  Data class for defining optimal control problems 
OCPexport  A user class for autogeneration of OCP solvers 
OCPiterate  Data class for storing generic optimization variables 
Operator  Abstract base class for all scalarvalued symbolic operators 
OptimizationAlgorithm  Userinterface to formulate and solve optimal control problems and static NLPs 
OptimizationAlgorithmBase  Notes: 
TaylorModel< T >::Options  Taylor model options 
Options  Provides a generic way to set and pass userspecified options 
OptionsItem  Abstract base class for items of a generic OptionsList (for internal use) 
OptionsItemDouble  Provides realvalued items within the OptionsList (for internal use) 
OptionsItemInt  Provides integervalued items within the OptionsList (for internal use) 
OptionsList  Provides a generic list of options (for internal use) 
Output  Implements a differential state 
OutputFcn  Allows to setup and evaluate output functions based on SymbolicExpressions 
Parameter  Implements a parameter 
ParameterEstimationAlgorithm  Userinterface to formulate and solve parameter estimation problems 
PathConstraint  Stores and evaluates path constraints within optimal control problems 
PeriodicReferenceTrajectory  Allows to define a static periodic reference trajectory that the ControlLaw aims to track 
PIDcontroller  Implements a PID control law to be used within a Controller 
PlotCollection  Provides a generic list of plot windows (for internal use) 
Plotting  Provides a generic way to plot algorithmic outputs during runtime 
PlotWindow  Allows to setup and plot userspecified plot windows for algorithmic outputs 
PlotWindowSubplot  Allows to manage subwindows of userspecified plot windows for algorithmic outputs (for internal use) 
PointConstraint  Stores and evaluates pointwise constraints within optimal control problems 
Power  Implements the scalar power operator within the symbolic operators family 
Power_Int  Implements the scalar power operator with integer exponent within the symbolic operators family 
Process  Simulates the process to be controlled based on a dynamic model 
Product  Implements the scalar product operator within the symbolic operators family 
Projection  Implements the projection operator within the symbolic operators family 
QPsolver_qpOASES  (not yet documented) 
Quotient  Implements the scalar quotient operator within the symbolic operators family 
RadauIIA1Export  Allows to export a tailored Radau IIA method of order 1 for fast model predictive control 
RadauIIA3Export  Allows to export a tailored Radau IIA method of order 3 for fast model predictive control 
RadauIIA5Export  Allows to export a tailored Radau IIA method of order 5 for fast model predictive control 
RealClock  Allows real time measurements based on the system's clock 
RealTimeAlgorithm  Userinterface to formulate and solve model predictive control problems 
ReferenceTrajectory  Abstract base class to define a reference trajectory that the ControlLaw aims to track 
RegisterDiagonallyIRK3Export  
RegisterDiagonallyIRK4Export  
RegisterDiagonallyIRK5Export  
RegisterDiscreteTimeExport  
RegisterExplicitEulerExport  
RegisterExplicitRungeKutta2Export  
RegisterExplicitRungeKutta3Export  
RegisterExplicitRungeKutta4Export  
RegisterGaussLegendre2Export  
RegisterGaussLegendre4Export  
RegisterGaussLegendre6Export  
RegisterGaussLegendre8Export  
RegisterGaussNewtonCN2  
RegisterGaussNewtonCondensed  
RegisterGaussNewtonForces  
RegisterGaussNewtonQpDunes  
RegisterNARXExport  
RegisterRadauIIA1Export  
RegisterRadauIIA3Export  
RegisterRadauIIA5Export  
returnValue  Allows to pass back messages to the calling function 
ReturnValueList  Data structure for entries in returnValueList 
RKSensitivitiesExport  Allows to export a tailored RungeKutta sensitivity propagation for fast model predictive control 
RungeKuttaExport  Allows to export a tailored RungeKutta integrator for fast model predictive control 
SCPevaluation  Base class for different ways to evaluate functions and derivatives within an SCPmethod for solving NLPs 
SCPmeritFunction  Allows to evaluate a merit function within an SCPmethod for solving NLPs 
SCPmethod  Implements different sequential convex programming methods for solving NLPs 
SCPstep  Base class for different ways to perform a step of an SCPmethod for solving NLPs 
SCPstepFullstep  Implements a fullstep to perform a step of an SCPmethod for solving NLPs 
SCPstepLinesearch  Implements linesearch techniques to perform a globalized step of an SCPmethod for solving NLPs 
Sensor  Allows to simulate the behaviour of sensors within the Process 
ShootingMethod  Discretizes a DifferentialEquation by means of single or multiple shooting 
SIMexport  Userinterface to automatically generate simulation algorithms for fast optimal control 
SimulatedReferenceTrajectory  Allows to define a simulated reference trajectory that the ControlLaw aims to track 
SimulationBlock  Base class for buildingblocks of the SimulationEnvironment 
SimulationClock  Simulates real time measurements for simulations 
SimulationEnvironment  Allows to run closedloop simulations of dynamic systems 
Sin  Implements the scalar sine operator within the symbolic operators family 
SmoothOperator  Abstract base class for all scalarvalued symbolic operators 
SparseSolver  Generic interface for sparse solvers to be coupled with ACADO Toolkit 
StaticReferenceTrajectory  Allows to define a static reference trajectory that the ControlLaw aims to track 
Stream  Provides a very rudimentary class to handle streams 
String  Provides a very rudimentary class to handle strings 
StringComparer  
Subtraction  Implements the scalar subtraction operator within the symbolic operators family 
SymbolicIndexList  Manages the indices of SymbolicVariables 
SymmetricConjugateGradientMethod  Implements a conjugate gradient method as sparse linear algebra solver for symmetric linear systems 
Tan  Implements the scalar tangens operator within the symbolic operators family 
TaylorModel< T >  C++ class supporting the definition and computation of Taylor models for factorable functions ///////////////////////////////////////////////////////////////////// mc::TaylorModel<T> is a C++ base class that supports the definition and computation of Taylor models for factorable functions on a box. The template parameter T corresponds to the type used in computing the remainder error bound. ///////////////////////////////////////////////////////////////////// 
TaylorVariable< T >  C++ template class for definition of and operation on variables in a Taylor model ///////////////////////////////////////////////////////////////////// mc::TaylorVariable<T> is a C++ template class for definition of and operation on the variables participating in a Taylor model of a factorable function. The template parameter T corresponds to the type used in computing the remainder error bound in the Taylor model. ///////////////////////////////////////////////////////////////////// 
TevaluationPoint< T >  Allows to setup function evaluation points 
TIME  Implements the time within the family of Expressions 
Tmatrix< T >  Implements a templated dense matrix class 
TransferDevice  Base class for simulating Actuator and Sensor behaviour wihtin the Process 
Transition  Allows to setup and evaluate transition functions based on SymbolicExpressions 
TreeProjection  Implements the treeprojection operator within the family of SymbolicOperators 
UnaryOperator  Abstract base class for all scalarvalued unary operators within the symbolic operators family 
UniformNoise  Generates pseudorandom uniformly distributed noise for simulating the Process 
UserInteraction  Encapsulates all user interaction for setting options, logging data and plotting results 
VariableSettings  Provides variablespecific settings for vector or matrixvalued optimization variables (for internal use) 
VariablesGrid  Provides a time grid consisting of vectorvalued optimization variables at each grid point 
Vector  Implements a rudimentary dense vector class 
VectorspaceElement  Basis of the rudimentary dense Matrix and Vector classes 
WeightGeneration  Generates weights for solving OCPs having multiple objectives 