erk_export.hpp
Go to the documentation of this file.
1 /*
2  * This file is part of ACADO Toolkit.
3  *
4  * ACADO Toolkit -- A Toolkit for Automatic Control and Dynamic Optimization.
5  * Copyright (C) 2008-2014 by Boris Houska, Hans Joachim Ferreau,
6  * Milan Vukov, Rien Quirynen, KU Leuven.
7  * Developed within the Optimization in Engineering Center (OPTEC)
8  * under supervision of Moritz Diehl. All rights reserved.
9  *
10  * ACADO Toolkit is free software; you can redistribute it and/or
11  * modify it under the terms of the GNU Lesser General Public
12  * License as published by the Free Software Foundation; either
13  * version 3 of the License, or (at your option) any later version.
14  *
15  * ACADO Toolkit is distributed in the hope that it will be useful,
16  * but WITHOUT ANY WARRANTY; without even the implied warranty of
17  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
18  * Lesser General Public License for more details.
19  *
20  * You should have received a copy of the GNU Lesser General Public
21  * License along with ACADO Toolkit; if not, write to the Free Software
22  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
23  *
24  */
25 
26 
27 
35 #ifndef ACADO_TOOLKIT_ERK_EXPORT_HPP
36 #define ACADO_TOOLKIT_ERK_EXPORT_HPP
37 
39 
40 
42 
43 
55 {
56  //
57  // PUBLIC MEMBER FUNCTIONS:
58  //
59 
60  public:
61 
67  ExplicitRungeKuttaExport( UserInteraction* _userInteraction = 0,
68  const std::string& _commonHeaderName = ""
69  );
70 
76  );
77 
80  virtual ~ExplicitRungeKuttaExport( );
81 
82 
87  virtual returnValue setup( );
88 
89 
98 
99 
106  virtual returnValue setLinearInput( const DMatrix& M1, const DMatrix& A1, const DMatrix& B1 );
107 
108 
115  virtual returnValue setLinearOutput( const DMatrix& M3, const DMatrix& A3, const Expression& rhs );
116 
117 
124  virtual returnValue setLinearOutput( const DMatrix& M3, const DMatrix& A3, const std::string& _rhs3, const std::string& _diffs_rhs3 );
125 
126 
134  ExportStruct dataStruct = ACADO_ANY
135  ) const;
136 
137 
145  ) const;
146 
147 
148 
156  );
157 
158 
166  virtual returnValue setupOutput( const std::vector<Grid> outputGrids_,
167  const std::vector<Expression> rhs );
168 
169 
179  virtual returnValue setupOutput( const std::vector<Grid> outputGrids_,
180  const std::vector<std::string> _outputNames,
181  const std::vector<std::string> _diffs_outputNames,
182  const std::vector<uint> _dims_output );
183 
184 
195  virtual returnValue setupOutput( const std::vector<Grid> outputGrids_,
196  const std::vector<std::string> _outputNames,
197  const std::vector<std::string> _diffs_outputNames,
198  const std::vector<uint> _dims_output,
199  const std::vector<DMatrix> _outputDependencies );
200 
201 
202  protected:
203 
204 
209  virtual ExportVariable getAuxVariable() const;
210 
211 
212  protected:
213 
214 
215 };
216 
218 
219 
224 #include <acado/code_generation/integrators/erk_export.ipp>
225 
226 
227 #endif // ACADO_TOOLKIT_ERK_EXPORT_HPP
228 
229 // end of file.
virtual returnValue setup()
Definition: erk_export.cpp:65
#define B1
Allows to export a tailored explicit Runge-Kutta integrator for fast model predictive control...
Definition: erk_export.hpp:54
Allows to export a tailored Runge-Kutta integrator for fast model predictive control.
Definition: rk_export.hpp:54
virtual ExportVariable getAuxVariable() const
Definition: erk_export.cpp:386
Allows to pass back messages to the calling function.
virtual returnValue setLinearOutput(const DMatrix &M3, const DMatrix &A3, const Expression &rhs)
Definition: erk_export.cpp:278
#define A1
#define CLOSE_NAMESPACE_ACADO
virtual ~ExplicitRungeKuttaExport()
Definition: erk_export.cpp:59
Base class for all variables within the symbolic expressions family.
Definition: expression.hpp:56
ExportStruct
virtual returnValue getFunctionDeclarations(ExportStatementBlock &declarations) const
Definition: erk_export.cpp:307
Encapsulates all user interaction for setting options, logging data and plotting results.
virtual returnValue getDataDeclarations(ExportStatementBlock &declarations, ExportStruct dataStruct=ACADO_ANY) const
Definition: erk_export.cpp:290
#define BEGIN_NAMESPACE_ACADO
ExplicitRungeKuttaExport(UserInteraction *_userInteraction=0, const std::string &_commonHeaderName="")
Definition: erk_export.cpp:44
virtual returnValue setDifferentialEquation(const Expression &rhs)
Definition: erk_export.cpp:190
virtual returnValue setLinearInput(const DMatrix &M1, const DMatrix &A1, const DMatrix &B1)
Definition: erk_export.cpp:272
Allows to export code for a block of statements.
virtual returnValue setupOutput(const std::vector< Grid > outputGrids_, const std::vector< Expression > rhs)
Definition: erk_export.cpp:361
virtual returnValue getCode(ExportStatementBlock &code)
Definition: erk_export.cpp:319
Defines a matrix-valued variable to be used for exporting code.
ExportAcadoFunction rhs


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