solver-qpData.hpp
Go to the documentation of this file.
1 //
2 // Copyright (c) 2022 INRIA
3 //
4 // This file is part of tsid
5 // tsid is free software: you can redistribute it
6 // and/or modify it under the terms of the GNU Lesser General Public
7 // License as published by the Free Software Foundation, either version
8 // 3 of the License, or (at your option) any later version.
9 // tsid is distributed in the hope that it will be
10 // useful, but WITHOUT ANY WARRANTY; without even the implied warranty
11 // of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 // General Lesser Public License for more details. You should have
13 // received a copy of the GNU Lesser General Public License along with
14 // tsid If not, see
15 // <http://www.gnu.org/licenses/>.
16 //
17 
18 #ifndef __solvers_qpdata_hpp__
19 #define __solvers_qpdata_hpp__
20 
21 namespace tsid {
22 namespace solvers {
23 
24 template <typename scalar_>
25 struct QPDataBaseTpl {
26  typedef Eigen::Matrix<scalar_, Eigen::Dynamic, 1> Vector;
27  typedef Eigen::Matrix<scalar_, Eigen::Dynamic, Eigen::Dynamic> Matrix;
28 
29  Matrix H; // cost to minimize
30  Vector g;
31  Matrix CE; // equality constraints
32  Vector ce0;
33 };
34 
35 template <typename scalar_>
36 struct QPDataTpl : QPDataBaseTpl<scalar_> {
37  typedef Eigen::Matrix<scalar_, Eigen::Dynamic, 1> Vector;
38  typedef Eigen::Matrix<scalar_, Eigen::Dynamic, Eigen::Dynamic> Matrix;
39 
40  Matrix CI; // inequality constraints
41  Vector ci_lb; // lower bound
42  Vector ci_ub; // upper bound
43 };
44 
45 template <typename scalar_>
46 struct QPDataQuadProgTpl : QPDataBaseTpl<scalar_> {
47  typedef Eigen::Matrix<scalar_, Eigen::Dynamic, 1> Vector;
48  typedef Eigen::Matrix<scalar_, Eigen::Dynamic, Eigen::Dynamic> Matrix;
49 
50  Matrix CI; // inequality constraints, one-sided
51  Vector ci0; // stack of lower and upper bounds
52 };
53 } // namespace solvers
54 } // namespace tsid
55 
56 #endif // ifndef __solvers_qpdata_hpp__
Eigen::Matrix< scalar_, Eigen::Dynamic, Eigen::Dynamic > Matrix
Eigen::Matrix< scalar_, Eigen::Dynamic, Eigen::Dynamic > Matrix
Eigen::Matrix< scalar_, Eigen::Dynamic, 1 > Vector
Eigen::Matrix< scalar_, Eigen::Dynamic, Eigen::Dynamic > Matrix
Eigen::Matrix< scalar_, Eigen::Dynamic, 1 > Vector
Eigen::Matrix< scalar_, Eigen::Dynamic, 1 > Vector


tsid
Author(s): Andrea Del Prete, Justin Carpentier
autogenerated on Sun Jul 2 2023 02:21:51