export_gauss_newton_cn2_factorization.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 
32 #ifndef ACADO_TOOLKIT_EXPORT_GAUSS_NEWTON_CN2_FACTORIZATION_HPP
33 #define ACADO_TOOLKIT_EXPORT_GAUSS_NEWTON_CN2_FACTORIZATION_HPP
34 
37 
39 
50 {
51 public:
52 
59  const std::string& _commonHeaderName = ""
60  );
61 
64  {}
65 
70  virtual returnValue setup( );
71 
80  ExportStruct dataStruct = ACADO_ANY
81  ) const;
82 
91  ) const;
92 
93 
102  );
103 
104 
109  unsigned getNumQPvars( ) const;
110 
115  virtual unsigned getNumStateBounds( ) const;
116 
117 protected:
118 
125  virtual returnValue setupObjectiveEvaluation( void );
126 
132  virtual returnValue setupConstraintsEvaluation( void );
133 
138  virtual returnValue setupVariables( );
139 
145 
150  virtual returnValue setupEvaluation( );
151 
152  virtual returnValue setupQPInterface( );
153 
154  virtual returnValue setupCondensing( );
155 
156  bool performFullCondensing( ) const;
157 
158 protected:
159 
161 
163 
167 
174 
177 
180 
183 
186 
189 
192 
195 
196  std::vector< unsigned > xBoundsIdxRev, xBoundsIdx;
199 
201 
205 
207 
230 
238 
241 
244 
246 
247  // N2 condensing related
250 
252 
256 
258 
265 
267 
269 
274 };
275 
277 
278 #endif // ACADO_TOOLKIT_EXPORT_GAUSS_NEWTON_CN2_FACTORIZATION_HPP
virtual returnValue getDataDeclarations(ExportStatementBlock &declarations, ExportStruct dataStruct=ACADO_ANY) const
Allows to pass back messages to the calling function.
#define CLOSE_NAMESPACE_ACADO
Base class for export of NLP/OCP solvers.
ExportStruct
Encapsulates all user interaction for setting options, logging data and plotting results.
Allows to export code of an arbitrary function.
Allows to export linear solver based on Cholesky factorization.
#define BEGIN_NAMESPACE_ACADO
virtual returnValue getCode(ExportStatementBlock &code)
virtual returnValue getFunctionDeclarations(ExportStatementBlock &declarations) const
Allows to export code for a block of statements.
ExportGaussNewtonCn2Factorization(UserInteraction *_userInteraction=0, const std::string &_commonHeaderName="")
Defines a matrix-valued variable to be used for exporting code.


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