lagrange_term.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_LAGRANGE_TERM_HPP
36 #define ACADO_TOOLKIT_LAGRANGE_TERM_HPP
37 
38 
41 
42 
44 
45 
62 
63 
64  //
65  // PUBLIC MEMBER FUNCTIONS:
66  //
67  public:
68 
70  LagrangeTerm();
71 
73  LagrangeTerm( const LagrangeTerm& rhs );
74 
76  virtual ~LagrangeTerm( );
77 
79  LagrangeTerm& operator=( const LagrangeTerm& rhs );
80 
81 
86  returnValue init( const Grid &grid_ );
87 
88 
92  inline returnValue addLagrangeTerm( const Expression& arg );
93 
94 
98  inline returnValue addLagrangeTerm( const Expression& arg,
99  const int& stageNumber );
100 
101 
102 
104  inline const Grid& getGrid() const;
105 
106 
107  //
108  // DATA MEMBERS:
109  //
110  protected:
111 
115 };
116 
117 
119 
120 
121 
122 #include <acado/objective/lagrange_term.ipp>
123 
124 
125 #endif // ACADO_TOOLKIT_LAGRANGE_TERM_HPP
126 
127 /*
128  * end of file
129  */
returnValue addLagrangeTerm(const Expression &arg)
Allows to pass back messages to the calling function.
Allows to conveniently handle (one-dimensional) grids consisting of time points.
Definition: grid.hpp:58
#define CLOSE_NAMESPACE_ACADO
const Grid & getGrid() const
Base class for all variables within the symbolic expressions family.
Definition: expression.hpp:56
Expression ** lagrangeFcn
void rhs(const real_t *x, real_t *f)
virtual ~LagrangeTerm()
Stores and evaluates Lagrange terms within optimal control problems.
#define BEGIN_NAMESPACE_ACADO
returnValue init(const Grid &grid_)
LagrangeTerm & operator=(const LagrangeTerm &rhs)


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