hpmpc_interface_meta.cpp
1 /*
2  * This file is part of CasADi.
3  *
4  * CasADi -- A symbolic framework for dynamic optimization.
5  * Copyright (C) 2010-2023 Joel Andersson, Joris Gillis, Moritz Diehl,
6  * KU Leuven. All rights reserved.
7  * Copyright (C) 2011-2014 Greg Horn
8  *
9  * CasADi is free software; you can redistribute it and/or
10  * modify it under the terms of the GNU Lesser General Public
11  * License as published by the Free Software Foundation; either
12  * version 3 of the License, or (at your option) any later version.
13  *
14  * CasADi is distributed in the hope that it will be useful,
15  * but WITHOUT ANY WARRANTY; without even the implied warranty of
16  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
17  * Lesser General Public License for more details.
18  *
19  * You should have received a copy of the GNU Lesser General Public
20  * License along with CasADi; if not, write to the Free Software
21  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
22  *
23  */
24 
25 
26  #include "hpmpc_interface.hpp"
27  #include <string>
28 
29  const std::string casadi::HpmpcInterface::meta_doc=
30  "\n"
31 "\n"
32 "\n"
33 "Interface to HMPC Solver\n"
34 "\n"
35 "In order to use this interface, you must:\n"
36 "\n"
37 "\n"
38 "Decision variables must only by state and control, and the variable \n"
39 "ordering must be [x0 u0 x1 u1 ...]\n"
40 "\n"
41 "The constraints must be in order: [ gap0 lincon0 gap1 lincon1 ]\n"
42 "\n"
43 "gap: Ak+1 = Ak xk + Bk uk lincon: yk= Ck xk + Dk uk\n"
44 "\n"
45 "\n"
46 "\n"
47 "\n"
48 "::\n"
49 "\n"
50 " A0 B0 -I\n"
51 " C0 D0\n"
52 " A1 B1 -I\n"
53 " C1 D1\n"
54 "\n"
55 "\n"
56 "\n"
57 "where I must be a diagonal sparse matrix\n"
58 "Either supply all of N, nx, ng, nu options or rely on automatic \n"
59 "detection\n"
60 "\n"
61 "Extra doc: https://github.com/casadi/casadi/wiki/L_22p \n"
62 "\n"
63 "\n"
64 "\n"
65 ">List of available options\n"
66 "\n"
67 "+----------------+--------------+------------------------------------------+\n"
68 "| Id | Type | Description |\n"
69 "+================+==============+==========================================+\n"
70 "| N | OT_INT | OCP horizon |\n"
71 "+----------------+--------------+------------------------------------------+\n"
72 "| blasfeo_target | OT_STRING | hpmpc target |\n"
73 "+----------------+--------------+------------------------------------------+\n"
74 "| inf | OT_DOUBLE | HPMPC cannot handle infinities. |\n"
75 "| | | Infinities will be replaced by this |\n"
76 "| | | option's value. |\n"
77 "+----------------+--------------+------------------------------------------+\n"
78 "| max_iter | OT_INT | Max number of iterations |\n"
79 "+----------------+--------------+------------------------------------------+\n"
80 "| mu0 | OT_DOUBLE | Max element in cost function as estimate |\n"
81 "| | | of max multiplier |\n"
82 "+----------------+--------------+------------------------------------------+\n"
83 "| ng | OT_INTVECTOR | Number of non-dynamic constraints, |\n"
84 "| | | length N+1 |\n"
85 "+----------------+--------------+------------------------------------------+\n"
86 "| nu | OT_INTVECTOR | Number of controls, length N |\n"
87 "+----------------+--------------+------------------------------------------+\n"
88 "| nx | OT_INTVECTOR | Number of states, length N+1 |\n"
89 "+----------------+--------------+------------------------------------------+\n"
90 "| print_level | OT_INT | Amount of diagnostic printing [Default: |\n"
91 "| | | 1]. |\n"
92 "+----------------+--------------+------------------------------------------+\n"
93 "| target | OT_STRING | hpmpc target |\n"
94 "+----------------+--------------+------------------------------------------+\n"
95 "| tol | OT_DOUBLE | Tolerance in the duality measure |\n"
96 "+----------------+--------------+------------------------------------------+\n"
97 "| warm_start | OT_BOOL | Use warm-starting |\n"
98 "+----------------+--------------+------------------------------------------+\n"
99 "\n"
100 "\n"
101 "\n"
102 "\n"
103 ;
static const std::string meta_doc
A documentation string.