Allows to export a tailored polynomial NARX integrator for fast model predictive control. More...
#include <narx_export.hpp>
Allows to export a tailored polynomial NARX integrator for fast model predictive control.
The class NARXExport allows to export a tailored polynomial NARX integrator for fast model predictive control.
Definition at line 54 of file narx_export.hpp.
BEGIN_NAMESPACE_ACADO NARXExport::NARXExport | ( | 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 narx_export.cpp.
NARXExport::NARXExport | ( | const NARXExport & | arg | ) |
Copy constructor (deep copy).
[in] | arg | Right-hand side object. |
Definition at line 52 of file narx_export.cpp.
NARXExport::~NARXExport | ( | ) | [virtual] |
Destructor.
Definition at line 62 of file narx_export.cpp.
returnValue NARXExport::formNARXpolynomial | ( | const uint | num, |
const uint | order, | ||
uint & | base, | ||
const uint | index, | ||
IntermediateState & | result | ||
) | [protected] |
..
Definition at line 727 of file narx_export.cpp.
returnValue NARXExport::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. |
Reimplemented from DiscreteTimeExport.
Definition at line 597 of file narx_export.cpp.
returnValue NARXExport::prepareFullRhs | ( | ) | [protected] |
Prepares a function that evaluates the complete right-hand side.
Definition at line 326 of file narx_export.cpp.
returnValue NARXExport::propagateImplicitSystem | ( | ExportStatementBlock * | block, |
const ExportIndex & | index1, | ||
const ExportIndex & | index2, | ||
const ExportIndex & | index3, | ||
const ExportIndex & | tmp_index | ||
) | [virtual] |
Exports the code needed to propagate the sensitivities of the states defined by the nonlinear part.
[in] | block | The block to which the code will be exported. |
Reimplemented from IntegratorExport.
Definition at line 458 of file narx_export.cpp.
returnValue NARXExport::propagateInputSystem | ( | ExportStatementBlock * | block, |
const ExportIndex & | index1, | ||
const ExportIndex & | index2, | ||
const ExportIndex & | index3, | ||
const ExportIndex & | tmp_index | ||
) | [virtual] |
Exports the code needed to propagate the sensitivities of the states, defined by the linear input system.
[in] | block | The block to which the code will be exported. |
Reimplemented from IntegratorExport.
Definition at line 430 of file narx_export.cpp.
returnValue NARXExport::propagateOutputSystem | ( | ExportStatementBlock * | block, |
const ExportIndex & | index1, | ||
const ExportIndex & | index2, | ||
const ExportIndex & | index3, | ||
const ExportIndex & | tmp_index | ||
) | [virtual] |
Exports the code needed to propagate the sensitivities of the states, defined by the linear output system.
[in] | block | The block to which the code will be exported. |
Reimplemented from IntegratorExport.
Definition at line 513 of file narx_export.cpp.
returnValue NARXExport::setDifferentialEquation | ( | const Expression & | rhs | ) | [virtual] |
Assigns Differential Equation to be used by the integrator.
[in] | rhs | Right-hand side expression. |
Reimplemented from DiscreteTimeExport.
Definition at line 583 of file narx_export.cpp.
returnValue NARXExport::setLinearOutput | ( | const DMatrix & | M3, |
const DMatrix & | A3, | ||
const Expression & | rhs | ||
) | [virtual] |
[in] | . |
Reimplemented from IntegratorExport.
Definition at line 649 of file narx_export.cpp.
returnValue NARXExport::setLinearOutput | ( | const DMatrix & | M3, |
const DMatrix & | A3, | ||
const std::string & | _rhs3, | ||
const std::string & | _diffs_rhs3 | ||
) | [virtual] |
[in] | . |
Reimplemented from IntegratorExport.
Definition at line 720 of file narx_export.cpp.
returnValue NARXExport::setModel | ( | const std::string & | _rhs, |
const std::string & | _diffs_rhs | ||
) | [virtual] |
Assigns the model to be used by the integrator.
[in] | _rhs | Name of the function, evaluating the right-hand side. |
[in] | _diffs_rhs | Name of the function, evaluating the derivatives of the right-hand side. |
Reimplemented from IntegratorExport.
Definition at line 590 of file narx_export.cpp.
returnValue NARXExport::setNARXmodel | ( | const uint | _delay, |
const DMatrix & | _parms | ||
) | [virtual] |
Sets a polynomial NARX model to be used by the integrator.
[in] | delay | The delay for the states in the NARX model. |
[in] | parms | The parameters defining the polynomial NARX model. |
Reimplemented from DiscreteTimeExport.
Definition at line 606 of file narx_export.cpp.
returnValue NARXExport::setup | ( | ) | [virtual] |
Initializes export of a tailored integrator.
Reimplemented from DiscreteTimeExport.
Definition at line 68 of file narx_export.cpp.
returnValue NARXExport::updateImplicitSystem | ( | ExportStatementBlock * | block, |
const ExportIndex & | index1, | ||
const ExportIndex & | index2, | ||
const ExportIndex & | tmp_index | ||
) | [virtual] |
Exports the code needed to update the sensitivities of the states defined by the nonlinear part.
[in] | block | The block to which the code will be exported. |
Reimplemented from IntegratorExport.
Definition at line 385 of file narx_export.cpp.
returnValue NARXExport::updateInputSystem | ( | ExportStatementBlock * | block, |
const ExportIndex & | index1, | ||
const ExportIndex & | index2, | ||
const ExportIndex & | tmp_index | ||
) | [virtual] |
Exports the code needed to update the sensitivities of the states, defined by the linear input system.
[in] | block | The block to which the code will be exported. |
Reimplemented from IntegratorExport.
Definition at line 363 of file narx_export.cpp.
returnValue NARXExport::updateOutputSystem | ( | ExportStatementBlock * | block, |
const ExportIndex & | index1, | ||
const ExportIndex & | index2, | ||
const ExportIndex & | tmp_index | ||
) | [virtual] |
Exports the code needed to update the sensitivities of the states, defined by the linear output system.
[in] | block | The block to which the code will be exported. |
Reimplemented from IntegratorExport.
Definition at line 408 of file narx_export.cpp.
uint NARXExport::delay [protected] |
Definition at line 244 of file narx_export.hpp.
DMatrix NARXExport::parms [protected] |
Definition at line 245 of file narx_export.hpp.