Allows to export a tailored explicit Runge-Kutta integrator for fast model predictive control. More...
#include <erk_export.hpp>
Public Member Functions | |
ExplicitRungeKuttaExport (UserInteraction *_userInteraction=0, const std::string &_commonHeaderName="") | |
ExplicitRungeKuttaExport (const ExplicitRungeKuttaExport &arg) | |
virtual returnValue | getCode (ExportStatementBlock &code) |
virtual returnValue | getDataDeclarations (ExportStatementBlock &declarations, ExportStruct dataStruct=ACADO_ANY) const |
virtual returnValue | getFunctionDeclarations (ExportStatementBlock &declarations) const |
virtual returnValue | setDifferentialEquation (const Expression &rhs) |
virtual returnValue | setLinearInput (const DMatrix &M1, const DMatrix &A1, const DMatrix &B1) |
virtual returnValue | setLinearOutput (const DMatrix &M3, const DMatrix &A3, const Expression &rhs) |
virtual returnValue | setLinearOutput (const DMatrix &M3, const DMatrix &A3, const std::string &_rhs3, const std::string &_diffs_rhs3) |
virtual returnValue | setup () |
virtual returnValue | setupOutput (const std::vector< Grid > outputGrids_, const std::vector< Expression > rhs) |
virtual returnValue | setupOutput (const std::vector< Grid > outputGrids_, const std::vector< std::string > _outputNames, const std::vector< std::string > _diffs_outputNames, const std::vector< uint > _dims_output) |
virtual returnValue | setupOutput (const std::vector< Grid > outputGrids_, const std::vector< std::string > _outputNames, const std::vector< std::string > _diffs_outputNames, const std::vector< uint > _dims_output, const std::vector< DMatrix > _outputDependencies) |
virtual | ~ExplicitRungeKuttaExport () |
Protected Member Functions | |
ExportVariable | getAuxVariable () const |
Allows to export a tailored explicit Runge-Kutta integrator for fast model predictive control.
The class ExplicitRungeKuttaExport allows to export a tailored explicit Runge-Kutta integrator for fast model predictive control.
Definition at line 54 of file erk_export.hpp.
BEGIN_NAMESPACE_ACADO ExplicitRungeKuttaExport::ExplicitRungeKuttaExport | ( | UserInteraction * | _userInteraction = 0 , |
const std::string & | _commonHeaderName = "" |
||
) |
Default constructor.
[in] | _userInteraction | Pointer to corresponding user interface. |
[in] | _commonHeaderName | Name of common header file to be included. |
Definition at line 44 of file erk_export.cpp.
Copy constructor (deep copy).
[in] | arg | Right-hand side object. |
Definition at line 52 of file erk_export.cpp.
ExplicitRungeKuttaExport::~ExplicitRungeKuttaExport | ( | ) | [virtual] |
Destructor.
Definition at line 59 of file erk_export.cpp.
ExportVariable ExplicitRungeKuttaExport::getAuxVariable | ( | ) | const [protected, virtual] |
Returns the largest global export variable.
Implements IntegratorExport.
Reimplemented in ThreeSweepsERKExport.
Definition at line 389 of file erk_export.cpp.
returnValue ExplicitRungeKuttaExport::getCode | ( | ExportStatementBlock & | code | ) | [virtual] |
Exports source code of the auto-generated integrator into the given directory.
[in] | code | Code block containing the auto-generated integrator. |
Implements RungeKuttaExport.
Reimplemented in ThreeSweepsERKExport, and AdjointERKExport.
Definition at line 322 of file erk_export.cpp.
returnValue ExplicitRungeKuttaExport::getDataDeclarations | ( | ExportStatementBlock & | declarations, |
ExportStruct | dataStruct = ACADO_ANY |
||
) | const [virtual] |
Adds all data declarations of the auto-generated integrator to given list of declarations.
[in] | declarations | List of declarations. |
Implements RungeKuttaExport.
Reimplemented in ThreeSweepsERKExport, and AdjointERKExport.
Definition at line 290 of file erk_export.cpp.
returnValue ExplicitRungeKuttaExport::getFunctionDeclarations | ( | ExportStatementBlock & | declarations | ) | const [virtual] |
Adds all function (forward) declarations of the auto-generated integrator to given list of declarations.
[in] | declarations | List of declarations. |
Implements RungeKuttaExport.
Definition at line 307 of file erk_export.cpp.
returnValue ExplicitRungeKuttaExport::setDifferentialEquation | ( | const Expression & | rhs | ) | [virtual] |
Assigns Differential Equation to be used by the integrator.
[in] | rhs | Right-hand side expression. |
Implements RungeKuttaExport.
Reimplemented in ThreeSweepsERKExport, AdjointERKExport, and ForwardOverBackwardERKExport.
Definition at line 190 of file erk_export.cpp.
returnValue ExplicitRungeKuttaExport::setLinearInput | ( | const DMatrix & | M1, |
const DMatrix & | A1, | ||
const DMatrix & | B1 | ||
) | [virtual] |
[in] | . |
Reimplemented from IntegratorExport.
Definition at line 272 of file erk_export.cpp.
returnValue ExplicitRungeKuttaExport::setLinearOutput | ( | const DMatrix & | M3, |
const DMatrix & | A3, | ||
const Expression & | rhs | ||
) | [virtual] |
[in] | . |
Reimplemented from IntegratorExport.
Definition at line 278 of file erk_export.cpp.
returnValue ExplicitRungeKuttaExport::setLinearOutput | ( | const DMatrix & | M3, |
const DMatrix & | A3, | ||
const std::string & | _rhs3, | ||
const std::string & | _diffs_rhs3 | ||
) | [virtual] |
[in] | . |
Reimplemented from IntegratorExport.
Definition at line 284 of file erk_export.cpp.
returnValue ExplicitRungeKuttaExport::setup | ( | ) | [virtual] |
Initializes export of a tailored integrator.
Implements RungeKuttaExport.
Reimplemented in ThreeSweepsERKExport, AdjointERKExport, and ForwardOverBackwardERKExport.
Definition at line 65 of file erk_export.cpp.
returnValue ExplicitRungeKuttaExport::setupOutput | ( | const std::vector< Grid > | outputGrids_, |
const std::vector< Expression > | rhs | ||
) | [virtual] |
Sets up the output with the grids for the different output functions.
outputGrids_ | The vector containing a grid for each output function. |
rhs | The expressions corresponding the output functions. |
Implements RungeKuttaExport.
Definition at line 364 of file erk_export.cpp.
returnValue ExplicitRungeKuttaExport::setupOutput | ( | const std::vector< Grid > | outputGrids_, |
const std::vector< std::string > | _outputNames, | ||
const std::vector< std::string > | _diffs_outputNames, | ||
const std::vector< uint > | _dims_output | ||
) | [virtual] |
Sets up the output with the grids for the different output functions.
outputGrids_ | The vector containing a grid for each output function. |
_outputNames | The names of the output functions. |
_diffs_outputNames | The names of the functions, evaluating the derivatives of the outputs. |
_dims_output | The dimensions of the output functions. |
Implements IntegratorExport.
Definition at line 370 of file erk_export.cpp.
returnValue ExplicitRungeKuttaExport::setupOutput | ( | const std::vector< Grid > | outputGrids_, |
const std::vector< std::string > | _outputNames, | ||
const std::vector< std::string > | _diffs_outputNames, | ||
const std::vector< uint > | _dims_output, | ||
const std::vector< DMatrix > | _outputDependencies | ||
) | [virtual] |
Sets up the output with the grids for the different output functions.
outputGrids_ | The vector containing a grid for each output function. |
_outputNames | The names of the output functions. |
_diffs_outputNames | The names of the functions, evaluating the derivatives of the outputs. |
_dims_output | The dimensions of the output functions. |
_outputDependencies | A separate dependency matrix for each output. |
Implements IntegratorExport.
Definition at line 379 of file erk_export.cpp.