casadi 3.5.6.pre2__cp39-none-win_amd64.whl → 3.6.0__cp39-none-win_amd64.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1589) hide show
  1. casadi/__init__.py +2 -2
  2. casadi/_casadi.pyd +0 -0
  3. casadi/bin/libtinyxml2.dll +0 -0
  4. casadi/blasfeo.lib +0 -0
  5. casadi/casadi-cli.exe +0 -0
  6. casadi/casadi.lib +0 -0
  7. casadi/casadi.py +31192 -10129
  8. casadi/cbc.exe +0 -0
  9. casadi/clp.exe +0 -0
  10. casadi/cmake/casadi-config-version.cmake +1 -1
  11. casadi/cmake/highs/highs-config.cmake +9 -0
  12. casadi/cmake/highs/highs-targets-release.cmake +28 -0
  13. casadi/cmake/highs/highs-targets.cmake +103 -0
  14. casadi/cmake/osqp/osqp-config.cmake +1 -0
  15. casadi/cmake/osqp/osqp-targets-release.cmake +29 -0
  16. casadi/cmake/osqp/osqp-targets.cmake +101 -0
  17. casadi/cmake/proxsuite/find-external/Simde/FindSimde.cmake +39 -0
  18. casadi/cmake/proxsuite/proxsuiteConfig.cmake +177 -0
  19. casadi/cmake/proxsuite/proxsuiteConfigVersion.cmake +67 -0
  20. casadi/cmake/proxsuite/proxsuiteTargets.cmake +107 -0
  21. casadi/cmake/qdldl/qdldl-config.cmake +1 -0
  22. casadi/cmake/qdldl/qdldl-targets-release.cmake +29 -0
  23. casadi/cmake/qdldl/qdldl-targets.cmake +101 -0
  24. casadi/highs.exe +0 -0
  25. casadi/highs.lib +0 -0
  26. casadi/hpipm.lib +0 -0
  27. casadi/include/blasfeo.h +52 -0
  28. casadi/include/blasfeo_block_size.h +447 -0
  29. casadi/include/blasfeo_common.h +274 -0
  30. casadi/include/blasfeo_d_aux.h +255 -0
  31. casadi/include/blasfeo_d_aux_ext_dep.h +145 -0
  32. casadi/include/blasfeo_d_aux_ext_dep_ref.h +84 -0
  33. casadi/include/blasfeo_d_aux_old.h +75 -0
  34. casadi/include/blasfeo_d_aux_ref.h +208 -0
  35. casadi/include/blasfeo_d_aux_test.h +226 -0
  36. casadi/include/blasfeo_d_blas.h +46 -0
  37. casadi/include/blasfeo_d_blas_api.h +281 -0
  38. casadi/include/blasfeo_d_blasfeo_api.h +364 -0
  39. casadi/include/blasfeo_d_blasfeo_api_ref.h +147 -0
  40. casadi/include/blasfeo_d_blasfeo_hp_api.h +84 -0
  41. casadi/include/blasfeo_d_blasfeo_ref_api.h +283 -0
  42. casadi/include/blasfeo_d_kernel.h +1321 -0
  43. casadi/include/blasfeo_i_aux_ext_dep.h +69 -0
  44. casadi/include/blasfeo_m_aux.h +57 -0
  45. casadi/include/blasfeo_memory.h +62 -0
  46. casadi/include/blasfeo_naming.h +77 -0
  47. casadi/include/blasfeo_processor_features.h +88 -0
  48. casadi/include/blasfeo_s_aux.h +168 -0
  49. casadi/include/blasfeo_s_aux_ext_dep.h +141 -0
  50. casadi/include/blasfeo_s_aux_ext_dep_ref.h +82 -0
  51. casadi/include/blasfeo_s_aux_old.h +64 -0
  52. casadi/include/blasfeo_s_aux_ref.h +147 -0
  53. casadi/include/blasfeo_s_aux_test.h +177 -0
  54. casadi/include/blasfeo_s_blas.h +46 -0
  55. casadi/include/blasfeo_s_blas_api.h +182 -0
  56. casadi/include/blasfeo_s_blasfeo_api.h +284 -0
  57. casadi/include/blasfeo_s_blasfeo_api_ref.h +135 -0
  58. casadi/include/blasfeo_s_blasfeo_ref_api.h +252 -0
  59. casadi/include/blasfeo_s_kernel.h +692 -0
  60. casadi/include/blasfeo_stdlib.h +62 -0
  61. casadi/include/blasfeo_target.h +73 -0
  62. casadi/include/blasfeo_timing.h +114 -0
  63. casadi/include/blasfeo_v_aux_ext_dep.h +83 -0
  64. casadi/include/casadi/casadi.hpp +2 -2
  65. casadi/include/casadi/casadi.i +158 -30
  66. casadi/include/casadi/casadi_c.h +15 -15
  67. casadi/include/casadi/config.h +14 -11
  68. casadi/include/casadi/core/calculus.hpp +211 -91
  69. casadi/include/casadi/core/callback.hpp +78 -30
  70. casadi/include/casadi/core/casadi_common.hpp +16 -13
  71. casadi/include/casadi/core/casadi_enum.hpp +90 -0
  72. casadi/include/casadi/core/casadi_interrupt.hpp +5 -5
  73. casadi/include/casadi/core/casadi_limits.hpp +8 -5
  74. casadi/include/casadi/core/casadi_logger.hpp +6 -5
  75. casadi/include/casadi/core/casadi_meta.hpp +31 -16
  76. casadi/include/casadi/core/casadi_misc.hpp +59 -29
  77. casadi/include/casadi/core/casadi_types.hpp +14 -2
  78. casadi/include/casadi/core/code_generator.hpp +369 -92
  79. casadi/include/casadi/core/conic.hpp +35 -14
  80. casadi/include/casadi/core/core.hpp +2 -3
  81. casadi/include/casadi/core/dae_builder.hpp +598 -393
  82. casadi/include/casadi/core/dm.hpp +10 -2
  83. casadi/include/casadi/core/dm_fwd.hpp +2 -2
  84. casadi/include/casadi/core/dple.hpp +25 -11
  85. casadi/include/casadi/core/exception.hpp +33 -7
  86. casadi/include/casadi/core/expm.hpp +13 -7
  87. casadi/include/casadi/core/external.hpp +33 -28
  88. casadi/include/casadi/core/function.hpp +438 -174
  89. casadi/include/casadi/core/generic_expression.hpp +219 -52
  90. casadi/include/casadi/core/generic_matrix.hpp +386 -123
  91. casadi/include/casadi/core/generic_type.hpp +31 -14
  92. casadi/include/casadi/core/global_options.hpp +8 -6
  93. casadi/include/casadi/core/im.hpp +2 -2
  94. casadi/include/casadi/core/im_fwd.hpp +2 -2
  95. casadi/include/casadi/core/importer.hpp +49 -18
  96. casadi/include/casadi/core/integration_tools.hpp +37 -34
  97. casadi/include/casadi/core/integrator.hpp +126 -115
  98. casadi/include/casadi/core/interpolant.hpp +14 -11
  99. casadi/include/casadi/core/linsol.hpp +22 -8
  100. casadi/include/casadi/core/matrix_decl.hpp +280 -128
  101. casadi/include/casadi/core/matrix_fwd.hpp +2 -2
  102. casadi/include/casadi/core/mx.hpp +235 -75
  103. casadi/include/casadi/core/nlp_builder.hpp +5 -3
  104. casadi/include/casadi/core/nlp_tools.hpp +6 -4
  105. casadi/include/casadi/core/nlpsol.hpp +38 -15
  106. casadi/include/casadi/core/nonzeros.hpp +5 -2
  107. casadi/include/casadi/core/options.hpp +20 -8
  108. casadi/include/casadi/core/optistack.hpp +99 -39
  109. casadi/include/casadi/core/polynomial.hpp +5 -3
  110. casadi/include/casadi/core/printable.hpp +8 -4
  111. casadi/include/casadi/core/rootfinder.hpp +35 -14
  112. casadi/include/casadi/core/runtime/casadi_bilin.hpp +19 -1
  113. casadi/include/casadi/core/runtime/casadi_bound_consistency.hpp +19 -1
  114. casadi/include/casadi/core/runtime/casadi_cache.hpp +19 -1
  115. casadi/include/casadi/core/runtime/casadi_clear.hpp +19 -1
  116. casadi/include/casadi/core/runtime/casadi_clip_max.hpp +33 -0
  117. casadi/include/casadi/core/runtime/casadi_clip_min.hpp +33 -0
  118. casadi/include/casadi/core/runtime/casadi_convexify.hpp +20 -2
  119. casadi/include/casadi/core/runtime/casadi_copy.hpp +19 -1
  120. casadi/include/casadi/core/runtime/casadi_cvx.hpp +41 -24
  121. casadi/include/casadi/core/runtime/casadi_de_boor.hpp +19 -1
  122. casadi/include/casadi/core/runtime/casadi_dense_lsqr.hpp +247 -0
  123. casadi/include/casadi/core/runtime/casadi_densify.hpp +19 -1
  124. casadi/include/casadi/core/runtime/casadi_dot.hpp +19 -1
  125. casadi/include/casadi/core/runtime/casadi_feasiblesqpmethod.hpp +208 -0
  126. casadi/include/casadi/core/runtime/casadi_file_slurp.hpp +19 -1
  127. casadi/include/casadi/core/runtime/casadi_fill.hpp +19 -1
  128. casadi/include/casadi/core/runtime/casadi_finite_diff.hpp +19 -1
  129. casadi/include/casadi/core/runtime/casadi_flip.hpp +19 -1
  130. casadi/include/casadi/core/runtime/casadi_getu.hpp +19 -1
  131. casadi/include/casadi/core/runtime/casadi_iamax.hpp +19 -1
  132. casadi/include/casadi/core/runtime/casadi_interpn.hpp +19 -1
  133. casadi/include/casadi/core/runtime/casadi_interpn_grad.hpp +19 -1
  134. casadi/include/casadi/core/runtime/casadi_interpn_interpolate.hpp +19 -1
  135. casadi/include/casadi/core/runtime/casadi_interpn_weights.hpp +19 -1
  136. casadi/include/casadi/core/runtime/casadi_ipqp.hpp +865 -0
  137. casadi/include/casadi/core/runtime/casadi_jac.hpp +186 -0
  138. casadi/include/casadi/core/runtime/casadi_kkt.hpp +67 -0
  139. casadi/include/casadi/core/runtime/casadi_kron.hpp +19 -1
  140. casadi/include/casadi/core/runtime/casadi_ldl.hpp +19 -1
  141. casadi/include/casadi/core/runtime/casadi_logsumexp.hpp +41 -0
  142. casadi/include/casadi/core/runtime/casadi_low.hpp +19 -1
  143. casadi/include/casadi/core/runtime/casadi_lsqr.hpp +62 -3
  144. casadi/include/casadi/core/runtime/casadi_masked_norm_inf.hpp +33 -0
  145. casadi/include/casadi/core/runtime/casadi_max_viol.hpp +20 -1
  146. casadi/include/casadi/core/runtime/casadi_mmax.hpp +28 -0
  147. casadi/include/casadi/core/runtime/casadi_mmin.hpp +29 -0
  148. casadi/include/casadi/core/runtime/casadi_mtimes.hpp +19 -1
  149. casadi/include/casadi/core/runtime/casadi_mv.hpp +19 -1
  150. casadi/include/casadi/core/runtime/casadi_mv_dense.hpp +19 -1
  151. casadi/include/casadi/core/runtime/casadi_nd_boor_dual_eval.hpp +19 -1
  152. casadi/include/casadi/core/runtime/casadi_nd_boor_eval.hpp +19 -1
  153. casadi/include/casadi/core/runtime/casadi_newton.hpp +19 -1
  154. casadi/include/casadi/core/runtime/casadi_nlp.hpp +105 -12
  155. casadi/include/casadi/core/runtime/casadi_norm_1.hpp +19 -1
  156. casadi/include/casadi/core/runtime/casadi_norm_2.hpp +19 -1
  157. casadi/include/casadi/core/runtime/casadi_norm_inf.hpp +19 -1
  158. casadi/include/casadi/core/runtime/casadi_norm_inf_mul.hpp +19 -1
  159. casadi/include/casadi/core/runtime/casadi_polyval.hpp +19 -1
  160. casadi/include/casadi/core/runtime/casadi_project.hpp +19 -1
  161. casadi/include/casadi/core/runtime/casadi_qp.hpp +47 -1174
  162. casadi/include/casadi/core/runtime/casadi_qr.hpp +19 -1
  163. casadi/include/casadi/core/runtime/casadi_qrqp.hpp +1233 -0
  164. casadi/include/casadi/core/runtime/casadi_rank1.hpp +19 -1
  165. casadi/include/casadi/core/runtime/casadi_regularize.hpp +19 -1
  166. casadi/include/casadi/core/runtime/casadi_runtime.hpp +34 -3
  167. casadi/include/casadi/core/runtime/casadi_scal.hpp +19 -1
  168. casadi/include/casadi/core/runtime/casadi_sparsify.hpp +19 -1
  169. casadi/include/casadi/core/runtime/casadi_sparsity.hpp +24 -0
  170. casadi/include/casadi/core/runtime/casadi_sqpmethod.hpp +79 -21
  171. casadi/include/casadi/core/runtime/casadi_sum.hpp +31 -0
  172. casadi/include/casadi/core/runtime/casadi_sum_viol.hpp +20 -1
  173. casadi/include/casadi/core/runtime/casadi_swap.hpp +19 -1
  174. casadi/include/casadi/core/runtime/casadi_trans.hpp +19 -1
  175. casadi/include/casadi/core/runtime/casadi_tri_project.hpp +19 -1
  176. casadi/include/casadi/core/runtime/casadi_trilsolve.hpp +81 -0
  177. casadi/include/casadi/core/runtime/casadi_triusolve.hpp +81 -0
  178. casadi/include/casadi/core/runtime/casadi_vector_fmax.hpp +28 -0
  179. casadi/include/casadi/core/runtime/casadi_vector_fmin.hpp +28 -0
  180. casadi/include/casadi/core/runtime/casadi_vfmax.hpp +19 -1
  181. casadi/include/casadi/core/runtime/casadi_vfmin.hpp +19 -1
  182. casadi/include/casadi/core/runtime/shared.hpp +2 -2
  183. casadi/include/casadi/core/serializer.hpp +30 -25
  184. casadi/include/casadi/core/serializing_stream.hpp +25 -15
  185. casadi/include/casadi/core/shared_object.hpp +49 -18
  186. casadi/include/casadi/core/slice.hpp +10 -5
  187. casadi/include/casadi/core/sparsity.hpp +390 -119
  188. casadi/include/casadi/core/sparsity_interface.hpp +174 -49
  189. casadi/include/casadi/core/submatrix.hpp +8 -2
  190. casadi/include/casadi/core/sx.hpp +12 -2
  191. casadi/include/casadi/core/sx_elem.hpp +78 -27
  192. casadi/include/casadi/core/sx_fwd.hpp +3 -3
  193. casadi/include/casadi/core/timing.hpp +4 -2
  194. casadi/include/casadi/core/xml_file.hpp +18 -6
  195. casadi/include/casadi/core/xml_node.hpp +141 -71
  196. casadi/include/casadi/doc.i +35344 -71599
  197. casadi/include/casadi/doc_merged.i +20954 -58522
  198. casadi/include/casadi/mem.h +3 -2
  199. casadi/include/casadi/valgrind-python.supp +45 -0
  200. casadi/include/eigen3/Eigen/Cholesky +45 -0
  201. casadi/include/eigen3/Eigen/CholmodSupport +48 -0
  202. casadi/include/eigen3/Eigen/Core +384 -0
  203. casadi/include/eigen3/Eigen/Dense +7 -0
  204. casadi/include/eigen3/Eigen/Eigen +2 -0
  205. casadi/include/eigen3/Eigen/Eigenvalues +60 -0
  206. casadi/include/eigen3/Eigen/Geometry +59 -0
  207. casadi/include/eigen3/Eigen/Householder +29 -0
  208. casadi/include/eigen3/Eigen/IterativeLinearSolvers +48 -0
  209. casadi/include/eigen3/Eigen/Jacobi +32 -0
  210. casadi/include/eigen3/Eigen/KLUSupport +41 -0
  211. casadi/include/eigen3/Eigen/LU +47 -0
  212. casadi/include/eigen3/Eigen/MetisSupport +35 -0
  213. casadi/include/eigen3/Eigen/OrderingMethods +70 -0
  214. casadi/include/eigen3/Eigen/PaStiXSupport +49 -0
  215. casadi/include/eigen3/Eigen/PardisoSupport +35 -0
  216. casadi/include/eigen3/Eigen/QR +50 -0
  217. casadi/include/eigen3/Eigen/QtAlignedMalloc +39 -0
  218. casadi/include/eigen3/Eigen/SPQRSupport +34 -0
  219. casadi/include/eigen3/Eigen/SVD +50 -0
  220. casadi/include/eigen3/Eigen/Sparse +34 -0
  221. casadi/include/eigen3/Eigen/SparseCholesky +37 -0
  222. casadi/include/eigen3/Eigen/SparseCore +69 -0
  223. casadi/include/eigen3/Eigen/SparseLU +50 -0
  224. casadi/include/eigen3/Eigen/SparseQR +36 -0
  225. casadi/include/eigen3/Eigen/StdDeque +27 -0
  226. casadi/include/eigen3/Eigen/StdList +26 -0
  227. casadi/include/eigen3/Eigen/StdVector +27 -0
  228. casadi/include/eigen3/Eigen/SuperLUSupport +64 -0
  229. casadi/include/eigen3/Eigen/UmfPackSupport +40 -0
  230. casadi/include/eigen3/Eigen/src/Cholesky/LDLT.h +688 -0
  231. casadi/include/eigen3/Eigen/src/Cholesky/LLT.h +558 -0
  232. casadi/include/eigen3/Eigen/src/Cholesky/LLT_LAPACKE.h +99 -0
  233. casadi/include/eigen3/Eigen/src/CholmodSupport/CholmodSupport.h +682 -0
  234. casadi/include/eigen3/Eigen/src/Core/ArithmeticSequence.h +413 -0
  235. casadi/include/eigen3/Eigen/src/Core/Array.h +417 -0
  236. casadi/include/eigen3/Eigen/src/Core/ArrayBase.h +226 -0
  237. casadi/include/eigen3/Eigen/src/Core/ArrayWrapper.h +209 -0
  238. casadi/include/eigen3/Eigen/src/Core/Assign.h +90 -0
  239. casadi/include/eigen3/Eigen/src/Core/AssignEvaluator.h +1010 -0
  240. casadi/include/eigen3/Eigen/src/Core/Assign_MKL.h +178 -0
  241. casadi/include/eigen3/Eigen/src/Core/BandMatrix.h +353 -0
  242. casadi/include/eigen3/Eigen/src/Core/Block.h +448 -0
  243. casadi/include/eigen3/Eigen/src/Core/BooleanRedux.h +162 -0
  244. casadi/include/eigen3/Eigen/src/Core/CommaInitializer.h +164 -0
  245. casadi/include/eigen3/Eigen/src/Core/ConditionEstimator.h +175 -0
  246. casadi/include/eigen3/Eigen/src/Core/CoreEvaluators.h +1741 -0
  247. casadi/include/eigen3/Eigen/src/Core/CoreIterators.h +132 -0
  248. casadi/include/eigen3/Eigen/src/Core/CwiseBinaryOp.h +183 -0
  249. casadi/include/eigen3/Eigen/src/Core/CwiseNullaryOp.h +1001 -0
  250. casadi/include/eigen3/Eigen/src/Core/CwiseTernaryOp.h +197 -0
  251. casadi/include/eigen3/Eigen/src/Core/CwiseUnaryOp.h +103 -0
  252. casadi/include/eigen3/Eigen/src/Core/CwiseUnaryView.h +132 -0
  253. casadi/include/eigen3/Eigen/src/Core/DenseBase.h +701 -0
  254. casadi/include/eigen3/Eigen/src/Core/DenseCoeffsBase.h +685 -0
  255. casadi/include/eigen3/Eigen/src/Core/DenseStorage.h +652 -0
  256. casadi/include/eigen3/Eigen/src/Core/Diagonal.h +258 -0
  257. casadi/include/eigen3/Eigen/src/Core/DiagonalMatrix.h +391 -0
  258. casadi/include/eigen3/Eigen/src/Core/DiagonalProduct.h +28 -0
  259. casadi/include/eigen3/Eigen/src/Core/Dot.h +318 -0
  260. casadi/include/eigen3/Eigen/src/Core/EigenBase.h +160 -0
  261. casadi/include/eigen3/Eigen/src/Core/ForceAlignedAccess.h +150 -0
  262. casadi/include/eigen3/Eigen/src/Core/Fuzzy.h +155 -0
  263. casadi/include/eigen3/Eigen/src/Core/GeneralProduct.h +465 -0
  264. casadi/include/eigen3/Eigen/src/Core/GenericPacketMath.h +1040 -0
  265. casadi/include/eigen3/Eigen/src/Core/GlobalFunctions.h +194 -0
  266. casadi/include/eigen3/Eigen/src/Core/IO.h +258 -0
  267. casadi/include/eigen3/Eigen/src/Core/IndexedView.h +237 -0
  268. casadi/include/eigen3/Eigen/src/Core/Inverse.h +117 -0
  269. casadi/include/eigen3/Eigen/src/Core/Map.h +171 -0
  270. casadi/include/eigen3/Eigen/src/Core/MapBase.h +310 -0
  271. casadi/include/eigen3/Eigen/src/Core/MathFunctions.h +2057 -0
  272. casadi/include/eigen3/Eigen/src/Core/MathFunctionsImpl.h +200 -0
  273. casadi/include/eigen3/Eigen/src/Core/Matrix.h +565 -0
  274. casadi/include/eigen3/Eigen/src/Core/MatrixBase.h +547 -0
  275. casadi/include/eigen3/Eigen/src/Core/NestByValue.h +85 -0
  276. casadi/include/eigen3/Eigen/src/Core/NoAlias.h +109 -0
  277. casadi/include/eigen3/Eigen/src/Core/NumTraits.h +335 -0
  278. casadi/include/eigen3/Eigen/src/Core/PartialReduxEvaluator.h +232 -0
  279. casadi/include/eigen3/Eigen/src/Core/PermutationMatrix.h +605 -0
  280. casadi/include/eigen3/Eigen/src/Core/PlainObjectBase.h +1128 -0
  281. casadi/include/eigen3/Eigen/src/Core/Product.h +191 -0
  282. casadi/include/eigen3/Eigen/src/Core/ProductEvaluators.h +1179 -0
  283. casadi/include/eigen3/Eigen/src/Core/Random.h +218 -0
  284. casadi/include/eigen3/Eigen/src/Core/Redux.h +515 -0
  285. casadi/include/eigen3/Eigen/src/Core/Ref.h +381 -0
  286. casadi/include/eigen3/Eigen/src/Core/Replicate.h +142 -0
  287. casadi/include/eigen3/Eigen/src/Core/Reshaped.h +454 -0
  288. casadi/include/eigen3/Eigen/src/Core/ReturnByValue.h +119 -0
  289. casadi/include/eigen3/Eigen/src/Core/Reverse.h +217 -0
  290. casadi/include/eigen3/Eigen/src/Core/Select.h +164 -0
  291. casadi/include/eigen3/Eigen/src/Core/SelfAdjointView.h +365 -0
  292. casadi/include/eigen3/Eigen/src/Core/SelfCwiseBinaryOp.h +47 -0
  293. casadi/include/eigen3/Eigen/src/Core/Solve.h +188 -0
  294. casadi/include/eigen3/Eigen/src/Core/SolveTriangular.h +235 -0
  295. casadi/include/eigen3/Eigen/src/Core/SolverBase.h +168 -0
  296. casadi/include/eigen3/Eigen/src/Core/StableNorm.h +251 -0
  297. casadi/include/eigen3/Eigen/src/Core/StlIterators.h +463 -0
  298. casadi/include/eigen3/Eigen/src/Core/Stride.h +116 -0
  299. casadi/include/eigen3/Eigen/src/Core/Swap.h +68 -0
  300. casadi/include/eigen3/Eigen/src/Core/Transpose.h +464 -0
  301. casadi/include/eigen3/Eigen/src/Core/Transpositions.h +386 -0
  302. casadi/include/eigen3/Eigen/src/Core/TriangularMatrix.h +1001 -0
  303. casadi/include/eigen3/Eigen/src/Core/VectorBlock.h +96 -0
  304. casadi/include/eigen3/Eigen/src/Core/VectorwiseOp.h +784 -0
  305. casadi/include/eigen3/Eigen/src/Core/Visitor.h +381 -0
  306. casadi/include/eigen3/Eigen/src/Core/arch/AVX/Complex.h +372 -0
  307. casadi/include/eigen3/Eigen/src/Core/arch/AVX/MathFunctions.h +228 -0
  308. casadi/include/eigen3/Eigen/src/Core/arch/AVX/PacketMath.h +1574 -0
  309. casadi/include/eigen3/Eigen/src/Core/arch/AVX/TypeCasting.h +115 -0
  310. casadi/include/eigen3/Eigen/src/Core/arch/AVX512/Complex.h +422 -0
  311. casadi/include/eigen3/Eigen/src/Core/arch/AVX512/MathFunctions.h +362 -0
  312. casadi/include/eigen3/Eigen/src/Core/arch/AVX512/PacketMath.h +2303 -0
  313. casadi/include/eigen3/Eigen/src/Core/arch/AVX512/TypeCasting.h +89 -0
  314. casadi/include/eigen3/Eigen/src/Core/arch/AltiVec/Complex.h +417 -0
  315. casadi/include/eigen3/Eigen/src/Core/arch/AltiVec/MathFunctions.h +90 -0
  316. casadi/include/eigen3/Eigen/src/Core/arch/AltiVec/MatrixProduct.h +2937 -0
  317. casadi/include/eigen3/Eigen/src/Core/arch/AltiVec/MatrixProductCommon.h +221 -0
  318. casadi/include/eigen3/Eigen/src/Core/arch/AltiVec/MatrixProductMMA.h +629 -0
  319. casadi/include/eigen3/Eigen/src/Core/arch/AltiVec/PacketMath.h +2711 -0
  320. casadi/include/eigen3/Eigen/src/Core/arch/CUDA/Complex.h +258 -0
  321. casadi/include/eigen3/Eigen/src/Core/arch/Default/BFloat16.h +700 -0
  322. casadi/include/eigen3/Eigen/src/Core/arch/Default/ConjHelper.h +117 -0
  323. casadi/include/eigen3/Eigen/src/Core/arch/Default/GenericPacketMathFunctions.h +1649 -0
  324. casadi/include/eigen3/Eigen/src/Core/arch/Default/GenericPacketMathFunctionsFwd.h +110 -0
  325. casadi/include/eigen3/Eigen/src/Core/arch/Default/Half.h +942 -0
  326. casadi/include/eigen3/Eigen/src/Core/arch/Default/Settings.h +49 -0
  327. casadi/include/eigen3/Eigen/src/Core/arch/Default/TypeCasting.h +120 -0
  328. casadi/include/eigen3/Eigen/src/Core/arch/GPU/MathFunctions.h +103 -0
  329. casadi/include/eigen3/Eigen/src/Core/arch/GPU/PacketMath.h +1685 -0
  330. casadi/include/eigen3/Eigen/src/Core/arch/GPU/TypeCasting.h +80 -0
  331. casadi/include/eigen3/Eigen/src/Core/arch/HIP/hcc/math_constants.h +23 -0
  332. casadi/include/eigen3/Eigen/src/Core/arch/MSA/Complex.h +648 -0
  333. casadi/include/eigen3/Eigen/src/Core/arch/MSA/MathFunctions.h +387 -0
  334. casadi/include/eigen3/Eigen/src/Core/arch/MSA/PacketMath.h +1233 -0
  335. casadi/include/eigen3/Eigen/src/Core/arch/NEON/Complex.h +584 -0
  336. casadi/include/eigen3/Eigen/src/Core/arch/NEON/GeneralBlockPanelKernel.h +183 -0
  337. casadi/include/eigen3/Eigen/src/Core/arch/NEON/MathFunctions.h +75 -0
  338. casadi/include/eigen3/Eigen/src/Core/arch/NEON/PacketMath.h +4587 -0
  339. casadi/include/eigen3/Eigen/src/Core/arch/NEON/TypeCasting.h +1419 -0
  340. casadi/include/eigen3/Eigen/src/Core/arch/SSE/Complex.h +351 -0
  341. casadi/include/eigen3/Eigen/src/Core/arch/SSE/MathFunctions.h +199 -0
  342. casadi/include/eigen3/Eigen/src/Core/arch/SSE/PacketMath.h +1505 -0
  343. casadi/include/eigen3/Eigen/src/Core/arch/SSE/TypeCasting.h +142 -0
  344. casadi/include/eigen3/Eigen/src/Core/arch/SVE/MathFunctions.h +44 -0
  345. casadi/include/eigen3/Eigen/src/Core/arch/SVE/PacketMath.h +752 -0
  346. casadi/include/eigen3/Eigen/src/Core/arch/SVE/TypeCasting.h +49 -0
  347. casadi/include/eigen3/Eigen/src/Core/arch/SYCL/InteropHeaders.h +232 -0
  348. casadi/include/eigen3/Eigen/src/Core/arch/SYCL/MathFunctions.h +301 -0
  349. casadi/include/eigen3/Eigen/src/Core/arch/SYCL/PacketMath.h +670 -0
  350. casadi/include/eigen3/Eigen/src/Core/arch/SYCL/SyclMemoryModel.h +694 -0
  351. casadi/include/eigen3/Eigen/src/Core/arch/SYCL/TypeCasting.h +85 -0
  352. casadi/include/eigen3/Eigen/src/Core/arch/ZVector/Complex.h +426 -0
  353. casadi/include/eigen3/Eigen/src/Core/arch/ZVector/MathFunctions.h +233 -0
  354. casadi/include/eigen3/Eigen/src/Core/arch/ZVector/PacketMath.h +1060 -0
  355. casadi/include/eigen3/Eigen/src/Core/functors/AssignmentFunctors.h +177 -0
  356. casadi/include/eigen3/Eigen/src/Core/functors/BinaryFunctors.h +541 -0
  357. casadi/include/eigen3/Eigen/src/Core/functors/NullaryFunctors.h +189 -0
  358. casadi/include/eigen3/Eigen/src/Core/functors/StlFunctors.h +166 -0
  359. casadi/include/eigen3/Eigen/src/Core/functors/TernaryFunctors.h +25 -0
  360. casadi/include/eigen3/Eigen/src/Core/functors/UnaryFunctors.h +1131 -0
  361. casadi/include/eigen3/Eigen/src/Core/products/GeneralBlockPanelKernel.h +2645 -0
  362. casadi/include/eigen3/Eigen/src/Core/products/GeneralMatrixMatrix.h +517 -0
  363. casadi/include/eigen3/Eigen/src/Core/products/GeneralMatrixMatrixTriangular.h +317 -0
  364. casadi/include/eigen3/Eigen/src/Core/products/GeneralMatrixMatrixTriangular_BLAS.h +145 -0
  365. casadi/include/eigen3/Eigen/src/Core/products/GeneralMatrixMatrix_BLAS.h +124 -0
  366. casadi/include/eigen3/Eigen/src/Core/products/GeneralMatrixVector.h +518 -0
  367. casadi/include/eigen3/Eigen/src/Core/products/GeneralMatrixVector_BLAS.h +136 -0
  368. casadi/include/eigen3/Eigen/src/Core/products/Parallelizer.h +180 -0
  369. casadi/include/eigen3/Eigen/src/Core/products/SelfadjointMatrixMatrix.h +544 -0
  370. casadi/include/eigen3/Eigen/src/Core/products/SelfadjointMatrixMatrix_BLAS.h +295 -0
  371. casadi/include/eigen3/Eigen/src/Core/products/SelfadjointMatrixVector.h +262 -0
  372. casadi/include/eigen3/Eigen/src/Core/products/SelfadjointMatrixVector_BLAS.h +118 -0
  373. casadi/include/eigen3/Eigen/src/Core/products/SelfadjointProduct.h +133 -0
  374. casadi/include/eigen3/Eigen/src/Core/products/SelfadjointRank2Update.h +94 -0
  375. casadi/include/eigen3/Eigen/src/Core/products/TriangularMatrixMatrix.h +472 -0
  376. casadi/include/eigen3/Eigen/src/Core/products/TriangularMatrixMatrix_BLAS.h +317 -0
  377. casadi/include/eigen3/Eigen/src/Core/products/TriangularMatrixVector.h +350 -0
  378. casadi/include/eigen3/Eigen/src/Core/products/TriangularMatrixVector_BLAS.h +255 -0
  379. casadi/include/eigen3/Eigen/src/Core/products/TriangularSolverMatrix.h +337 -0
  380. casadi/include/eigen3/Eigen/src/Core/products/TriangularSolverMatrix_BLAS.h +167 -0
  381. casadi/include/eigen3/Eigen/src/Core/products/TriangularSolverVector.h +148 -0
  382. casadi/include/eigen3/Eigen/src/Core/util/BlasUtil.h +583 -0
  383. casadi/include/eigen3/Eigen/src/Core/util/ConfigureVectorization.h +512 -0
  384. casadi/include/eigen3/Eigen/src/Core/util/Constants.h +563 -0
  385. casadi/include/eigen3/Eigen/src/Core/util/DisableStupidWarnings.h +106 -0
  386. casadi/include/eigen3/Eigen/src/Core/util/ForwardDeclarations.h +322 -0
  387. casadi/include/eigen3/Eigen/src/Core/util/IndexedViewHelper.h +186 -0
  388. casadi/include/eigen3/Eigen/src/Core/util/IntegralConstant.h +272 -0
  389. casadi/include/eigen3/Eigen/src/Core/util/MKL_support.h +137 -0
  390. casadi/include/eigen3/Eigen/src/Core/util/Macros.h +1464 -0
  391. casadi/include/eigen3/Eigen/src/Core/util/Memory.h +1163 -0
  392. casadi/include/eigen3/Eigen/src/Core/util/Meta.h +812 -0
  393. casadi/include/eigen3/Eigen/src/Core/util/NonMPL2.h +3 -0
  394. casadi/include/eigen3/Eigen/src/Core/util/ReenableStupidWarnings.h +31 -0
  395. casadi/include/eigen3/Eigen/src/Core/util/ReshapedHelper.h +51 -0
  396. casadi/include/eigen3/Eigen/src/Core/util/StaticAssert.h +221 -0
  397. casadi/include/eigen3/Eigen/src/Core/util/SymbolicIndex.h +293 -0
  398. casadi/include/eigen3/Eigen/src/Core/util/XprHelper.h +856 -0
  399. casadi/include/eigen3/Eigen/src/Eigenvalues/ComplexEigenSolver.h +346 -0
  400. casadi/include/eigen3/Eigen/src/Eigenvalues/ComplexSchur.h +462 -0
  401. casadi/include/eigen3/Eigen/src/Eigenvalues/ComplexSchur_LAPACKE.h +91 -0
  402. casadi/include/eigen3/Eigen/src/Eigenvalues/EigenSolver.h +622 -0
  403. casadi/include/eigen3/Eigen/src/Eigenvalues/GeneralizedEigenSolver.h +418 -0
  404. casadi/include/eigen3/Eigen/src/Eigenvalues/GeneralizedSelfAdjointEigenSolver.h +226 -0
  405. casadi/include/eigen3/Eigen/src/Eigenvalues/HessenbergDecomposition.h +374 -0
  406. casadi/include/eigen3/Eigen/src/Eigenvalues/MatrixBaseEigenvalues.h +158 -0
  407. casadi/include/eigen3/Eigen/src/Eigenvalues/RealQZ.h +657 -0
  408. casadi/include/eigen3/Eigen/src/Eigenvalues/RealSchur.h +558 -0
  409. casadi/include/eigen3/Eigen/src/Eigenvalues/RealSchur_LAPACKE.h +77 -0
  410. casadi/include/eigen3/Eigen/src/Eigenvalues/SelfAdjointEigenSolver.h +904 -0
  411. casadi/include/eigen3/Eigen/src/Eigenvalues/SelfAdjointEigenSolver_LAPACKE.h +87 -0
  412. casadi/include/eigen3/Eigen/src/Eigenvalues/Tridiagonalization.h +561 -0
  413. casadi/include/eigen3/Eigen/src/Geometry/AlignedBox.h +486 -0
  414. casadi/include/eigen3/Eigen/src/Geometry/AngleAxis.h +247 -0
  415. casadi/include/eigen3/Eigen/src/Geometry/EulerAngles.h +114 -0
  416. casadi/include/eigen3/Eigen/src/Geometry/Homogeneous.h +501 -0
  417. casadi/include/eigen3/Eigen/src/Geometry/Hyperplane.h +282 -0
  418. casadi/include/eigen3/Eigen/src/Geometry/OrthoMethods.h +235 -0
  419. casadi/include/eigen3/Eigen/src/Geometry/ParametrizedLine.h +232 -0
  420. casadi/include/eigen3/Eigen/src/Geometry/Quaternion.h +870 -0
  421. casadi/include/eigen3/Eigen/src/Geometry/Rotation2D.h +199 -0
  422. casadi/include/eigen3/Eigen/src/Geometry/RotationBase.h +206 -0
  423. casadi/include/eigen3/Eigen/src/Geometry/Scaling.h +188 -0
  424. casadi/include/eigen3/Eigen/src/Geometry/Transform.h +1563 -0
  425. casadi/include/eigen3/Eigen/src/Geometry/Translation.h +202 -0
  426. casadi/include/eigen3/Eigen/src/Geometry/Umeyama.h +166 -0
  427. casadi/include/eigen3/Eigen/src/Geometry/arch/Geometry_SIMD.h +168 -0
  428. casadi/include/eigen3/Eigen/src/Householder/BlockHouseholder.h +110 -0
  429. casadi/include/eigen3/Eigen/src/Householder/Householder.h +176 -0
  430. casadi/include/eigen3/Eigen/src/Householder/HouseholderSequence.h +545 -0
  431. casadi/include/eigen3/Eigen/src/IterativeLinearSolvers/BasicPreconditioners.h +226 -0
  432. casadi/include/eigen3/Eigen/src/IterativeLinearSolvers/BiCGSTAB.h +212 -0
  433. casadi/include/eigen3/Eigen/src/IterativeLinearSolvers/ConjugateGradient.h +229 -0
  434. casadi/include/eigen3/Eigen/src/IterativeLinearSolvers/IncompleteCholesky.h +394 -0
  435. casadi/include/eigen3/Eigen/src/IterativeLinearSolvers/IncompleteLUT.h +453 -0
  436. casadi/include/eigen3/Eigen/src/IterativeLinearSolvers/IterativeSolverBase.h +444 -0
  437. casadi/include/eigen3/Eigen/src/IterativeLinearSolvers/LeastSquareConjugateGradient.h +198 -0
  438. casadi/include/eigen3/Eigen/src/IterativeLinearSolvers/SolveWithGuess.h +117 -0
  439. casadi/include/eigen3/Eigen/src/Jacobi/Jacobi.h +483 -0
  440. casadi/include/eigen3/Eigen/src/KLUSupport/KLUSupport.h +358 -0
  441. casadi/include/eigen3/Eigen/src/LU/Determinant.h +117 -0
  442. casadi/include/eigen3/Eigen/src/LU/FullPivLU.h +877 -0
  443. casadi/include/eigen3/Eigen/src/LU/InverseImpl.h +432 -0
  444. casadi/include/eigen3/Eigen/src/LU/PartialPivLU.h +624 -0
  445. casadi/include/eigen3/Eigen/src/LU/PartialPivLU_LAPACKE.h +83 -0
  446. casadi/include/eigen3/Eigen/src/LU/arch/InverseSize4.h +351 -0
  447. casadi/include/eigen3/Eigen/src/MetisSupport/MetisSupport.h +137 -0
  448. casadi/include/eigen3/Eigen/src/OrderingMethods/Amd.h +435 -0
  449. casadi/include/eigen3/Eigen/src/OrderingMethods/Eigen_Colamd.h +1863 -0
  450. casadi/include/eigen3/Eigen/src/OrderingMethods/Ordering.h +153 -0
  451. casadi/include/eigen3/Eigen/src/PaStiXSupport/PaStiXSupport.h +678 -0
  452. casadi/include/eigen3/Eigen/src/PardisoSupport/PardisoSupport.h +545 -0
  453. casadi/include/eigen3/Eigen/src/QR/ColPivHouseholderQR.h +674 -0
  454. casadi/include/eigen3/Eigen/src/QR/ColPivHouseholderQR_LAPACKE.h +97 -0
  455. casadi/include/eigen3/Eigen/src/QR/CompleteOrthogonalDecomposition.h +635 -0
  456. casadi/include/eigen3/Eigen/src/QR/FullPivHouseholderQR.h +713 -0
  457. casadi/include/eigen3/Eigen/src/QR/HouseholderQR.h +434 -0
  458. casadi/include/eigen3/Eigen/src/QR/HouseholderQR_LAPACKE.h +68 -0
  459. casadi/include/eigen3/Eigen/src/SPQRSupport/SuiteSparseQRSupport.h +335 -0
  460. casadi/include/eigen3/Eigen/src/SVD/BDCSVD.h +1366 -0
  461. casadi/include/eigen3/Eigen/src/SVD/JacobiSVD.h +812 -0
  462. casadi/include/eigen3/Eigen/src/SVD/JacobiSVD_LAPACKE.h +91 -0
  463. casadi/include/eigen3/Eigen/src/SVD/SVDBase.h +376 -0
  464. casadi/include/eigen3/Eigen/src/SVD/UpperBidiagonalization.h +414 -0
  465. casadi/include/eigen3/Eigen/src/SparseCholesky/SimplicialCholesky.h +697 -0
  466. casadi/include/eigen3/Eigen/src/SparseCholesky/SimplicialCholesky_impl.h +174 -0
  467. casadi/include/eigen3/Eigen/src/SparseCore/AmbiVector.h +378 -0
  468. casadi/include/eigen3/Eigen/src/SparseCore/CompressedStorage.h +274 -0
  469. casadi/include/eigen3/Eigen/src/SparseCore/ConservativeSparseSparseProduct.h +352 -0
  470. casadi/include/eigen3/Eigen/src/SparseCore/MappedSparseMatrix.h +67 -0
  471. casadi/include/eigen3/Eigen/src/SparseCore/SparseAssign.h +270 -0
  472. casadi/include/eigen3/Eigen/src/SparseCore/SparseBlock.h +571 -0
  473. casadi/include/eigen3/Eigen/src/SparseCore/SparseColEtree.h +206 -0
  474. casadi/include/eigen3/Eigen/src/SparseCore/SparseCompressedBase.h +370 -0
  475. casadi/include/eigen3/Eigen/src/SparseCore/SparseCwiseBinaryOp.h +722 -0
  476. casadi/include/eigen3/Eigen/src/SparseCore/SparseCwiseUnaryOp.h +150 -0
  477. casadi/include/eigen3/Eigen/src/SparseCore/SparseDenseProduct.h +342 -0
  478. casadi/include/eigen3/Eigen/src/SparseCore/SparseDiagonalProduct.h +138 -0
  479. casadi/include/eigen3/Eigen/src/SparseCore/SparseDot.h +98 -0
  480. casadi/include/eigen3/Eigen/src/SparseCore/SparseFuzzy.h +29 -0
  481. casadi/include/eigen3/Eigen/src/SparseCore/SparseMap.h +305 -0
  482. casadi/include/eigen3/Eigen/src/SparseCore/SparseMatrix.h +1518 -0
  483. casadi/include/eigen3/Eigen/src/SparseCore/SparseMatrixBase.h +398 -0
  484. casadi/include/eigen3/Eigen/src/SparseCore/SparsePermutation.h +178 -0
  485. casadi/include/eigen3/Eigen/src/SparseCore/SparseProduct.h +181 -0
  486. casadi/include/eigen3/Eigen/src/SparseCore/SparseRedux.h +49 -0
  487. casadi/include/eigen3/Eigen/src/SparseCore/SparseRef.h +397 -0
  488. casadi/include/eigen3/Eigen/src/SparseCore/SparseSelfAdjointView.h +659 -0
  489. casadi/include/eigen3/Eigen/src/SparseCore/SparseSolverBase.h +124 -0
  490. casadi/include/eigen3/Eigen/src/SparseCore/SparseSparseProductWithPruning.h +198 -0
  491. casadi/include/eigen3/Eigen/src/SparseCore/SparseTranspose.h +92 -0
  492. casadi/include/eigen3/Eigen/src/SparseCore/SparseTriangularView.h +189 -0
  493. casadi/include/eigen3/Eigen/src/SparseCore/SparseUtil.h +186 -0
  494. casadi/include/eigen3/Eigen/src/SparseCore/SparseVector.h +478 -0
  495. casadi/include/eigen3/Eigen/src/SparseCore/SparseView.h +254 -0
  496. casadi/include/eigen3/Eigen/src/SparseCore/TriangularSolver.h +315 -0
  497. casadi/include/eigen3/Eigen/src/SparseLU/SparseLU.h +923 -0
  498. casadi/include/eigen3/Eigen/src/SparseLU/SparseLUImpl.h +66 -0
  499. casadi/include/eigen3/Eigen/src/SparseLU/SparseLU_Memory.h +226 -0
  500. casadi/include/eigen3/Eigen/src/SparseLU/SparseLU_Structs.h +110 -0
  501. casadi/include/eigen3/Eigen/src/SparseLU/SparseLU_SupernodalMatrix.h +375 -0
  502. casadi/include/eigen3/Eigen/src/SparseLU/SparseLU_Utils.h +80 -0
  503. casadi/include/eigen3/Eigen/src/SparseLU/SparseLU_column_bmod.h +181 -0
  504. casadi/include/eigen3/Eigen/src/SparseLU/SparseLU_column_dfs.h +179 -0
  505. casadi/include/eigen3/Eigen/src/SparseLU/SparseLU_copy_to_ucol.h +107 -0
  506. casadi/include/eigen3/Eigen/src/SparseLU/SparseLU_gemm_kernel.h +280 -0
  507. casadi/include/eigen3/Eigen/src/SparseLU/SparseLU_heap_relax_snode.h +126 -0
  508. casadi/include/eigen3/Eigen/src/SparseLU/SparseLU_kernel_bmod.h +130 -0
  509. casadi/include/eigen3/Eigen/src/SparseLU/SparseLU_panel_bmod.h +223 -0
  510. casadi/include/eigen3/Eigen/src/SparseLU/SparseLU_panel_dfs.h +258 -0
  511. casadi/include/eigen3/Eigen/src/SparseLU/SparseLU_pivotL.h +137 -0
  512. casadi/include/eigen3/Eigen/src/SparseLU/SparseLU_pruneL.h +136 -0
  513. casadi/include/eigen3/Eigen/src/SparseLU/SparseLU_relax_snode.h +83 -0
  514. casadi/include/eigen3/Eigen/src/SparseQR/SparseQR.h +758 -0
  515. casadi/include/eigen3/Eigen/src/StlSupport/StdDeque.h +116 -0
  516. casadi/include/eigen3/Eigen/src/StlSupport/StdList.h +106 -0
  517. casadi/include/eigen3/Eigen/src/StlSupport/StdVector.h +131 -0
  518. casadi/include/eigen3/Eigen/src/StlSupport/details.h +84 -0
  519. casadi/include/eigen3/Eigen/src/SuperLUSupport/SuperLUSupport.h +1025 -0
  520. casadi/include/eigen3/Eigen/src/UmfPackSupport/UmfPackSupport.h +642 -0
  521. casadi/include/eigen3/Eigen/src/misc/Image.h +82 -0
  522. casadi/include/eigen3/Eigen/src/misc/Kernel.h +79 -0
  523. casadi/include/eigen3/Eigen/src/misc/RealSvd2x2.h +55 -0
  524. casadi/include/eigen3/Eigen/src/misc/blas.h +440 -0
  525. casadi/include/eigen3/Eigen/src/misc/lapack.h +152 -0
  526. casadi/include/eigen3/Eigen/src/misc/lapacke.h +16292 -0
  527. casadi/include/eigen3/Eigen/src/misc/lapacke_mangling.h +17 -0
  528. casadi/include/eigen3/Eigen/src/plugins/ArrayCwiseBinaryOps.h +358 -0
  529. casadi/include/eigen3/Eigen/src/plugins/ArrayCwiseUnaryOps.h +696 -0
  530. casadi/include/eigen3/Eigen/src/plugins/BlockMethods.h +1442 -0
  531. casadi/include/eigen3/Eigen/src/plugins/CommonCwiseBinaryOps.h +115 -0
  532. casadi/include/eigen3/Eigen/src/plugins/CommonCwiseUnaryOps.h +177 -0
  533. casadi/include/eigen3/Eigen/src/plugins/IndexedViewMethods.h +262 -0
  534. casadi/include/eigen3/Eigen/src/plugins/MatrixCwiseBinaryOps.h +152 -0
  535. casadi/include/eigen3/Eigen/src/plugins/MatrixCwiseUnaryOps.h +95 -0
  536. casadi/include/eigen3/Eigen/src/plugins/ReshapedMethods.h +149 -0
  537. casadi/include/eigen3/signature_of_eigen3_matrix_library +1 -0
  538. casadi/include/eigen3/unsupported/Eigen/AdolcForward +159 -0
  539. casadi/include/eigen3/unsupported/Eigen/AlignedVector3 +234 -0
  540. casadi/include/eigen3/unsupported/Eigen/ArpackSupport +30 -0
  541. casadi/include/eigen3/unsupported/Eigen/AutoDiff +46 -0
  542. casadi/include/eigen3/unsupported/Eigen/BVH +95 -0
  543. casadi/include/eigen3/unsupported/Eigen/CXX11/Tensor +137 -0
  544. casadi/include/eigen3/unsupported/Eigen/CXX11/TensorSymmetry +42 -0
  545. casadi/include/eigen3/unsupported/Eigen/CXX11/ThreadPool +74 -0
  546. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/Tensor.h +554 -0
  547. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorArgMax.h +329 -0
  548. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorAssign.h +247 -0
  549. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorBase.h +1176 -0
  550. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorBlock.h +1559 -0
  551. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorBroadcasting.h +1093 -0
  552. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorChipping.h +518 -0
  553. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorConcatenation.h +377 -0
  554. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorContraction.h +1023 -0
  555. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorContractionBlocking.h +73 -0
  556. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorContractionCuda.h +6 -0
  557. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorContractionGpu.h +1413 -0
  558. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorContractionMapper.h +575 -0
  559. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorContractionSycl.h +1650 -0
  560. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorContractionThreadPool.h +1679 -0
  561. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorConversion.h +456 -0
  562. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorConvolution.h +1132 -0
  563. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorConvolutionSycl.h +544 -0
  564. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorCostModel.h +214 -0
  565. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorCustomOp.h +347 -0
  566. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorDevice.h +137 -0
  567. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorDeviceCuda.h +6 -0
  568. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorDeviceDefault.h +104 -0
  569. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorDeviceGpu.h +389 -0
  570. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorDeviceSycl.h +1048 -0
  571. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorDeviceThreadPool.h +409 -0
  572. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorDimensionList.h +236 -0
  573. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorDimensions.h +490 -0
  574. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorEvalTo.h +236 -0
  575. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorEvaluator.h +983 -0
  576. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorExecutor.h +703 -0
  577. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorExpr.h +388 -0
  578. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorFFT.h +669 -0
  579. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorFixedSize.h +379 -0
  580. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorForcedEval.h +237 -0
  581. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorForwardDeclarations.h +191 -0
  582. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorFunctors.h +488 -0
  583. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorGenerator.h +302 -0
  584. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorGlobalFunctions.h +33 -0
  585. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorGpuHipCudaDefines.h +99 -0
  586. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorGpuHipCudaUndefines.h +44 -0
  587. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorIO.h +79 -0
  588. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorImagePatch.h +603 -0
  589. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorIndexList.h +738 -0
  590. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorInflation.h +247 -0
  591. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorInitializer.h +82 -0
  592. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorIntDiv.h +263 -0
  593. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorLayoutSwap.h +216 -0
  594. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorMacros.h +98 -0
  595. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorMap.h +327 -0
  596. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorMeta.h +311 -0
  597. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorMorphing.h +1102 -0
  598. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorPadding.h +708 -0
  599. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorPatch.h +291 -0
  600. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorRandom.h +322 -0
  601. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorReduction.h +998 -0
  602. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorReductionCuda.h +6 -0
  603. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorReductionGpu.h +966 -0
  604. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorReductionSycl.h +582 -0
  605. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorRef.h +454 -0
  606. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorReverse.h +465 -0
  607. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorScan.h +528 -0
  608. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorScanSycl.h +513 -0
  609. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorShuffling.h +471 -0
  610. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorStorage.h +161 -0
  611. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorStriding.h +346 -0
  612. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorTrace.h +303 -0
  613. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorTraits.h +264 -0
  614. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorUInt128.h +249 -0
  615. casadi/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorVolumePatch.h +629 -0
  616. casadi/include/eigen3/unsupported/Eigen/CXX11/src/TensorSymmetry/DynamicSymmetry.h +293 -0
  617. casadi/include/eigen3/unsupported/Eigen/CXX11/src/TensorSymmetry/StaticSymmetry.h +236 -0
  618. casadi/include/eigen3/unsupported/Eigen/CXX11/src/TensorSymmetry/Symmetry.h +338 -0
  619. casadi/include/eigen3/unsupported/Eigen/CXX11/src/TensorSymmetry/util/TemplateGroupTheory.h +669 -0
  620. casadi/include/eigen3/unsupported/Eigen/CXX11/src/ThreadPool/Barrier.h +67 -0
  621. casadi/include/eigen3/unsupported/Eigen/CXX11/src/ThreadPool/EventCount.h +249 -0
  622. casadi/include/eigen3/unsupported/Eigen/CXX11/src/ThreadPool/NonBlockingThreadPool.h +486 -0
  623. casadi/include/eigen3/unsupported/Eigen/CXX11/src/ThreadPool/RunQueue.h +236 -0
  624. casadi/include/eigen3/unsupported/Eigen/CXX11/src/ThreadPool/ThreadCancel.h +23 -0
  625. casadi/include/eigen3/unsupported/Eigen/CXX11/src/ThreadPool/ThreadEnvironment.h +40 -0
  626. casadi/include/eigen3/unsupported/Eigen/CXX11/src/ThreadPool/ThreadLocal.h +301 -0
  627. casadi/include/eigen3/unsupported/Eigen/CXX11/src/ThreadPool/ThreadPoolInterface.h +48 -0
  628. casadi/include/eigen3/unsupported/Eigen/CXX11/src/ThreadPool/ThreadYield.h +20 -0
  629. casadi/include/eigen3/unsupported/Eigen/CXX11/src/util/CXX11Meta.h +537 -0
  630. casadi/include/eigen3/unsupported/Eigen/CXX11/src/util/CXX11Workarounds.h +88 -0
  631. casadi/include/eigen3/unsupported/Eigen/CXX11/src/util/EmulateArray.h +261 -0
  632. casadi/include/eigen3/unsupported/Eigen/CXX11/src/util/MaxSizeVector.h +158 -0
  633. casadi/include/eigen3/unsupported/Eigen/EulerAngles +43 -0
  634. casadi/include/eigen3/unsupported/Eigen/FFT +419 -0
  635. casadi/include/eigen3/unsupported/Eigen/IterativeSolvers +51 -0
  636. casadi/include/eigen3/unsupported/Eigen/KroneckerProduct +36 -0
  637. casadi/include/eigen3/unsupported/Eigen/LevenbergMarquardt +49 -0
  638. casadi/include/eigen3/unsupported/Eigen/MPRealSupport +213 -0
  639. casadi/include/eigen3/unsupported/Eigen/MatrixFunctions +504 -0
  640. casadi/include/eigen3/unsupported/Eigen/MoreVectorization +24 -0
  641. casadi/include/eigen3/unsupported/Eigen/NonLinearOptimization +140 -0
  642. casadi/include/eigen3/unsupported/Eigen/NumericalDiff +56 -0
  643. casadi/include/eigen3/unsupported/Eigen/OpenGLSupport +322 -0
  644. casadi/include/eigen3/unsupported/Eigen/Polynomials +137 -0
  645. casadi/include/eigen3/unsupported/Eigen/Skyline +39 -0
  646. casadi/include/eigen3/unsupported/Eigen/SparseExtra +54 -0
  647. casadi/include/eigen3/unsupported/Eigen/SpecialFunctions +103 -0
  648. casadi/include/eigen3/unsupported/Eigen/Splines +35 -0
  649. casadi/include/eigen3/unsupported/Eigen/src/AutoDiff/AutoDiffJacobian.h +108 -0
  650. casadi/include/eigen3/unsupported/Eigen/src/AutoDiff/AutoDiffScalar.h +730 -0
  651. casadi/include/eigen3/unsupported/Eigen/src/AutoDiff/AutoDiffVector.h +220 -0
  652. casadi/include/eigen3/unsupported/Eigen/src/BVH/BVAlgorithms.h +293 -0
  653. casadi/include/eigen3/unsupported/Eigen/src/BVH/KdBVH.h +223 -0
  654. casadi/include/eigen3/unsupported/Eigen/src/Eigenvalues/ArpackSelfAdjointEigenSolver.h +790 -0
  655. casadi/include/eigen3/unsupported/Eigen/src/EulerAngles/EulerAngles.h +355 -0
  656. casadi/include/eigen3/unsupported/Eigen/src/EulerAngles/EulerSystem.h +305 -0
  657. casadi/include/eigen3/unsupported/Eigen/src/FFT/ei_fftw_impl.h +261 -0
  658. casadi/include/eigen3/unsupported/Eigen/src/FFT/ei_kissfft_impl.h +449 -0
  659. casadi/include/eigen3/unsupported/Eigen/src/IterativeSolvers/ConstrainedConjGrad.h +187 -0
  660. casadi/include/eigen3/unsupported/Eigen/src/IterativeSolvers/DGMRES.h +511 -0
  661. casadi/include/eigen3/unsupported/Eigen/src/IterativeSolvers/GMRES.h +335 -0
  662. casadi/include/eigen3/unsupported/Eigen/src/IterativeSolvers/IDRS.h +436 -0
  663. casadi/include/eigen3/unsupported/Eigen/src/IterativeSolvers/IncompleteLU.h +90 -0
  664. casadi/include/eigen3/unsupported/Eigen/src/IterativeSolvers/IterationController.h +154 -0
  665. casadi/include/eigen3/unsupported/Eigen/src/IterativeSolvers/MINRES.h +267 -0
  666. casadi/include/eigen3/unsupported/Eigen/src/IterativeSolvers/Scaling.h +193 -0
  667. casadi/include/eigen3/unsupported/Eigen/src/KroneckerProduct/KroneckerTensorProduct.h +305 -0
  668. casadi/include/eigen3/unsupported/Eigen/src/LevenbergMarquardt/LMcovar.h +84 -0
  669. casadi/include/eigen3/unsupported/Eigen/src/LevenbergMarquardt/LMonestep.h +202 -0
  670. casadi/include/eigen3/unsupported/Eigen/src/LevenbergMarquardt/LMpar.h +160 -0
  671. casadi/include/eigen3/unsupported/Eigen/src/LevenbergMarquardt/LMqrsolv.h +188 -0
  672. casadi/include/eigen3/unsupported/Eigen/src/LevenbergMarquardt/LevenbergMarquardt.h +396 -0
  673. casadi/include/eigen3/unsupported/Eigen/src/MatrixFunctions/MatrixExponential.h +441 -0
  674. casadi/include/eigen3/unsupported/Eigen/src/MatrixFunctions/MatrixFunction.h +569 -0
  675. casadi/include/eigen3/unsupported/Eigen/src/MatrixFunctions/MatrixLogarithm.h +373 -0
  676. casadi/include/eigen3/unsupported/Eigen/src/MatrixFunctions/MatrixPower.h +705 -0
  677. casadi/include/eigen3/unsupported/Eigen/src/MatrixFunctions/MatrixSquareRoot.h +368 -0
  678. casadi/include/eigen3/unsupported/Eigen/src/MatrixFunctions/StemFunction.h +117 -0
  679. casadi/include/eigen3/unsupported/Eigen/src/MoreVectorization/MathFunctions.h +95 -0
  680. casadi/include/eigen3/unsupported/Eigen/src/NonLinearOptimization/HybridNonLinearSolver.h +601 -0
  681. casadi/include/eigen3/unsupported/Eigen/src/NonLinearOptimization/LevenbergMarquardt.h +657 -0
  682. casadi/include/eigen3/unsupported/Eigen/src/NonLinearOptimization/chkder.h +66 -0
  683. casadi/include/eigen3/unsupported/Eigen/src/NonLinearOptimization/covar.h +70 -0
  684. casadi/include/eigen3/unsupported/Eigen/src/NonLinearOptimization/dogleg.h +107 -0
  685. casadi/include/eigen3/unsupported/Eigen/src/NonLinearOptimization/fdjac1.h +79 -0
  686. casadi/include/eigen3/unsupported/Eigen/src/NonLinearOptimization/lmpar.h +298 -0
  687. casadi/include/eigen3/unsupported/Eigen/src/NonLinearOptimization/qrsolv.h +91 -0
  688. casadi/include/eigen3/unsupported/Eigen/src/NonLinearOptimization/r1mpyq.h +30 -0
  689. casadi/include/eigen3/unsupported/Eigen/src/NonLinearOptimization/r1updt.h +99 -0
  690. casadi/include/eigen3/unsupported/Eigen/src/NonLinearOptimization/rwupdt.h +49 -0
  691. casadi/include/eigen3/unsupported/Eigen/src/NumericalDiff/NumericalDiff.h +130 -0
  692. casadi/include/eigen3/unsupported/Eigen/src/Polynomials/Companion.h +280 -0
  693. casadi/include/eigen3/unsupported/Eigen/src/Polynomials/PolynomialSolver.h +428 -0
  694. casadi/include/eigen3/unsupported/Eigen/src/Polynomials/PolynomialUtils.h +143 -0
  695. casadi/include/eigen3/unsupported/Eigen/src/Skyline/SkylineInplaceLU.h +352 -0
  696. casadi/include/eigen3/unsupported/Eigen/src/Skyline/SkylineMatrix.h +862 -0
  697. casadi/include/eigen3/unsupported/Eigen/src/Skyline/SkylineMatrixBase.h +212 -0
  698. casadi/include/eigen3/unsupported/Eigen/src/Skyline/SkylineProduct.h +295 -0
  699. casadi/include/eigen3/unsupported/Eigen/src/Skyline/SkylineStorage.h +259 -0
  700. casadi/include/eigen3/unsupported/Eigen/src/Skyline/SkylineUtil.h +89 -0
  701. casadi/include/eigen3/unsupported/Eigen/src/SparseExtra/BlockOfDynamicSparseMatrix.h +122 -0
  702. casadi/include/eigen3/unsupported/Eigen/src/SparseExtra/BlockSparseMatrix.h +1079 -0
  703. casadi/include/eigen3/unsupported/Eigen/src/SparseExtra/DynamicSparseMatrix.h +404 -0
  704. casadi/include/eigen3/unsupported/Eigen/src/SparseExtra/MarketIO.h +282 -0
  705. casadi/include/eigen3/unsupported/Eigen/src/SparseExtra/MatrixMarketIterator.h +247 -0
  706. casadi/include/eigen3/unsupported/Eigen/src/SparseExtra/RandomSetter.h +349 -0
  707. casadi/include/eigen3/unsupported/Eigen/src/SpecialFunctions/BesselFunctionsArrayAPI.h +286 -0
  708. casadi/include/eigen3/unsupported/Eigen/src/SpecialFunctions/BesselFunctionsBFloat16.h +68 -0
  709. casadi/include/eigen3/unsupported/Eigen/src/SpecialFunctions/BesselFunctionsFunctors.h +357 -0
  710. casadi/include/eigen3/unsupported/Eigen/src/SpecialFunctions/BesselFunctionsHalf.h +66 -0
  711. casadi/include/eigen3/unsupported/Eigen/src/SpecialFunctions/BesselFunctionsImpl.h +1959 -0
  712. casadi/include/eigen3/unsupported/Eigen/src/SpecialFunctions/BesselFunctionsPacketMath.h +118 -0
  713. casadi/include/eigen3/unsupported/Eigen/src/SpecialFunctions/HipVectorCompatibility.h +67 -0
  714. casadi/include/eigen3/unsupported/Eigen/src/SpecialFunctions/SpecialFunctionsArrayAPI.h +167 -0
  715. casadi/include/eigen3/unsupported/Eigen/src/SpecialFunctions/SpecialFunctionsBFloat16.h +58 -0
  716. casadi/include/eigen3/unsupported/Eigen/src/SpecialFunctions/SpecialFunctionsFunctors.h +330 -0
  717. casadi/include/eigen3/unsupported/Eigen/src/SpecialFunctions/SpecialFunctionsHalf.h +58 -0
  718. casadi/include/eigen3/unsupported/Eigen/src/SpecialFunctions/SpecialFunctionsImpl.h +2045 -0
  719. casadi/include/eigen3/unsupported/Eigen/src/SpecialFunctions/SpecialFunctionsPacketMath.h +79 -0
  720. casadi/include/eigen3/unsupported/Eigen/src/SpecialFunctions/arch/AVX/BesselFunctions.h +46 -0
  721. casadi/include/eigen3/unsupported/Eigen/src/SpecialFunctions/arch/AVX/SpecialFunctions.h +16 -0
  722. casadi/include/eigen3/unsupported/Eigen/src/SpecialFunctions/arch/AVX512/BesselFunctions.h +46 -0
  723. casadi/include/eigen3/unsupported/Eigen/src/SpecialFunctions/arch/AVX512/SpecialFunctions.h +16 -0
  724. casadi/include/eigen3/unsupported/Eigen/src/SpecialFunctions/arch/GPU/SpecialFunctions.h +369 -0
  725. casadi/include/eigen3/unsupported/Eigen/src/SpecialFunctions/arch/NEON/BesselFunctions.h +54 -0
  726. casadi/include/eigen3/unsupported/Eigen/src/SpecialFunctions/arch/NEON/SpecialFunctions.h +34 -0
  727. casadi/include/eigen3/unsupported/Eigen/src/Splines/Spline.h +507 -0
  728. casadi/include/eigen3/unsupported/Eigen/src/Splines/SplineFitting.h +431 -0
  729. casadi/include/eigen3/unsupported/Eigen/src/Splines/SplineFwd.h +93 -0
  730. casadi/include/highs/HConfig.h +23 -0
  731. casadi/include/highs/Highs.h +1270 -0
  732. casadi/include/highs/filereaderlp/builder.hpp +26 -0
  733. casadi/include/highs/filereaderlp/model.hpp +71 -0
  734. casadi/include/highs/filereaderlp/reader.hpp +10 -0
  735. casadi/include/highs/fortran/highs_fortran_api.mod +0 -0
  736. casadi/include/highs/interfaces/OsiHiGHSSolverInterface.hpp +415 -0
  737. casadi/include/highs/interfaces/highs_c_api.h +1720 -0
  738. casadi/include/highs/io/Filereader.h +49 -0
  739. casadi/include/highs/io/FilereaderEms.h +35 -0
  740. casadi/include/highs/io/FilereaderLp.h +56 -0
  741. casadi/include/highs/io/FilereaderMps.h +32 -0
  742. casadi/include/highs/io/HMPSIO.h +83 -0
  743. casadi/include/highs/io/HMpsFF.h +235 -0
  744. casadi/include/highs/io/HighsIO.h +93 -0
  745. casadi/include/highs/io/LoadOptions.h +26 -0
  746. casadi/include/highs/ipm/IpxWrapper.h +74 -0
  747. casadi/include/highs/lp_data/HConst.h +250 -0
  748. casadi/include/highs/lp_data/HStruct.h +100 -0
  749. casadi/include/highs/lp_data/HighsAnalysis.h +28 -0
  750. casadi/include/highs/lp_data/HighsDebug.h +39 -0
  751. casadi/include/highs/lp_data/HighsInfo.h +305 -0
  752. casadi/include/highs/lp_data/HighsInfoDebug.h +32 -0
  753. casadi/include/highs/lp_data/HighsLp.h +77 -0
  754. casadi/include/highs/lp_data/HighsLpSolverObject.h +47 -0
  755. casadi/include/highs/lp_data/HighsLpUtils.h +255 -0
  756. casadi/include/highs/lp_data/HighsModelUtils.h +95 -0
  757. casadi/include/highs/lp_data/HighsOptions.h +1061 -0
  758. casadi/include/highs/lp_data/HighsRanging.h +48 -0
  759. casadi/include/highs/lp_data/HighsRuntimeOptions.h +261 -0
  760. casadi/include/highs/lp_data/HighsSolution.h +137 -0
  761. casadi/include/highs/lp_data/HighsSolutionDebug.h +92 -0
  762. casadi/include/highs/lp_data/HighsSolve.h +26 -0
  763. casadi/include/highs/lp_data/HighsStatus.h +34 -0
  764. casadi/include/highs/mip/HighsCliqueTable.h +320 -0
  765. casadi/include/highs/mip/HighsConflictPool.h +114 -0
  766. casadi/include/highs/mip/HighsCutGeneration.h +98 -0
  767. casadi/include/highs/mip/HighsCutPool.h +173 -0
  768. casadi/include/highs/mip/HighsDebugSol.h +144 -0
  769. casadi/include/highs/mip/HighsDomain.h +633 -0
  770. casadi/include/highs/mip/HighsDomainChange.h +53 -0
  771. casadi/include/highs/mip/HighsDynamicRowMatrix.h +107 -0
  772. casadi/include/highs/mip/HighsGFkSolve.h +443 -0
  773. casadi/include/highs/mip/HighsImplications.h +148 -0
  774. casadi/include/highs/mip/HighsLpAggregator.h +55 -0
  775. casadi/include/highs/mip/HighsLpRelaxation.h +357 -0
  776. casadi/include/highs/mip/HighsMipSolver.h +91 -0
  777. casadi/include/highs/mip/HighsMipSolverData.h +189 -0
  778. casadi/include/highs/mip/HighsModkSeparator.h +65 -0
  779. casadi/include/highs/mip/HighsNodeQueue.h +318 -0
  780. casadi/include/highs/mip/HighsObjectiveFunction.h +76 -0
  781. casadi/include/highs/mip/HighsPathSeparator.h +44 -0
  782. casadi/include/highs/mip/HighsPrimalHeuristics.h +70 -0
  783. casadi/include/highs/mip/HighsPseudocost.h +353 -0
  784. casadi/include/highs/mip/HighsRedcostFixing.h +47 -0
  785. casadi/include/highs/mip/HighsSearch.h +245 -0
  786. casadi/include/highs/mip/HighsSeparation.h +46 -0
  787. casadi/include/highs/mip/HighsSeparator.h +58 -0
  788. casadi/include/highs/mip/HighsTableauSeparator.h +39 -0
  789. casadi/include/highs/mip/HighsTransformedLp.h +68 -0
  790. casadi/include/highs/model/HighsHessian.h +47 -0
  791. casadi/include/highs/model/HighsHessianUtils.h +47 -0
  792. casadi/include/highs/model/HighsModel.h +41 -0
  793. casadi/include/highs/parallel/HighsBinarySemaphore.h +113 -0
  794. casadi/include/highs/parallel/HighsCacheAlign.h +87 -0
  795. casadi/include/highs/parallel/HighsCombinable.h +121 -0
  796. casadi/include/highs/parallel/HighsMutex.h +128 -0
  797. casadi/include/highs/parallel/HighsParallel.h +128 -0
  798. casadi/include/highs/parallel/HighsRaceTimer.h +43 -0
  799. casadi/include/highs/parallel/HighsSchedulerConstants.h +24 -0
  800. casadi/include/highs/parallel/HighsSpinMutex.h +52 -0
  801. casadi/include/highs/parallel/HighsSplitDeque.h +583 -0
  802. casadi/include/highs/parallel/HighsTask.h +176 -0
  803. casadi/include/highs/parallel/HighsTaskExecutor.h +201 -0
  804. casadi/include/highs/presolve/HPresolve.h +349 -0
  805. casadi/include/highs/presolve/HPresolveAnalysis.h +53 -0
  806. casadi/include/highs/presolve/HighsPostsolveStack.h +846 -0
  807. casadi/include/highs/presolve/HighsSymmetry.h +285 -0
  808. casadi/include/highs/presolve/ICrash.h +120 -0
  809. casadi/include/highs/presolve/ICrashUtil.h +65 -0
  810. casadi/include/highs/presolve/ICrashX.h +28 -0
  811. casadi/include/highs/presolve/PresolveComponent.h +131 -0
  812. casadi/include/highs/qpsolver/perturbation.hpp +8 -0
  813. casadi/include/highs/qpsolver/quass.hpp +23 -0
  814. casadi/include/highs/qpsolver/scaling.hpp +8 -0
  815. casadi/include/highs/qpsolver/vector.hpp +235 -0
  816. casadi/include/highs/simplex/HApp.h +424 -0
  817. casadi/include/highs/simplex/HEkk.h +368 -0
  818. casadi/include/highs/simplex/HEkkDual.h +517 -0
  819. casadi/include/highs/simplex/HEkkDualRHS.h +139 -0
  820. casadi/include/highs/simplex/HEkkDualRow.h +206 -0
  821. casadi/include/highs/simplex/HEkkPrimal.h +192 -0
  822. casadi/include/highs/simplex/HSimplex.h +49 -0
  823. casadi/include/highs/simplex/HSimplexDebug.h +53 -0
  824. casadi/include/highs/simplex/HSimplexNla.h +186 -0
  825. casadi/include/highs/simplex/HSimplexReport.h +26 -0
  826. casadi/include/highs/simplex/HighsSimplexAnalysis.h +377 -0
  827. casadi/include/highs/simplex/SimplexConst.h +272 -0
  828. casadi/include/highs/simplex/SimplexStruct.h +258 -0
  829. casadi/include/highs/simplex/SimplexTimer.h +429 -0
  830. casadi/include/highs/test/DevKkt.h +148 -0
  831. casadi/include/highs/test/KktCh2.h +84 -0
  832. casadi/include/highs/util/FactorTimer.h +226 -0
  833. casadi/include/highs/util/HFactor.h +560 -0
  834. casadi/include/highs/util/HFactorConst.h +86 -0
  835. casadi/include/highs/util/HFactorDebug.h +60 -0
  836. casadi/include/highs/util/HSet.h +94 -0
  837. casadi/include/highs/util/HVector.h +27 -0
  838. casadi/include/highs/util/HVectorBase.h +107 -0
  839. casadi/include/highs/util/HighsCDouble.h +312 -0
  840. casadi/include/highs/util/HighsComponent.h +58 -0
  841. casadi/include/highs/util/HighsDataStack.h +88 -0
  842. casadi/include/highs/util/HighsDisjointSets.h +112 -0
  843. casadi/include/highs/util/HighsHash.h +1255 -0
  844. casadi/include/highs/util/HighsHashTree.h +1425 -0
  845. casadi/include/highs/util/HighsInt.h +41 -0
  846. casadi/include/highs/util/HighsIntegers.h +218 -0
  847. casadi/include/highs/util/HighsLinearSumBounds.h +162 -0
  848. casadi/include/highs/util/HighsMatrixPic.h +42 -0
  849. casadi/include/highs/util/HighsMatrixSlice.h +563 -0
  850. casadi/include/highs/util/HighsMatrixUtils.h +59 -0
  851. casadi/include/highs/util/HighsRandom.h +235 -0
  852. casadi/include/highs/util/HighsRbTree.h +457 -0
  853. casadi/include/highs/util/HighsSort.h +136 -0
  854. casadi/include/highs/util/HighsSparseMatrix.h +140 -0
  855. casadi/include/highs/util/HighsSparseVectorSum.h +100 -0
  856. casadi/include/highs/util/HighsSplay.h +140 -0
  857. casadi/include/highs/util/HighsTimer.h +335 -0
  858. casadi/include/highs/util/HighsUtils.h +193 -0
  859. casadi/include/highs/util/stringutil.h +41 -0
  860. casadi/include/hpipm_aux_mem.h +52 -0
  861. casadi/include/hpipm_aux_string.h +50 -0
  862. casadi/include/hpipm_common.h +76 -0
  863. casadi/include/hpipm_d_cast_qcqp.h +71 -0
  864. casadi/include/hpipm_d_cond.h +135 -0
  865. casadi/include/hpipm_d_cond_aux.h +92 -0
  866. casadi/include/hpipm_d_cond_qcqp.h +129 -0
  867. casadi/include/hpipm_d_core_qp_ipm.h +101 -0
  868. casadi/include/hpipm_d_core_qp_ipm_aux.h +68 -0
  869. casadi/include/hpipm_d_dense_qcqp.h +199 -0
  870. casadi/include/hpipm_d_dense_qcqp_dim.h +98 -0
  871. casadi/include/hpipm_d_dense_qcqp_ipm.h +193 -0
  872. casadi/include/hpipm_d_dense_qcqp_res.h +108 -0
  873. casadi/include/hpipm_d_dense_qcqp_sol.h +85 -0
  874. casadi/include/hpipm_d_dense_qcqp_utils.h +82 -0
  875. casadi/include/hpipm_d_dense_qp.h +207 -0
  876. casadi/include/hpipm_d_dense_qp_dim.h +92 -0
  877. casadi/include/hpipm_d_dense_qp_ipm.h +260 -0
  878. casadi/include/hpipm_d_dense_qp_kkt.h +72 -0
  879. casadi/include/hpipm_d_dense_qp_res.h +106 -0
  880. casadi/include/hpipm_d_dense_qp_sol.h +94 -0
  881. casadi/include/hpipm_d_dense_qp_utils.h +83 -0
  882. casadi/include/hpipm_d_ocp_qcqp.h +322 -0
  883. casadi/include/hpipm_d_ocp_qcqp_dim.h +130 -0
  884. casadi/include/hpipm_d_ocp_qcqp_ipm.h +192 -0
  885. casadi/include/hpipm_d_ocp_qcqp_red.h +118 -0
  886. casadi/include/hpipm_d_ocp_qcqp_res.h +115 -0
  887. casadi/include/hpipm_d_ocp_qcqp_sol.h +114 -0
  888. casadi/include/hpipm_d_ocp_qcqp_utils.h +81 -0
  889. casadi/include/hpipm_d_ocp_qp.h +306 -0
  890. casadi/include/hpipm_d_ocp_qp_dim.h +142 -0
  891. casadi/include/hpipm_d_ocp_qp_ipm.h +252 -0
  892. casadi/include/hpipm_d_ocp_qp_kkt.h +66 -0
  893. casadi/include/hpipm_d_ocp_qp_red.h +117 -0
  894. casadi/include/hpipm_d_ocp_qp_res.h +113 -0
  895. casadi/include/hpipm_d_ocp_qp_sol.h +128 -0
  896. casadi/include/hpipm_d_ocp_qp_utils.h +82 -0
  897. casadi/include/hpipm_d_part_cond.h +115 -0
  898. casadi/include/hpipm_d_part_cond_qcqp.h +106 -0
  899. casadi/include/hpipm_d_sim_erk.h +122 -0
  900. casadi/include/hpipm_d_sim_rk.h +71 -0
  901. casadi/include/hpipm_d_tree_ocp_qcqp.h +213 -0
  902. casadi/include/hpipm_d_tree_ocp_qcqp_dim.h +117 -0
  903. casadi/include/hpipm_d_tree_ocp_qcqp_ipm.h +191 -0
  904. casadi/include/hpipm_d_tree_ocp_qcqp_res.h +109 -0
  905. casadi/include/hpipm_d_tree_ocp_qcqp_sol.h +99 -0
  906. casadi/include/hpipm_d_tree_ocp_qcqp_utils.h +84 -0
  907. casadi/include/hpipm_d_tree_ocp_qp.h +195 -0
  908. casadi/include/hpipm_d_tree_ocp_qp_dim.h +111 -0
  909. casadi/include/hpipm_d_tree_ocp_qp_ipm.h +209 -0
  910. casadi/include/hpipm_d_tree_ocp_qp_kkt.h +52 -0
  911. casadi/include/hpipm_d_tree_ocp_qp_res.h +107 -0
  912. casadi/include/hpipm_d_tree_ocp_qp_sol.h +100 -0
  913. casadi/include/hpipm_d_tree_ocp_qp_utils.h +83 -0
  914. casadi/include/hpipm_m_dense_qp.h +68 -0
  915. casadi/include/hpipm_m_dense_qp_dim.h +68 -0
  916. casadi/include/hpipm_m_ocp_qp.h +49 -0
  917. casadi/include/hpipm_m_ocp_qp_ipm_hard.h +115 -0
  918. casadi/include/hpipm_m_ocp_qp_kkt.h +45 -0
  919. casadi/include/hpipm_s_cast_qcqp.h +72 -0
  920. casadi/include/hpipm_s_cond.h +137 -0
  921. casadi/include/hpipm_s_cond_aux.h +92 -0
  922. casadi/include/hpipm_s_cond_qcqp.h +130 -0
  923. casadi/include/hpipm_s_core_qp_ipm.h +101 -0
  924. casadi/include/hpipm_s_core_qp_ipm_aux.h +68 -0
  925. casadi/include/hpipm_s_dense_qcqp.h +200 -0
  926. casadi/include/hpipm_s_dense_qcqp_dim.h +99 -0
  927. casadi/include/hpipm_s_dense_qcqp_ipm.h +204 -0
  928. casadi/include/hpipm_s_dense_qcqp_res.h +109 -0
  929. casadi/include/hpipm_s_dense_qcqp_sol.h +86 -0
  930. casadi/include/hpipm_s_dense_qcqp_utils.h +83 -0
  931. casadi/include/hpipm_s_dense_qp.h +207 -0
  932. casadi/include/hpipm_s_dense_qp_dim.h +94 -0
  933. casadi/include/hpipm_s_dense_qp_ipm.h +260 -0
  934. casadi/include/hpipm_s_dense_qp_kkt.h +72 -0
  935. casadi/include/hpipm_s_dense_qp_res.h +107 -0
  936. casadi/include/hpipm_s_dense_qp_sol.h +94 -0
  937. casadi/include/hpipm_s_dense_qp_utils.h +84 -0
  938. casadi/include/hpipm_s_ocp_qcqp.h +322 -0
  939. casadi/include/hpipm_s_ocp_qcqp_dim.h +131 -0
  940. casadi/include/hpipm_s_ocp_qcqp_ipm.h +193 -0
  941. casadi/include/hpipm_s_ocp_qcqp_red.h +119 -0
  942. casadi/include/hpipm_s_ocp_qcqp_res.h +116 -0
  943. casadi/include/hpipm_s_ocp_qcqp_sol.h +115 -0
  944. casadi/include/hpipm_s_ocp_qcqp_utils.h +82 -0
  945. casadi/include/hpipm_s_ocp_qp.h +306 -0
  946. casadi/include/hpipm_s_ocp_qp_dim.h +141 -0
  947. casadi/include/hpipm_s_ocp_qp_ipm.h +252 -0
  948. casadi/include/hpipm_s_ocp_qp_kkt.h +66 -0
  949. casadi/include/hpipm_s_ocp_qp_red.h +118 -0
  950. casadi/include/hpipm_s_ocp_qp_res.h +115 -0
  951. casadi/include/hpipm_s_ocp_qp_sol.h +128 -0
  952. casadi/include/hpipm_s_ocp_qp_utils.h +83 -0
  953. casadi/include/hpipm_s_part_cond.h +115 -0
  954. casadi/include/hpipm_s_part_cond_qcqp.h +107 -0
  955. casadi/include/hpipm_s_sim_erk.h +121 -0
  956. casadi/include/hpipm_s_sim_rk.h +72 -0
  957. casadi/include/hpipm_s_tree_ocp_qcqp.h +213 -0
  958. casadi/include/hpipm_s_tree_ocp_qcqp_dim.h +118 -0
  959. casadi/include/hpipm_s_tree_ocp_qcqp_ipm.h +192 -0
  960. casadi/include/hpipm_s_tree_ocp_qcqp_res.h +110 -0
  961. casadi/include/hpipm_s_tree_ocp_qcqp_sol.h +97 -0
  962. casadi/include/hpipm_s_tree_ocp_qcqp_utils.h +85 -0
  963. casadi/include/hpipm_s_tree_ocp_qp.h +196 -0
  964. casadi/include/hpipm_s_tree_ocp_qp_dim.h +111 -0
  965. casadi/include/hpipm_s_tree_ocp_qp_ipm.h +208 -0
  966. casadi/include/hpipm_s_tree_ocp_qp_kkt.h +54 -0
  967. casadi/include/hpipm_s_tree_ocp_qp_res.h +108 -0
  968. casadi/include/hpipm_s_tree_ocp_qp_sol.h +98 -0
  969. casadi/include/hpipm_s_tree_ocp_qp_utils.h +84 -0
  970. casadi/include/hpipm_scenario_tree.h +70 -0
  971. casadi/include/hpipm_timing.h +67 -0
  972. casadi/include/hpipm_tree.h +76 -0
  973. casadi/include/licenses/FMI-Standard-2.0.2/LICENSE.txt +473 -0
  974. casadi/include/licenses/FMI-Standard-3.0/LICENSE.txt +464 -0
  975. casadi/include/licenses/blasfeo-external/LICENSE.txt +26 -0
  976. casadi/include/licenses/bonmin-external/Bonmin/LICENSE +87 -0
  977. casadi/include/licenses/bonmin-external/LICENSE +3 -0
  978. casadi/include/licenses/casadi/LICENSE/LICENSE.txt +165 -0
  979. casadi/include/licenses/casadi-sundials/LICENSE +64 -0
  980. casadi/include/licenses/casadi-sundials/cvodes/LICENSE +60 -0
  981. casadi/include/licenses/casadi-sundials/idas/LICENSE +59 -0
  982. casadi/include/licenses/casadi-sundials/kinsol/LICENSE +59 -0
  983. casadi/include/licenses/casadi-sundials/sundials/LICENSE +67 -0
  984. casadi/include/licenses/cbc-external/Cbc/LICENSE +239 -0
  985. casadi/include/licenses/cbc-external/LICENSE +245 -0
  986. casadi/include/licenses/cgl-external/Cgl/LICENSE +239 -0
  987. casadi/include/licenses/cgl-external/LICENSE +245 -0
  988. casadi/include/licenses/clp-external/Clp/LICENSE +239 -0
  989. casadi/include/licenses/clp-external/LICENSE +245 -0
  990. casadi/include/licenses/coinutils-external/CoinUtils/LICENSE +239 -0
  991. casadi/include/licenses/coinutils-external/LICENSE +245 -0
  992. casadi/include/licenses/highs-external/LICENSE +21 -0
  993. casadi/include/licenses/highs-external/extern/filereaderlp/LICENSE +19 -0
  994. casadi/include/licenses/hpipm-external/LICENSE.txt +26 -0
  995. casadi/include/licenses/ipopt-external/LICENSE +260 -0
  996. casadi/include/licenses/metis-external/LICENSE +87 -0
  997. casadi/include/licenses/metis-external/metis-4.0/LICENSE +18 -0
  998. casadi/include/licenses/mockups-external/LICENSE +21 -0
  999. casadi/include/licenses/mumps-external/LICENSE +87 -0
  1000. casadi/include/licenses/mumps-external/MUMPS/LICENSE +50 -0
  1001. casadi/include/licenses/openblas-external/LICENSE +29 -0
  1002. casadi/include/licenses/openblas-external/ctest/LICENSE +23 -0
  1003. casadi/include/licenses/openblas-external/lapack-netlib/LAPACKE/LICENSE +26 -0
  1004. casadi/include/licenses/openblas-external/lapack-netlib/LICENSE +48 -0
  1005. casadi/include/licenses/openblas-external/reference/LICENSE +23 -0
  1006. casadi/include/licenses/openblas-external/relapack/LICENSE +22 -0
  1007. casadi/include/licenses/openblas-external/test/LICENSE +23 -0
  1008. casadi/include/licenses/osi-external/LICENSE +245 -0
  1009. casadi/include/licenses/osi-external/Osi/LICENSE +239 -0
  1010. casadi/include/licenses/osqp-external/LICENSE +201 -0
  1011. casadi/include/licenses/osqp-external/lin_sys/direct/qdldl/amd/LICENSE +36 -0
  1012. casadi/include/licenses/osqp-external/lin_sys/direct/qdldl/qdldl_sources/LICENSE +201 -0
  1013. casadi/include/licenses/proxqp-external/LICENSE +25 -0
  1014. casadi/include/licenses/proxqp-external/bindings/python/external/pybind11/LICENSE +29 -0
  1015. casadi/include/licenses/proxqp-external/cmake-module/LICENSE +4 -0
  1016. casadi/include/licenses/proxqp-external/cmake-module/doxygen/MathJax/LICENSE +202 -0
  1017. casadi/include/licenses/proxqp-external/external/cereal/LICENSE +24 -0
  1018. casadi/include/licenses/proxqp-external/external/cereal/include/cereal/external/LICENSE +21 -0
  1019. casadi/include/licenses/proxqp-external/external/cereal/include/cereal/external/rapidjson/LICENSE +13 -0
  1020. casadi/include/licenses/proxqp-external/external/cereal/include/cereal/external/rapidjson/msinttypes/LICENSE +29 -0
  1021. casadi/include/licenses/qpOASES/LICENSE.txt +503 -0
  1022. casadi/include/licenses/superscs-external/LICENSE.txt +24 -0
  1023. casadi/include/licenses/tinyxml2-9.0.0/LICENSE.txt +18 -0
  1024. casadi/include/osqp/auxil.h +181 -0
  1025. casadi/include/osqp/constants.h +129 -0
  1026. casadi/include/osqp/cs.h +180 -0
  1027. casadi/include/osqp/ctrlc.h +56 -0
  1028. casadi/include/osqp/error.h +38 -0
  1029. casadi/include/osqp/glob_opts.h +167 -0
  1030. casadi/include/osqp/lin_alg.h +216 -0
  1031. casadi/include/osqp/lin_sys.h +54 -0
  1032. casadi/include/osqp/osqp.h +430 -0
  1033. casadi/include/osqp/osqp_configure.h +49 -0
  1034. casadi/include/osqp/polish.h +25 -0
  1035. casadi/include/osqp/proj.h +37 -0
  1036. casadi/include/osqp/scaling.h +44 -0
  1037. casadi/include/osqp/types.h +326 -0
  1038. casadi/include/osqp/util.h +222 -0
  1039. casadi/include/proxsuite/config.hpp +68 -0
  1040. casadi/include/proxsuite/deprecated.hpp +56 -0
  1041. casadi/include/proxsuite/fwd.hpp +52 -0
  1042. casadi/include/proxsuite/helpers/common.hpp +70 -0
  1043. casadi/include/proxsuite/helpers/instruction-set.hpp +275 -0
  1044. casadi/include/proxsuite/helpers/optional.hpp +46 -0
  1045. casadi/include/proxsuite/helpers/tl-optional.hpp +2472 -0
  1046. casadi/include/proxsuite/helpers/version.hpp +39 -0
  1047. casadi/include/proxsuite/linalg/dense/core.hpp +863 -0
  1048. casadi/include/proxsuite/linalg/dense/factorize.hpp +375 -0
  1049. casadi/include/proxsuite/linalg/dense/ldlt.hpp +817 -0
  1050. casadi/include/proxsuite/linalg/dense/modify.hpp +333 -0
  1051. casadi/include/proxsuite/linalg/dense/solve.hpp +38 -0
  1052. casadi/include/proxsuite/linalg/dense/update.hpp +330 -0
  1053. casadi/include/proxsuite/linalg/sparse/core.hpp +531 -0
  1054. casadi/include/proxsuite/linalg/sparse/factorize.hpp +1303 -0
  1055. casadi/include/proxsuite/linalg/sparse/rowmod.hpp +443 -0
  1056. casadi/include/proxsuite/linalg/sparse/update.hpp +348 -0
  1057. casadi/include/proxsuite/linalg/veg/internal/assert_impl.hpp +20 -0
  1058. casadi/include/proxsuite/linalg/veg/internal/collection_algo.hpp +93 -0
  1059. casadi/include/proxsuite/linalg/veg/internal/dbg.hpp +15 -0
  1060. casadi/include/proxsuite/linalg/veg/internal/delete_special_members.hpp +77 -0
  1061. casadi/include/proxsuite/linalg/veg/internal/dyn_index.hpp +292 -0
  1062. casadi/include/proxsuite/linalg/veg/internal/epilogue.hpp +31 -0
  1063. casadi/include/proxsuite/linalg/veg/internal/external/hedley.ext.hpp +2074 -0
  1064. casadi/include/proxsuite/linalg/veg/internal/external/unhedley.ext.hpp +148 -0
  1065. casadi/include/proxsuite/linalg/veg/internal/fix_index.hpp +339 -0
  1066. casadi/include/proxsuite/linalg/veg/internal/has_asan.hpp +17 -0
  1067. casadi/include/proxsuite/linalg/veg/internal/integer_seq.hpp +248 -0
  1068. casadi/include/proxsuite/linalg/veg/internal/macros.hpp +1312 -0
  1069. casadi/include/proxsuite/linalg/veg/internal/narrow.hpp +46 -0
  1070. casadi/include/proxsuite/linalg/veg/internal/preprocessor.hpp +434 -0
  1071. casadi/include/proxsuite/linalg/veg/internal/prologue.hpp +157 -0
  1072. casadi/include/proxsuite/linalg/veg/internal/std.hpp +13 -0
  1073. casadi/include/proxsuite/linalg/veg/internal/terminate.hpp +22 -0
  1074. casadi/include/proxsuite/linalg/veg/internal/typedefs.hpp +58 -0
  1075. casadi/include/proxsuite/linalg/veg/memory/address.hpp +97 -0
  1076. casadi/include/proxsuite/linalg/veg/memory/alloc.hpp +352 -0
  1077. casadi/include/proxsuite/linalg/veg/memory/dynamic_stack.hpp +504 -0
  1078. casadi/include/proxsuite/linalg/veg/memory/placement.hpp +202 -0
  1079. casadi/include/proxsuite/linalg/veg/memory/stack_alloc.hpp +239 -0
  1080. casadi/include/proxsuite/linalg/veg/ref.hpp +148 -0
  1081. casadi/include/proxsuite/linalg/veg/slice.hpp +240 -0
  1082. casadi/include/proxsuite/linalg/veg/tuple.hpp +876 -0
  1083. casadi/include/proxsuite/linalg/veg/type_traits/alloc.hpp +169 -0
  1084. casadi/include/proxsuite/linalg/veg/type_traits/assignable.hpp +53 -0
  1085. casadi/include/proxsuite/linalg/veg/type_traits/constructible.hpp +217 -0
  1086. casadi/include/proxsuite/linalg/veg/type_traits/core.hpp +298 -0
  1087. casadi/include/proxsuite/linalg/veg/type_traits/invocable.hpp +47 -0
  1088. casadi/include/proxsuite/linalg/veg/type_traits/primitives.hpp +43 -0
  1089. casadi/include/proxsuite/linalg/veg/type_traits/tags.hpp +47 -0
  1090. casadi/include/proxsuite/linalg/veg/util/assert.hpp +48 -0
  1091. casadi/include/proxsuite/linalg/veg/util/dbg.hpp +6 -0
  1092. casadi/include/proxsuite/linalg/veg/util/defer.hpp +57 -0
  1093. casadi/include/proxsuite/linalg/veg/util/dynstack_alloc.hpp +19 -0
  1094. casadi/include/proxsuite/linalg/veg/util/get.hpp +153 -0
  1095. casadi/include/proxsuite/linalg/veg/util/index.hpp +6 -0
  1096. casadi/include/proxsuite/linalg/veg/util/unreachable.hpp +41 -0
  1097. casadi/include/proxsuite/linalg/veg/vec.hpp +1034 -0
  1098. casadi/include/proxsuite/proxqp/dense/dense.hpp +10 -0
  1099. casadi/include/proxsuite/proxqp/dense/fwd.hpp +55 -0
  1100. casadi/include/proxsuite/proxqp/dense/helpers.hpp +520 -0
  1101. casadi/include/proxsuite/proxqp/dense/linesearch.hpp +517 -0
  1102. casadi/include/proxsuite/proxqp/dense/model.hpp +147 -0
  1103. casadi/include/proxsuite/proxqp/dense/preconditioner/identity.hpp +113 -0
  1104. casadi/include/proxsuite/proxqp/dense/preconditioner/ruiz.hpp +571 -0
  1105. casadi/include/proxsuite/proxqp/dense/solver.hpp +1330 -0
  1106. casadi/include/proxsuite/proxqp/dense/utils.hpp +415 -0
  1107. casadi/include/proxsuite/proxqp/dense/views.hpp +1466 -0
  1108. casadi/include/proxsuite/proxqp/dense/workspace.hpp +264 -0
  1109. casadi/include/proxsuite/proxqp/dense/wrapper.hpp +491 -0
  1110. casadi/include/proxsuite/proxqp/results.hpp +212 -0
  1111. casadi/include/proxsuite/proxqp/settings.hpp +302 -0
  1112. casadi/include/proxsuite/proxqp/sparse/fwd.hpp +58 -0
  1113. casadi/include/proxsuite/proxqp/sparse/helpers.hpp +309 -0
  1114. casadi/include/proxsuite/proxqp/sparse/model.hpp +228 -0
  1115. casadi/include/proxsuite/proxqp/sparse/preconditioner/identity.hpp +64 -0
  1116. casadi/include/proxsuite/proxqp/sparse/preconditioner/ruiz.hpp +569 -0
  1117. casadi/include/proxsuite/proxqp/sparse/solver.hpp +1441 -0
  1118. casadi/include/proxsuite/proxqp/sparse/sparse.hpp +10 -0
  1119. casadi/include/proxsuite/proxqp/sparse/utils.hpp +815 -0
  1120. casadi/include/proxsuite/proxqp/sparse/views.hpp +63 -0
  1121. casadi/include/proxsuite/proxqp/sparse/workspace.hpp +790 -0
  1122. casadi/include/proxsuite/proxqp/sparse/wrapper.hpp +772 -0
  1123. casadi/include/proxsuite/proxqp/status.hpp +46 -0
  1124. casadi/include/proxsuite/proxqp/timings.hpp +101 -0
  1125. casadi/include/proxsuite/proxqp/utils/prints.hpp +47 -0
  1126. casadi/include/proxsuite/proxqp/utils/random_qp_problems.hpp +669 -0
  1127. casadi/include/proxsuite/serialization/archive.hpp +231 -0
  1128. casadi/include/proxsuite/serialization/eigen.hpp +107 -0
  1129. casadi/include/proxsuite/serialization/model.hpp +34 -0
  1130. casadi/include/proxsuite/serialization/results.hpp +74 -0
  1131. casadi/include/proxsuite/serialization/settings.hpp +60 -0
  1132. casadi/include/proxsuite/serialization/wrapper.hpp +24 -0
  1133. casadi/include/proxsuite/warning.hpp +35 -0
  1134. casadi/include/simde/arm/neon/aba.h +208 -0
  1135. casadi/include/simde/arm/neon/abd.h +384 -0
  1136. casadi/include/simde/arm/neon/abdl.h +147 -0
  1137. casadi/include/simde/arm/neon/abs.h +408 -0
  1138. casadi/include/simde/arm/neon/add.h +681 -0
  1139. casadi/include/simde/arm/neon/addl.h +127 -0
  1140. casadi/include/simde/arm/neon/addl_high.h +127 -0
  1141. casadi/include/simde/arm/neon/addlv.h +317 -0
  1142. casadi/include/simde/arm/neon/addv.h +447 -0
  1143. casadi/include/simde/arm/neon/addw.h +222 -0
  1144. casadi/include/simde/arm/neon/addw_high.h +193 -0
  1145. casadi/include/simde/arm/neon/and.h +552 -0
  1146. casadi/include/simde/arm/neon/bic.h +472 -0
  1147. casadi/include/simde/arm/neon/bsl.h +448 -0
  1148. casadi/include/simde/arm/neon/cagt.h +168 -0
  1149. casadi/include/simde/arm/neon/ceq.h +711 -0
  1150. casadi/include/simde/arm/neon/ceqz.h +335 -0
  1151. casadi/include/simde/arm/neon/cge.h +677 -0
  1152. casadi/include/simde/arm/neon/cgez.h +378 -0
  1153. casadi/include/simde/arm/neon/cgt.h +686 -0
  1154. casadi/include/simde/arm/neon/cgtz.h +380 -0
  1155. casadi/include/simde/arm/neon/cle.h +677 -0
  1156. casadi/include/simde/arm/neon/clez.h +378 -0
  1157. casadi/include/simde/arm/neon/cls.h +148 -0
  1158. casadi/include/simde/arm/neon/clt.h +679 -0
  1159. casadi/include/simde/arm/neon/cltz.h +263 -0
  1160. casadi/include/simde/arm/neon/clz.h +423 -0
  1161. casadi/include/simde/arm/neon/cnt.h +145 -0
  1162. casadi/include/simde/arm/neon/combine.h +343 -0
  1163. casadi/include/simde/arm/neon/create.h +186 -0
  1164. casadi/include/simde/arm/neon/cvt.h +492 -0
  1165. casadi/include/simde/arm/neon/dot.h +171 -0
  1166. casadi/include/simde/arm/neon/dot_lane.h +196 -0
  1167. casadi/include/simde/arm/neon/dup_lane.h +702 -0
  1168. casadi/include/simde/arm/neon/dup_n.h +534 -0
  1169. casadi/include/simde/arm/neon/eor.h +552 -0
  1170. casadi/include/simde/arm/neon/ext.h +887 -0
  1171. casadi/include/simde/arm/neon/get_high.h +260 -0
  1172. casadi/include/simde/arm/neon/get_lane.h +499 -0
  1173. casadi/include/simde/arm/neon/get_low.h +276 -0
  1174. casadi/include/simde/arm/neon/hadd.h +287 -0
  1175. casadi/include/simde/arm/neon/hsub.h +287 -0
  1176. casadi/include/simde/arm/neon/ld1.h +399 -0
  1177. casadi/include/simde/arm/neon/ld3.h +609 -0
  1178. casadi/include/simde/arm/neon/ld4.h +448 -0
  1179. casadi/include/simde/arm/neon/max.h +614 -0
  1180. casadi/include/simde/arm/neon/maxnm.h +215 -0
  1181. casadi/include/simde/arm/neon/maxv.h +400 -0
  1182. casadi/include/simde/arm/neon/min.h +660 -0
  1183. casadi/include/simde/arm/neon/minnm.h +215 -0
  1184. casadi/include/simde/arm/neon/minv.h +424 -0
  1185. casadi/include/simde/arm/neon/mla.h +530 -0
  1186. casadi/include/simde/arm/neon/mla_n.h +333 -0
  1187. casadi/include/simde/arm/neon/mlal.h +156 -0
  1188. casadi/include/simde/arm/neon/mlal_high.h +156 -0
  1189. casadi/include/simde/arm/neon/mlal_n.h +128 -0
  1190. casadi/include/simde/arm/neon/mls.h +264 -0
  1191. casadi/include/simde/arm/neon/mlsl.h +124 -0
  1192. casadi/include/simde/arm/neon/mlsl_high.h +124 -0
  1193. casadi/include/simde/arm/neon/mlsl_n.h +96 -0
  1194. casadi/include/simde/arm/neon/movl.h +208 -0
  1195. casadi/include/simde/arm/neon/movl_high.h +126 -0
  1196. casadi/include/simde/arm/neon/movn.h +195 -0
  1197. casadi/include/simde/arm/neon/movn_high.h +125 -0
  1198. casadi/include/simde/arm/neon/mul.h +594 -0
  1199. casadi/include/simde/arm/neon/mul_lane.h +472 -0
  1200. casadi/include/simde/arm/neon/mul_n.h +383 -0
  1201. casadi/include/simde/arm/neon/mull.h +236 -0
  1202. casadi/include/simde/arm/neon/mull_high.h +125 -0
  1203. casadi/include/simde/arm/neon/mull_n.h +158 -0
  1204. casadi/include/simde/arm/neon/mvn.h +426 -0
  1205. casadi/include/simde/arm/neon/neg.h +393 -0
  1206. casadi/include/simde/arm/neon/orn.h +505 -0
  1207. casadi/include/simde/arm/neon/orr.h +552 -0
  1208. casadi/include/simde/arm/neon/padal.h +211 -0
  1209. casadi/include/simde/arm/neon/padd.h +293 -0
  1210. casadi/include/simde/arm/neon/paddl.h +239 -0
  1211. casadi/include/simde/arm/neon/pmax.h +253 -0
  1212. casadi/include/simde/arm/neon/pmin.h +260 -0
  1213. casadi/include/simde/arm/neon/qabs.h +281 -0
  1214. casadi/include/simde/arm/neon/qadd.h +553 -0
  1215. casadi/include/simde/arm/neon/qdmulh.h +125 -0
  1216. casadi/include/simde/arm/neon/qdmull.h +125 -0
  1217. casadi/include/simde/arm/neon/qmovn.h +273 -0
  1218. casadi/include/simde/arm/neon/qmovn_high.h +127 -0
  1219. casadi/include/simde/arm/neon/qmovun.h +159 -0
  1220. casadi/include/simde/arm/neon/qneg.h +301 -0
  1221. casadi/include/simde/arm/neon/qrdmulh.h +165 -0
  1222. casadi/include/simde/arm/neon/qrdmulh_n.h +136 -0
  1223. casadi/include/simde/arm/neon/qshl.h +732 -0
  1224. casadi/include/simde/arm/neon/qsub.h +549 -0
  1225. casadi/include/simde/arm/neon/qtbl.h +455 -0
  1226. casadi/include/simde/arm/neon/qtbx.h +470 -0
  1227. casadi/include/simde/arm/neon/rbit.h +165 -0
  1228. casadi/include/simde/arm/neon/reinterpret.h +3101 -0
  1229. casadi/include/simde/arm/neon/rev16.h +137 -0
  1230. casadi/include/simde/arm/neon/rev32.h +235 -0
  1231. casadi/include/simde/arm/neon/rev64.h +358 -0
  1232. casadi/include/simde/arm/neon/rhadd.h +406 -0
  1233. casadi/include/simde/arm/neon/rnd.h +143 -0
  1234. casadi/include/simde/arm/neon/rndi.h +135 -0
  1235. casadi/include/simde/arm/neon/rndm.h +143 -0
  1236. casadi/include/simde/arm/neon/rndn.h +135 -0
  1237. casadi/include/simde/arm/neon/rndp.h +143 -0
  1238. casadi/include/simde/arm/neon/rshl.h +903 -0
  1239. casadi/include/simde/arm/neon/rshr_n.h +471 -0
  1240. casadi/include/simde/arm/neon/rsra_n.h +209 -0
  1241. casadi/include/simde/arm/neon/set_lane.h +422 -0
  1242. casadi/include/simde/arm/neon/shl.h +805 -0
  1243. casadi/include/simde/arm/neon/shl_n.h +560 -0
  1244. casadi/include/simde/arm/neon/shr_n.h +612 -0
  1245. casadi/include/simde/arm/neon/sra_n.h +202 -0
  1246. casadi/include/simde/arm/neon/st1.h +353 -0
  1247. casadi/include/simde/arm/neon/st1_lane.h +363 -0
  1248. casadi/include/simde/arm/neon/st3.h +426 -0
  1249. casadi/include/simde/arm/neon/st4.h +445 -0
  1250. casadi/include/simde/arm/neon/sub.h +659 -0
  1251. casadi/include/simde/arm/neon/subl.h +127 -0
  1252. casadi/include/simde/arm/neon/subw.h +221 -0
  1253. casadi/include/simde/arm/neon/subw_high.h +222 -0
  1254. casadi/include/simde/arm/neon/tbl.h +224 -0
  1255. casadi/include/simde/arm/neon/tbx.h +247 -0
  1256. casadi/include/simde/arm/neon/trn.h +252 -0
  1257. casadi/include/simde/arm/neon/trn1.h +500 -0
  1258. casadi/include/simde/arm/neon/trn2.h +499 -0
  1259. casadi/include/simde/arm/neon/tst.h +540 -0
  1260. casadi/include/simde/arm/neon/types.h +683 -0
  1261. casadi/include/simde/arm/neon/uqadd.h +325 -0
  1262. casadi/include/simde/arm/neon/uzp.h +252 -0
  1263. casadi/include/simde/arm/neon/uzp1.h +643 -0
  1264. casadi/include/simde/arm/neon/uzp2.h +647 -0
  1265. casadi/include/simde/arm/neon/zip.h +252 -0
  1266. casadi/include/simde/arm/neon/zip1.h +625 -0
  1267. casadi/include/simde/arm/neon/zip2.h +625 -0
  1268. casadi/include/simde/arm/neon.h +166 -0
  1269. casadi/include/simde/check.h +276 -0
  1270. casadi/include/simde/debug-trap.h +85 -0
  1271. casadi/include/simde/hedley.h +1971 -0
  1272. casadi/include/simde/simde-align.h +449 -0
  1273. casadi/include/simde/simde-arch.h +532 -0
  1274. casadi/include/simde/simde-common.h +890 -0
  1275. casadi/include/simde/simde-complex.h +148 -0
  1276. casadi/include/simde/simde-constify.h +397 -0
  1277. casadi/include/simde/simde-detect-clang.h +109 -0
  1278. casadi/include/simde/simde-diagnostic.h +428 -0
  1279. casadi/include/simde/simde-features.h +522 -0
  1280. casadi/include/simde/simde-math.h +1805 -0
  1281. casadi/include/simde/x86/avx.h +6193 -0
  1282. casadi/include/simde/x86/avx2.h +5660 -0
  1283. casadi/include/simde/x86/avx512/2intersect.h +250 -0
  1284. casadi/include/simde/x86/avx512/abs.h +562 -0
  1285. casadi/include/simde/x86/avx512/add.h +641 -0
  1286. casadi/include/simde/x86/avx512/adds.h +390 -0
  1287. casadi/include/simde/x86/avx512/and.h +305 -0
  1288. casadi/include/simde/x86/avx512/andnot.h +193 -0
  1289. casadi/include/simde/x86/avx512/avg.h +258 -0
  1290. casadi/include/simde/x86/avx512/blend.h +293 -0
  1291. casadi/include/simde/x86/avx512/broadcast.h +897 -0
  1292. casadi/include/simde/x86/avx512/cast.h +324 -0
  1293. casadi/include/simde/x86/avx512/cmp.h +587 -0
  1294. casadi/include/simde/x86/avx512/cmpeq.h +179 -0
  1295. casadi/include/simde/x86/avx512/cmpge.h +104 -0
  1296. casadi/include/simde/x86/avx512/cmpgt.h +189 -0
  1297. casadi/include/simde/x86/avx512/cmple.h +103 -0
  1298. casadi/include/simde/x86/avx512/cmplt.h +123 -0
  1299. casadi/include/simde/x86/avx512/copysign.h +86 -0
  1300. casadi/include/simde/x86/avx512/cvt.h +122 -0
  1301. casadi/include/simde/x86/avx512/cvts.h +723 -0
  1302. casadi/include/simde/x86/avx512/div.h +162 -0
  1303. casadi/include/simde/x86/avx512/extract.h +198 -0
  1304. casadi/include/simde/x86/avx512/fmadd.h +136 -0
  1305. casadi/include/simde/x86/avx512/fmsub.h +108 -0
  1306. casadi/include/simde/x86/avx512/fnmadd.h +108 -0
  1307. casadi/include/simde/x86/avx512/fnmsub.h +108 -0
  1308. casadi/include/simde/x86/avx512/insert.h +193 -0
  1309. casadi/include/simde/x86/avx512/kshift.h +152 -0
  1310. casadi/include/simde/x86/avx512/load.h +67 -0
  1311. casadi/include/simde/x86/avx512/loadu.h +113 -0
  1312. casadi/include/simde/x86/avx512/lzcnt.h +209 -0
  1313. casadi/include/simde/x86/avx512/madd.h +155 -0
  1314. casadi/include/simde/x86/avx512/maddubs.h +159 -0
  1315. casadi/include/simde/x86/avx512/max.h +587 -0
  1316. casadi/include/simde/x86/avx512/min.h +587 -0
  1317. casadi/include/simde/x86/avx512/mov.h +859 -0
  1318. casadi/include/simde/x86/avx512/mov_mask.h +372 -0
  1319. casadi/include/simde/x86/avx512/movm.h +460 -0
  1320. casadi/include/simde/x86/avx512/mul.h +279 -0
  1321. casadi/include/simde/x86/avx512/mulhi.h +65 -0
  1322. casadi/include/simde/x86/avx512/mulhrs.h +65 -0
  1323. casadi/include/simde/x86/avx512/mullo.h +117 -0
  1324. casadi/include/simde/x86/avx512/negate.h +88 -0
  1325. casadi/include/simde/x86/avx512/or.h +252 -0
  1326. casadi/include/simde/x86/avx512/packs.h +122 -0
  1327. casadi/include/simde/x86/avx512/packus.h +122 -0
  1328. casadi/include/simde/x86/avx512/permutex2var.h +1645 -0
  1329. casadi/include/simde/x86/avx512/permutexvar.h +1180 -0
  1330. casadi/include/simde/x86/avx512/sad.h +77 -0
  1331. casadi/include/simde/x86/avx512/set.h +477 -0
  1332. casadi/include/simde/x86/avx512/set1.h +331 -0
  1333. casadi/include/simde/x86/avx512/set4.h +140 -0
  1334. casadi/include/simde/x86/avx512/setone.h +66 -0
  1335. casadi/include/simde/x86/avx512/setr.h +144 -0
  1336. casadi/include/simde/x86/avx512/setr4.h +140 -0
  1337. casadi/include/simde/x86/avx512/setzero.h +90 -0
  1338. casadi/include/simde/x86/avx512/shuffle.h +176 -0
  1339. casadi/include/simde/x86/avx512/sll.h +247 -0
  1340. casadi/include/simde/x86/avx512/slli.h +179 -0
  1341. casadi/include/simde/x86/avx512/sllv.h +68 -0
  1342. casadi/include/simde/x86/avx512/sqrt.h +127 -0
  1343. casadi/include/simde/x86/avx512/sra.h +81 -0
  1344. casadi/include/simde/x86/avx512/srai.h +70 -0
  1345. casadi/include/simde/x86/avx512/srav.h +67 -0
  1346. casadi/include/simde/x86/avx512/srl.h +216 -0
  1347. casadi/include/simde/x86/avx512/srli.h +180 -0
  1348. casadi/include/simde/x86/avx512/srlv.h +282 -0
  1349. casadi/include/simde/x86/avx512/store.h +93 -0
  1350. casadi/include/simde/x86/avx512/storeu.h +93 -0
  1351. casadi/include/simde/x86/avx512/sub.h +351 -0
  1352. casadi/include/simde/x86/avx512/subs.h +222 -0
  1353. casadi/include/simde/x86/avx512/test.h +193 -0
  1354. casadi/include/simde/x86/avx512/types.h +380 -0
  1355. casadi/include/simde/x86/avx512/unpackhi.h +380 -0
  1356. casadi/include/simde/x86/avx512/unpacklo.h +104 -0
  1357. casadi/include/simde/x86/avx512/xor.h +263 -0
  1358. casadi/include/simde/x86/avx512/xorsign.h +72 -0
  1359. casadi/include/simde/x86/avx512.h +108 -0
  1360. casadi/include/simde/x86/clmul.h +414 -0
  1361. casadi/include/simde/x86/fma.h +724 -0
  1362. casadi/include/simde/x86/gfni.h +802 -0
  1363. casadi/include/simde/x86/mmx.h +2399 -0
  1364. casadi/include/simde/x86/sse.h +4471 -0
  1365. casadi/include/simde/x86/sse2.h +7389 -0
  1366. casadi/include/simde/x86/sse3.h +499 -0
  1367. casadi/include/simde/x86/sse4.1.h +2216 -0
  1368. casadi/include/simde/x86/sse4.2.h +347 -0
  1369. casadi/include/simde/x86/ssse3.h +1032 -0
  1370. casadi/include/simde/x86/svml.h +12139 -0
  1371. casadi/include/simde/x86/xop.h +3644 -0
  1372. casadi/include/superscs/cones.h +185 -0
  1373. casadi/include/superscs/constants.h +144 -0
  1374. casadi/include/superscs/cs.h +109 -0
  1375. casadi/include/superscs/ctrlc.h +77 -0
  1376. casadi/include/superscs/directions.h +125 -0
  1377. casadi/include/superscs/glbopts.h +240 -0
  1378. casadi/include/superscs/linAlg.h +437 -0
  1379. casadi/include/superscs/linSys.h +205 -0
  1380. casadi/include/superscs/linsys/amatrix.h +77 -0
  1381. casadi/include/superscs/linsys/common.h +49 -0
  1382. casadi/include/superscs/normalize.h +138 -0
  1383. casadi/include/superscs/scs.h +656 -0
  1384. casadi/include/superscs/scs_blas.h +79 -0
  1385. casadi/include/superscs/scs_parser.h +187 -0
  1386. casadi/include/superscs/unit_test_util.h +210 -0
  1387. casadi/include/superscs/util.h +354 -0
  1388. casadi/include/tinyxml2.h +2380 -0
  1389. casadi/lapack.lib +0 -0
  1390. casadi/lib/cmake/tinyxml2/tinyxml2-config-version.cmake +67 -0
  1391. casadi/lib/cmake/tinyxml2/tinyxml2-config.cmake +57 -0
  1392. casadi/lib/cmake/tinyxml2/tinyxml2-shared-targets-release.cmake +19 -0
  1393. casadi/lib/cmake/tinyxml2/tinyxml2-shared-targets.cmake +95 -0
  1394. casadi/lib/libtinyxml2.dll.a +0 -0
  1395. casadi/lib/pkgconfig/tinyxml2.pc +10 -0
  1396. casadi/libCbc-3.dll +0 -0
  1397. casadi/libCbc.dll.a +0 -0
  1398. casadi/libCbc.la +1 -1
  1399. casadi/libCbcSolver-3.dll +0 -0
  1400. casadi/libCbcSolver.dll.a +0 -0
  1401. casadi/libCbcSolver.la +1 -1
  1402. casadi/libCgl-1.dll +0 -0
  1403. casadi/libCgl.dll.a +0 -0
  1404. casadi/libCgl.la +1 -1
  1405. casadi/libClp-1.dll +0 -0
  1406. casadi/libClp.dll.a +0 -0
  1407. casadi/libClp.la +1 -1
  1408. casadi/libClpSolver-1.dll +0 -0
  1409. casadi/libClpSolver.dll.a +0 -0
  1410. casadi/libClpSolver.la +1 -1
  1411. casadi/libCoinUtils-3.dll +0 -0
  1412. casadi/libCoinUtils.dll.a +0 -0
  1413. casadi/libFortranHighs.dll +0 -0
  1414. casadi/libFortranHighs.dll.a +0 -0
  1415. casadi/libOsi-1.dll +0 -0
  1416. casadi/libOsi.dll.a +0 -0
  1417. casadi/libOsiCbc-3.dll +0 -0
  1418. casadi/libOsiCbc.dll.a +0 -0
  1419. casadi/libOsiCbc.la +1 -1
  1420. casadi/libOsiClp-1.dll +0 -0
  1421. casadi/libOsiClp.dll.a +0 -0
  1422. casadi/libOsiClp.la +1 -1
  1423. casadi/libOsiCommonTests-1.dll +0 -0
  1424. casadi/libOsiCommonTests.dll.a +0 -0
  1425. casadi/libOsiHighs.dll +0 -0
  1426. casadi/libOsiHighs.dll.a +0 -0
  1427. casadi/libatomic-1.dll +0 -0
  1428. casadi/libblasfeo.dll +0 -0
  1429. casadi/libblasfeo.dll.a +0 -0
  1430. casadi/libbonmin-4.dll +0 -0
  1431. casadi/libbonmin.dll.a +0 -0
  1432. casadi/libbonmin.la +1 -1
  1433. casadi/{libopenblas.dll → libcasadi-tp-openblas.dll} +0 -0
  1434. casadi/{libopenblas.dll.a → libcasadi-tp-openblas.dll.a} +0 -0
  1435. casadi/libcasadi.dll +0 -0
  1436. casadi/libcasadi.dll.a +0 -0
  1437. casadi/libcasadi_conic_cbc.dll +0 -0
  1438. casadi/libcasadi_conic_cbc.dll.a +0 -0
  1439. casadi/libcasadi_conic_clp.dll +0 -0
  1440. casadi/libcasadi_conic_clp.dll.a +0 -0
  1441. casadi/libcasadi_conic_cplex.dll +0 -0
  1442. casadi/libcasadi_conic_cplex.dll.a +0 -0
  1443. casadi/libcasadi_conic_gurobi.dll +0 -0
  1444. casadi/libcasadi_conic_gurobi.dll.a +0 -0
  1445. casadi/libcasadi_conic_highs.dll +0 -0
  1446. casadi/libcasadi_conic_highs.dll.a +0 -0
  1447. casadi/libcasadi_conic_hpipm.dll +0 -0
  1448. casadi/libcasadi_conic_hpipm.dll.a +0 -0
  1449. casadi/libcasadi_conic_ipqp.dll +0 -0
  1450. casadi/libcasadi_conic_ipqp.dll.a +0 -0
  1451. casadi/libcasadi_conic_nlpsol.dll +0 -0
  1452. casadi/libcasadi_conic_nlpsol.dll.a +0 -0
  1453. casadi/libcasadi_conic_osqp.dll +0 -0
  1454. casadi/libcasadi_conic_osqp.dll.a +0 -0
  1455. casadi/libcasadi_conic_proxqp.dll +0 -0
  1456. casadi/libcasadi_conic_proxqp.dll.a +0 -0
  1457. casadi/libcasadi_conic_qpoases.dll +0 -0
  1458. casadi/libcasadi_conic_qpoases.dll.a +0 -0
  1459. casadi/libcasadi_conic_qrqp.dll +0 -0
  1460. casadi/libcasadi_conic_qrqp.dll.a +0 -0
  1461. casadi/libcasadi_conic_superscs.dll +0 -0
  1462. casadi/libcasadi_conic_superscs.dll.a +0 -0
  1463. casadi/libcasadi_importer_shell.dll +0 -0
  1464. casadi/libcasadi_importer_shell.dll.a +0 -0
  1465. casadi/libcasadi_integrator_collocation.dll +0 -0
  1466. casadi/libcasadi_integrator_collocation.dll.a +0 -0
  1467. casadi/libcasadi_integrator_cvodes.dll +0 -0
  1468. casadi/libcasadi_integrator_cvodes.dll.a +0 -0
  1469. casadi/libcasadi_integrator_idas.dll +0 -0
  1470. casadi/libcasadi_integrator_idas.dll.a +0 -0
  1471. casadi/libcasadi_integrator_rk.dll +0 -0
  1472. casadi/libcasadi_integrator_rk.dll.a +0 -0
  1473. casadi/libcasadi_interpolant_bspline.dll +0 -0
  1474. casadi/libcasadi_interpolant_bspline.dll.a +0 -0
  1475. casadi/libcasadi_interpolant_linear.dll +0 -0
  1476. casadi/libcasadi_interpolant_linear.dll.a +0 -0
  1477. casadi/libcasadi_linsol_csparse.dll +0 -0
  1478. casadi/libcasadi_linsol_csparse.dll.a +0 -0
  1479. casadi/libcasadi_linsol_csparsecholesky.dll +0 -0
  1480. casadi/libcasadi_linsol_csparsecholesky.dll.a +0 -0
  1481. casadi/libcasadi_linsol_lapacklu.dll +0 -0
  1482. casadi/libcasadi_linsol_lapacklu.dll.a +0 -0
  1483. casadi/libcasadi_linsol_lapackqr.dll +0 -0
  1484. casadi/libcasadi_linsol_lapackqr.dll.a +0 -0
  1485. casadi/libcasadi_linsol_ldl.dll +0 -0
  1486. casadi/libcasadi_linsol_ldl.dll.a +0 -0
  1487. casadi/libcasadi_linsol_lsqr.dll +0 -0
  1488. casadi/libcasadi_linsol_lsqr.dll.a +0 -0
  1489. casadi/libcasadi_linsol_ma27.dll +0 -0
  1490. casadi/libcasadi_linsol_ma27.dll.a +0 -0
  1491. casadi/libcasadi_linsol_mumps.dll +0 -0
  1492. casadi/libcasadi_linsol_mumps.dll.a +0 -0
  1493. casadi/libcasadi_linsol_qr.dll +0 -0
  1494. casadi/libcasadi_linsol_qr.dll.a +0 -0
  1495. casadi/libcasadi_linsol_symbolicqr.dll +0 -0
  1496. casadi/libcasadi_linsol_symbolicqr.dll.a +0 -0
  1497. casadi/libcasadi_linsol_tridiag.dll +0 -0
  1498. casadi/libcasadi_linsol_tridiag.dll.a +0 -0
  1499. casadi/libcasadi_nlpsol_ampl.dll +0 -0
  1500. casadi/libcasadi_nlpsol_ampl.dll.a +0 -0
  1501. casadi/libcasadi_nlpsol_blocksqp.dll +0 -0
  1502. casadi/libcasadi_nlpsol_blocksqp.dll.a +0 -0
  1503. casadi/libcasadi_nlpsol_bonmin.dll +0 -0
  1504. casadi/libcasadi_nlpsol_bonmin.dll.a +0 -0
  1505. casadi/libcasadi_nlpsol_feasiblesqpmethod.dll +0 -0
  1506. casadi/libcasadi_nlpsol_feasiblesqpmethod.dll.a +0 -0
  1507. casadi/libcasadi_nlpsol_ipopt.dll +0 -0
  1508. casadi/libcasadi_nlpsol_ipopt.dll.a +0 -0
  1509. casadi/libcasadi_nlpsol_knitro.dll +0 -0
  1510. casadi/libcasadi_nlpsol_knitro.dll.a +0 -0
  1511. casadi/libcasadi_nlpsol_qrsqp.dll +0 -0
  1512. casadi/libcasadi_nlpsol_qrsqp.dll.a +0 -0
  1513. casadi/libcasadi_nlpsol_scpgen.dll +0 -0
  1514. casadi/libcasadi_nlpsol_scpgen.dll.a +0 -0
  1515. casadi/libcasadi_nlpsol_snopt.dll +0 -0
  1516. casadi/libcasadi_nlpsol_snopt.dll.a +0 -0
  1517. casadi/libcasadi_nlpsol_sqpmethod.dll +0 -0
  1518. casadi/libcasadi_nlpsol_sqpmethod.dll.a +0 -0
  1519. casadi/libcasadi_nlpsol_worhp.dll +0 -0
  1520. casadi/libcasadi_nlpsol_worhp.dll.a +0 -0
  1521. casadi/libcasadi_rootfinder_fast_newton.dll +0 -0
  1522. casadi/libcasadi_rootfinder_fast_newton.dll.a +0 -0
  1523. casadi/libcasadi_rootfinder_kinsol.dll +0 -0
  1524. casadi/libcasadi_rootfinder_kinsol.dll.a +0 -0
  1525. casadi/libcasadi_rootfinder_newton.dll +0 -0
  1526. casadi/libcasadi_rootfinder_newton.dll.a +0 -0
  1527. casadi/libcasadi_rootfinder_nlpsol.dll +0 -0
  1528. casadi/libcasadi_rootfinder_nlpsol.dll.a +0 -0
  1529. casadi/libcasadi_sundials_common.dll +0 -0
  1530. casadi/libcasadi_sundials_common.dll.a +0 -0
  1531. casadi/libcasadi_xmlfile_tinyxml.dll +0 -0
  1532. casadi/libcasadi_xmlfile_tinyxml.dll.a +0 -0
  1533. casadi/libcoinmetis-2.dll +0 -0
  1534. casadi/libcoinmetis.dll.a +0 -0
  1535. casadi/libcoinmumps-3.dll +0 -0
  1536. casadi/libcoinmumps.dll.a +0 -0
  1537. casadi/libcoinmumps.la +1 -1
  1538. casadi/libcplex_adaptor.dll +0 -0
  1539. casadi/libgcc_s_seh-1.dll +0 -0
  1540. casadi/libgfortran-5.dll +0 -0
  1541. casadi/libgomp-1.dll +0 -0
  1542. casadi/libgurobi_adaptor.dll +0 -0
  1543. casadi/libhighs.dll +0 -0
  1544. casadi/libhighs.dll.a +0 -0
  1545. casadi/libhpipm.dll +0 -0
  1546. casadi/libhpipm.dll.a +0 -0
  1547. casadi/libindirect.a +0 -0
  1548. casadi/libipopt-3.dll +0 -0
  1549. casadi/libipopt.dll.a +0 -0
  1550. casadi/libipopt.la +3 -3
  1551. casadi/liblinsys.a +0 -0
  1552. casadi/libosqp.a +0 -0
  1553. casadi/libosqp.dll +0 -0
  1554. casadi/libosqp.dll.a +0 -0
  1555. casadi/libqdldl.a +0 -0
  1556. casadi/libqdldl.dll +0 -0
  1557. casadi/libqdldl.dll.a +0 -0
  1558. casadi/libquadmath-0.dll +0 -0
  1559. casadi/libsipopt-3.dll +0 -0
  1560. casadi/libsipopt.dll.a +0 -0
  1561. casadi/libsipopt.la +3 -3
  1562. casadi/libspral.a +0 -0
  1563. casadi/libssp-0.dll +0 -0
  1564. casadi/libstdc++-6.dll +0 -0
  1565. casadi/libsuperscs.a +0 -0
  1566. casadi/libtinyxml2.dll +0 -0
  1567. casadi/libwinpthread-1.dll +0 -0
  1568. casadi/osqp.lib +0 -0
  1569. casadi/pkgconfig/casadi.pc +1 -1
  1570. casadi/pkgconfig/coinmumps.pc +1 -1
  1571. casadi/pkgconfig/highs.pc +12 -0
  1572. casadi/pkgconfig/ipopt.pc +2 -2
  1573. casadi/pkgconfig/osi-highs.pc +11 -0
  1574. casadi/pkgconfig/proxsuite.pc +22 -0
  1575. casadi/spral_ssids.exe +0 -0
  1576. casadi/tools/__init__.py +2 -2
  1577. casadi/tools/bounds.py +2 -2
  1578. casadi/tools/graph/__init__.py +2 -2
  1579. casadi/tools/graph/graph.py +22 -10
  1580. casadi/tools/in_out.py +2 -2
  1581. casadi/tools/structure.py +2 -2
  1582. casadi/tools/structure3.py +2 -2
  1583. {casadi-3.5.6.pre2.dist-info → casadi-3.6.0.dist-info}/METADATA +7 -1
  1584. casadi-3.6.0.dist-info/RECORD +1609 -0
  1585. dummy.txt +1 -0
  1586. casadi/include/casadi/core/runtime/casadi_minmax.hpp +0 -20
  1587. casadi/include/casadi/core/variable.hpp +0 -147
  1588. casadi-3.5.6.pre2.dist-info/RECORD +0 -278
  1589. {casadi-3.5.6.pre2.dist-info → casadi-3.6.0.dist-info}/WHEEL +0 -0
@@ -1,29 +1,37 @@
1
- // NOLINT(legal/copyright)
1
+ //
2
+ // MIT No Attribution
3
+ //
4
+ // Copyright (C) 2010-2023 Joel Andersson, Joris Gillis, Moritz Diehl, KU Leuven.
5
+ //
6
+ // Permission is hereby granted, free of charge, to any person obtaining a copy of this
7
+ // software and associated documentation files (the "Software"), to deal in the Software
8
+ // without restriction, including without limitation the rights to use, copy, modify,
9
+ // merge, publish, distribute, sublicense, and/or sell copies of the Software, and to
10
+ // permit persons to whom the Software is furnished to do so.
11
+ //
12
+ // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
13
+ // INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
14
+ // PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
15
+ // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
16
+ // OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
17
+ // SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
18
+ //
19
+
2
20
 
3
21
  // C-REPLACE "fmin" "casadi_fmin"
4
22
  // C-REPLACE "fmax" "casadi_fmax"
5
23
  // C-REPLACE "std::numeric_limits<T1>::min()" "casadi_real_min"
6
24
  // C-REPLACE "std::numeric_limits<T1>::infinity()" "casadi_inf"
7
25
  // C-REPLACE "static_cast<int>" "(int) "
26
+
8
27
  // SYMBOL "qp_prob"
9
28
  template<typename T1>
10
29
  struct casadi_qp_prob {
11
30
  // Sparsity patterns
12
- const casadi_int *sp_a, *sp_h, *sp_at, *sp_kkt;
13
- // Symbolic QR factorization
14
- const casadi_int *prinv, *pc, *sp_v, *sp_r;
31
+ const casadi_int *sp_a, *sp_h;
15
32
  // Dimensions
16
33
  casadi_int nx, na, nz;
17
- // Smallest nonzero number
18
- T1 dmin;
19
- // Infinity
20
- T1 inf;
21
- // Smallest multiplier treated as inactive for the initial active set
22
- T1 min_lam;
23
- // Maximum number of iterations
24
- casadi_int max_iter;
25
- // Primal and dual error tolerance
26
- T1 constr_viol_tol, dual_inf_tol;
34
+ casadi_int nnz_a, nnz_h;
27
35
  };
28
36
  // C-REPLACE "casadi_qp_prob<T1>" "struct casadi_qp_prob"
29
37
 
@@ -32,1182 +40,47 @@ template<typename T1>
32
40
  void casadi_qp_setup(casadi_qp_prob<T1>* p) {
33
41
  p->na = p->sp_a[0];
34
42
  p->nx = p->sp_a[1];
35
- p->nz = p->nx + p->na;
36
- p->dmin = std::numeric_limits<T1>::min();
37
- p->inf = std::numeric_limits<T1>::infinity();
38
- p->min_lam = 0;
39
- p->max_iter = 1000;
40
- p->constr_viol_tol = 1e-8;
41
- p->dual_inf_tol = 1e-8;
42
- }
43
-
44
- // SYMBOL "qp_work"
45
- template<typename T1>
46
- void casadi_qp_work(const casadi_qp_prob<T1>* p, casadi_int* sz_iw, casadi_int* sz_w) {
47
- // Local variables
48
- casadi_int nnz_a, nnz_kkt, nnz_v, nnz_r;
49
- // Get matrix number of nonzeros
50
- nnz_a = p->sp_a[2+p->sp_a[1]];
51
- nnz_kkt = p->sp_kkt[2+p->sp_kkt[1]];
52
- nnz_v = p->sp_v[2+p->sp_v[1]];
53
- nnz_r = p->sp_r[2+p->sp_r[1]];
54
- // Reset sz_w, sz_iw
55
- *sz_w = *sz_iw = 0;
56
- // Temporary work vectors
57
- *sz_w = casadi_max(*sz_w, p->nz); // casadi_project, tau memory
58
- *sz_iw = casadi_max(*sz_iw, p->nz); // casadi_trans, tau type, allzero
59
- *sz_w = casadi_max(*sz_w, 2*p->nz); // casadi_qr
60
- // Persistent work vectors
61
- *sz_w += nnz_kkt; // kkt
62
- *sz_w += p->nz; // z=[xk,gk]
63
- *sz_w += p->nz; // lbz
64
- *sz_w += p->nz; // ubz
65
- *sz_w += p->nz; // lam
66
- *sz_w += nnz_a; // trans(a)
67
- *sz_w += p->nz; // dz
68
- *sz_w += p->nz; // dlam
69
- *sz_w += p->nx; // infeas
70
- *sz_w += p->nx; // tinfeas
71
- *sz_w += p->nz; // sens
72
- *sz_iw += p->nz; // neverzero
73
- *sz_iw += p->nz; // neverupper
74
- *sz_iw += p->nz; // neverlower
75
- *sz_iw += p->nz; // lincomb
76
- *sz_w += casadi_max(nnz_v+nnz_r, nnz_kkt); // [v,r] or trans(kkt)
77
- *sz_w += p->nz; // beta
43
+ p->nz = p->na+p->nx;
44
+ p->nnz_a = p->sp_a[2+p->sp_a[1]];
45
+ p->nnz_h = p->sp_h[2+p->sp_h[1]];
78
46
  }
79
47
 
80
- // SYMBOL "qp_flag_t"
81
- typedef enum {
82
- QP_SUCCESS,
83
- QP_MAX_ITER,
84
- QP_NO_SEARCH_DIR,
85
- QP_PRINTING_ERROR
86
- } casadi_qp_flag_t;
48
+ // C-REPLACE "UnifiedReturnStatus" "int"
49
+ // C-REPLACE "bool" "int"
87
50
 
88
51
  // SYMBOL "qp_data"
89
52
  template<typename T1>
90
53
  struct casadi_qp_data {
91
54
  // Problem structure
92
55
  const casadi_qp_prob<T1>* prob;
93
- // Solver status
94
- casadi_qp_flag_t status;
95
- // Cost
96
- T1 f;
97
- // QP data
98
- const T1 *nz_a, *nz_h, *g;
99
- // Vectors
100
- T1 *z, *lbz, *ubz, *infeas, *tinfeas, *sens, *lam, *w, *dz, *dlam;
101
- casadi_int *iw, *neverzero, *neverlower, *neverupper, *lincomb;
102
- // Numeric QR factorization
103
- T1 *nz_at, *nz_kkt, *beta, *nz_v, *nz_r;
104
- // Message buffer
105
- const char *msg;
106
- // Message index
107
- casadi_int msg_ind;
108
- // Stepsize
109
- T1 tau;
110
- // Singularity
111
- casadi_int sing;
112
- // Do we already have a search direction?
113
- int has_search_dir;
114
- // Smallest diagonal value for the QR factorization
115
- T1 mina;
116
- casadi_int imina;
117
- // Primal and dual error, corresponding index
118
- T1 pr, du, epr, edu;
119
- casadi_int ipr, idu;
120
- // Pending active-set change
121
- casadi_int index, sign;
122
- // Feasibility restoration active-set change
123
- casadi_int r_index, r_sign;
124
- // Iteration
125
- casadi_int iter;
126
- };
127
- // C-REPLACE "casadi_qp_data<T1>" "struct casadi_qp_data"
128
-
129
- // SYMBOL "qp_init"
130
- template<typename T1>
131
- void casadi_qp_init(casadi_qp_data<T1>* d, casadi_int** iw, T1** w) {
132
- // Local variables
133
- casadi_int nnz_a, nnz_kkt, nnz_v, nnz_r;
134
- const casadi_qp_prob<T1>* p = d->prob;
135
- // Get matrix number of nonzeros
136
- nnz_a = p->sp_a[2+p->sp_a[1]];
137
- nnz_kkt = p->sp_kkt[2+p->sp_kkt[1]];
138
- nnz_v = p->sp_v[2+p->sp_v[1]];
139
- nnz_r = p->sp_r[2+p->sp_r[1]];
140
- d->nz_kkt = *w; *w += nnz_kkt;
141
- d->z = *w; *w += p->nz;
142
- d->lbz = *w; *w += p->nz;
143
- d->ubz = *w; *w += p->nz;
144
- d->lam = *w; *w += p->nz;
145
- d->dz = *w; *w += p->nz;
146
- d->dlam = *w; *w += p->nz;
147
- d->nz_v = *w; *w += casadi_max(nnz_v+nnz_r, nnz_kkt);
148
- d->nz_r = d->nz_v + nnz_v;
149
- d->beta = *w; *w += p->nz;
150
- d->nz_at = *w; *w += nnz_a;
151
- d->infeas = *w; *w += p->nx;
152
- d->tinfeas = *w; *w += p->nx;
153
- d->sens = *w; *w += p->nz;
154
- d->neverzero = *iw; *iw += p->nz;
155
- d->neverupper = *iw; *iw += p->nz;
156
- d->neverlower = *iw; *iw += p->nz;
157
- d->lincomb = *iw; *iw += p->nz;
158
- d->w = *w;
159
- d->iw = *iw;
160
- }
161
-
162
- // SYMBOL "qp_reset"
163
- template<typename T1>
164
- int casadi_qp_reset(casadi_qp_data<T1>* d) {
165
- // Local variables
166
- casadi_int i;
167
- const casadi_qp_prob<T1>* p = d->prob;
168
- // Reset variables corresponding to previous iteration
169
- d->msg = 0;
170
- d->tau = 0.;
171
- d->sing = 0;
172
- // Correct lam if needed, determine permitted signs
173
- for (i=0; i<p->nz; ++i) {
174
- // Permitted signs for lam
175
- d->neverzero[i] = d->lbz[i] == d->ubz[i];
176
- d->neverupper[i] = d->ubz[i] == p->inf;
177
- d->neverlower[i] = d->lbz[i] == -p->inf;
178
- if (d->neverzero[i] && d->neverupper[i] && d->neverlower[i]) return 1;
179
- // Small enough lambdas are treated as inactive
180
- if (!d->neverzero[i] && fabs(d->lam[i]) < p->min_lam) d->lam[i] = 0.;
181
- // Prevent illegal active sets
182
- if (d->neverzero[i] && d->lam[i] == 0.) {
183
- d->lam[i] = d->neverupper[i]
184
- || d->z[i]-d->lbz[i] <= d->ubz[i]-d->z[i] ? -p->dmin : p->dmin;
185
- } else if (d->neverupper[i] && d->lam[i]>0.) {
186
- d->lam[i] = d->neverzero[i] ? -p->dmin : 0.;
187
- } else if (d->neverlower[i] && d->lam[i]<0.) {
188
- d->lam[i] = d->neverzero[i] ? p->dmin : 0.;
189
- }
190
- }
191
- // Transpose A
192
- casadi_trans(d->nz_a, p->sp_a, d->nz_at, p->sp_at, d->iw);
193
- // No pending active-set change
194
- d->index = -2;
195
- d->sign = 0;
196
- // No restoration index
197
- d->r_index = -2;
198
- d->r_sign = 0;
199
- // Reset iteration counter
200
- d->iter = 0;
201
- return 0;
202
- }
203
-
204
- // SYMBOL "qp_pr"
205
- template<typename T1>
206
- void casadi_qp_pr(casadi_qp_data<T1>* d) {
207
- // Calculate largest constraint violation
208
- casadi_int i;
209
- const casadi_qp_prob<T1>* p = d->prob;
210
- d->pr = 0;
211
- d->ipr = -1;
212
- for (i=0; i<p->nz; ++i) {
213
- if (d->z[i] > d->ubz[i]+d->pr) {
214
- d->pr = d->z[i]-d->ubz[i];
215
- d->ipr = i;
216
- } else if (d->z[i] < d->lbz[i]-d->pr) {
217
- d->pr = d->lbz[i]-d->z[i];
218
- d->ipr = i;
219
- }
220
- }
221
- }
222
-
223
- // SYMBOL "qp_du"
224
- template<typename T1>
225
- void casadi_qp_du(casadi_qp_data<T1>* d) {
226
- // Calculate largest constraint violation
227
- casadi_int i;
228
- const casadi_qp_prob<T1>* p = d->prob;
229
- d->du = 0;
230
- d->idu = -1;
231
- for (i=0; i<p->nx; ++i) {
232
- if (d->infeas[i] > d->du) {
233
- d->du = d->infeas[i];
234
- d->idu = i;
235
- } else if (d->infeas[i] < -d->du) {
236
- d->du = -d->infeas[i];
237
- d->idu = i;
238
- }
239
- }
240
- }
241
-
242
- // SYMBOL "qp_du_check"
243
- template<typename T1>
244
- int casadi_qp_du_check(casadi_qp_data<T1>* d, casadi_int i) {
245
- // Local variables
246
- casadi_int k;
247
- T1 new_du;
248
- const casadi_int *at_colind, *at_row;
249
- const casadi_qp_prob<T1>* p = d->prob;
250
- // AT sparsity
251
- at_colind = p->sp_at + 2;
252
- at_row = at_colind + p->na + 1;
253
- // Maximum infeasibility from setting from setting lam[i]=0
254
- if (i<p->nx) {
255
- new_du = fabs(d->infeas[i]-d->lam[i]);
256
- } else {
257
- new_du = 0.;
258
- for (k=at_colind[i-p->nx]; k<at_colind[i-p->nx+1]; ++k) {
259
- new_du = fmax(new_du, fabs(d->infeas[at_row[k]]-d->nz_at[k]*d->lam[i]));
260
- }
261
- }
262
- return new_du <= d->du;
263
- }
264
-
265
- // SYMBOL "qp_du_index"
266
- template<typename T1>
267
- void casadi_qp_du_index(casadi_qp_data<T1>* d) {
268
- // Try to improve dual feasibility by removing a constraint
269
- // Local variables
270
- casadi_int i, s;
271
- T1 best_sens;
272
- const casadi_qp_prob<T1>* p = d->prob;
273
- // Find the best lam[i] to make zero
274
- d->index = -1;
275
- best_sens = -1;
276
- for (i = 0; i < p->nz; ++i) {
277
- // Skip if no dual infeasibility sensitivity
278
- if (d->sens[i] == 0.) continue;
279
- // Is the constraint enforced?
280
- if (d->lam[i] == 0) {
281
- // We're enforcing constraints
282
- s = d->sens[i] > 0 ? 1 : -1;
283
- // Make sure that enforcing the constraint is possible
284
- if (s > 0 ? d->neverupper[i] : d->neverlower[i]) continue;
285
- } else {
286
- // We're removing constraints
287
- s = 0;
288
- // Make sure that it's a constraint that can be removed
289
- if (d->neverzero[i]) continue;
290
- // If variable influences du, make sure sign is right
291
- if (d->lam[i] > 0. ? d->sens[i] > 0. : d->sens[i] < 0.) continue;
292
- // Skip if maximum infeasibility increases
293
- if (!casadi_qp_du_check(d, i)) continue;
294
- }
295
- // Check if best so far
296
- if (fabs(d->sens[i]) > best_sens) {
297
- best_sens = fabs(d->sens[i]);
298
- d->index = i;
299
- d->sign = s;
300
- }
301
- }
302
- // Accept, if any
303
- if (d->index >= 0) {
304
- if (d->sign > 0) {
305
- d->msg = "Enforced ubz to reduce |du|";
306
- } else if (d->sign < 0) {
307
- d->msg = "Enforced lbz to reduce |du|";
308
- } else if (d->lam[d->index] > 0) {
309
- d->msg = "Dropped ubz to reduce |du|";
310
- } else {
311
- d->msg = "Dropped lbz to reduce |du|";
312
- }
313
- d->msg_ind = d->index;
314
- }
315
- }
316
-
317
- // SYMBOL "qp_pr_index"
318
- template<typename T1>
319
- void casadi_qp_pr_index(casadi_qp_data<T1>* d) {
320
- // Try to improve primal feasibility by adding a constraint
321
- if (d->lam[d->ipr] == 0.) {
322
- // Add the most violating constraint
323
- if (d->z[d->ipr] < d->lbz[d->ipr]) {
324
- d->sign = -1;
325
- d->msg = "Added lbz to reduce |pr|";
326
- } else {
327
- d->sign = 1;
328
- d->msg = "Added ubz to reduce |pr|";
329
- }
330
- d->msg_ind = d->ipr;
331
- d->index = d->ipr;
332
- } else {
333
- // No improvement possible
334
- d->index = -1;
335
- }
336
- }
337
-
338
- // SYMBOL "qp_kkt"
339
- template<typename T1>
340
- void casadi_qp_kkt(casadi_qp_data<T1>* d) {
341
- // Local variables
342
- casadi_int i, k;
343
- const casadi_int *h_colind, *h_row, *a_colind, *a_row, *at_colind, *at_row,
344
- *kkt_colind, *kkt_row;
345
- const casadi_qp_prob<T1>* p = d->prob;
346
- // Extract sparsities
347
- a_row = (a_colind = p->sp_a+2) + p->nx + 1;
348
- at_row = (at_colind = p->sp_at+2) + p->na + 1;
349
- h_row = (h_colind = p->sp_h+2) + p->nx + 1;
350
- kkt_row = (kkt_colind = p->sp_kkt+2) + p->nz + 1;
351
- // Reset w to zero
352
- casadi_clear(d->w, p->nz);
353
- // Loop over rows of the (transposed) KKT
354
- for (i=0; i<p->nz; ++i) {
355
- // Copy row of KKT to w
356
- if (i<p->nx) {
357
- if (d->lam[i]==0) {
358
- for (k=h_colind[i]; k<h_colind[i+1]; ++k) d->w[h_row[k]] = d->nz_h[k];
359
- for (k=a_colind[i]; k<a_colind[i+1]; ++k) d->w[p->nx+a_row[k]] = d->nz_a[k];
360
- } else {
361
- d->w[i] = 1.;
362
- }
363
- } else {
364
- if (d->lam[i]==0) {
365
- d->w[i] = -1.;
366
- } else {
367
- for (k=at_colind[i-p->nx]; k<at_colind[i-p->nx+1]; ++k) {
368
- d->w[at_row[k]] = d->nz_at[k];
369
- }
370
- }
371
- }
372
- // Copy row to KKT, zero out w
373
- for (k=kkt_colind[i]; k<kkt_colind[i+1]; ++k) {
374
- d->nz_kkt[k] = d->w[kkt_row[k]];
375
- d->w[kkt_row[k]] = 0;
376
- }
377
- }
378
- }
379
-
380
- // SYMBOL "qp_kkt_vector"
381
- template<typename T1>
382
- void casadi_qp_kkt_vector(casadi_qp_data<T1>* d, T1* kkt_i, casadi_int i) {
383
- // Local variables
384
- casadi_int k;
385
- const casadi_int *h_colind, *h_row, *a_colind, *a_row, *at_colind, *at_row;
386
- const casadi_qp_prob<T1>* p = d->prob;
387
- // Extract sparsities
388
- a_row = (a_colind = p->sp_a+2) + p->nx + 1;
389
- at_row = (at_colind = p->sp_at+2) + p->na + 1;
390
- h_row = (h_colind = p->sp_h+2) + p->nx + 1;
391
- // Reset kkt_i to zero
392
- casadi_clear(kkt_i, p->nz);
393
- // Copy sparse entries
394
- if (i<p->nx) {
395
- for (k=h_colind[i]; k<h_colind[i+1]; ++k) kkt_i[h_row[k]] = d->nz_h[k];
396
- for (k=a_colind[i]; k<a_colind[i+1]; ++k) kkt_i[p->nx+a_row[k]] = d->nz_a[k];
397
- } else {
398
- for (k=at_colind[i-p->nx]; k<at_colind[i-p->nx+1]; ++k) {
399
- kkt_i[at_row[k]] = -d->nz_at[k];
400
- }
401
- }
402
- // Add diagonal entry
403
- kkt_i[i] -= 1.;
404
- }
405
-
406
- // SYMBOL "qp_kkt_dot"
407
- template<typename T1>
408
- T1 casadi_qp_kkt_dot(casadi_qp_data<T1>* d, const T1* v, casadi_int i) {
409
- // Local variables
410
- casadi_int k;
411
- const casadi_int *h_colind, *h_row, *a_colind, *a_row, *at_colind, *at_row;
412
- T1 r;
413
- const casadi_qp_prob<T1>* p = d->prob;
414
- // Extract sparsities
415
- a_row = (a_colind = p->sp_a + 2) + p->nx + 1;
416
- at_row = (at_colind = p->sp_at + 2) + p->na + 1;
417
- h_row = (h_colind = p->sp_h + 2) + p->nx + 1;
418
- // Scalar product with the diagonal
419
- r = v[i];
420
- // Scalar product with the sparse entries
421
- if (i < p->nx) {
422
- for (k=h_colind[i]; k<h_colind[i+1]; ++k) r -= v[h_row[k]] * d->nz_h[k];
423
- for (k=a_colind[i]; k<a_colind[i+1]; ++k) r -= v[p->nx+a_row[k]] * d->nz_a[k];
424
- } else {
425
- for (k=at_colind[i-p->nx]; k<at_colind[i-p->nx+1]; ++k) {
426
- r += v[at_row[k]] * d->nz_at[k];
427
- }
428
- }
429
- return r;
430
- }
431
-
432
- // SYMBOL "qp_kkt_residual"
433
- template<typename T1>
434
- void casadi_qp_kkt_residual(casadi_qp_data<T1>* d, T1* r) {
435
- casadi_int i;
436
- const casadi_qp_prob<T1>* p = d->prob;
437
- for (i=0; i<p->nz; ++i) {
438
- if (d->lam[i]>0.) {
439
- r[i] = d->ubz[i]-d->z[i];
440
- } else if (d->lam[i]<0.) {
441
- r[i] = d->lbz[i]-d->z[i];
442
- } else if (i<p->nx) {
443
- r[i] = d->lam[i]-d->infeas[i];
444
- } else {
445
- r[i] = d->lam[i];
446
- }
447
- }
448
- }
449
-
450
- // SYMBOL "qp_zero_blocking"
451
- template<typename T1>
452
- int casadi_qp_zero_blocking(casadi_qp_data<T1>* d) {
453
- // Local variables
454
- casadi_int i;
455
- T1 dz_max = 0;
456
- const casadi_qp_prob<T1>* p = d->prob;
457
- // Look for violated constraints that are not improving
458
- for (i = 0; i < p->nz; ++i) {
459
- if (d->dz[i] < -dz_max && d->lbz[i] - d->z[i] >= d->epr) {
460
- dz_max = -d->dz[i];
461
- d->index = i;
462
- d->sign = -1;
463
- d->msg = "lbz violated with zero step";
464
- d->msg_ind = d->index;
465
- } else if (d->dz[i] > dz_max && d->z[i] - d->ubz[i] >= d->epr) {
466
- dz_max = d->dz[i];
467
- d->index = i;
468
- d->sign = 1;
469
- d->msg = "ubz violated with zero step";
470
- d->msg_ind = d->index;
471
- }
472
- }
473
- return dz_max > 0;
474
- }
475
-
476
- // SYMBOL "qp_primal_blocking"
477
- template<typename T1>
478
- void casadi_qp_primal_blocking(casadi_qp_data<T1>* d) {
479
- // Local variables
480
- casadi_int i;
481
- T1 trial_z;
482
- const casadi_qp_prob<T1>* p = d->prob;
483
- // Check if violation with tau=0 and not improving
484
- if (casadi_qp_zero_blocking(d)) {
485
- d->tau = 0.;
486
- return;
487
- }
488
- // Loop over all primal variables
489
- for (i = 0; i < p->nz; ++i) {
490
- if (d->dz[i] == 0.) continue; // Skip zero steps
491
- // Trial primal step
492
- trial_z = d->z[i] + d->tau * d->dz[i];
493
- if (d->dz[i] < 0 && trial_z < d->lbz[i] - d->epr) {
494
- // Trial would increase maximum infeasibility
495
- d->tau = (d->lbz[i] - d->epr - d->z[i]) / d->dz[i];
496
- d->index = d->lam[i] < 0. ? -1 : i;
497
- d->sign = -1;
498
- d->msg = "Enforcing lbz";
499
- d->msg_ind = i;
500
- } else if (d->dz[i] > 0 && trial_z > d->ubz[i] + d->epr) {
501
- // Trial would increase maximum infeasibility
502
- d->tau = (d->ubz[i] + d->epr - d->z[i]) / d->dz[i];
503
- d->index = d->lam[i] > 0. ? -1 : i;
504
- d->sign = 1;
505
- d->msg = "Enforcing ubz";
506
- d->msg_ind = i;
507
- }
508
- if (d->tau <= 0) return;
509
- }
510
- }
511
-
512
- // SYMBOL "qp_dual_breakpoints"
513
- template<typename T1>
514
- casadi_int casadi_qp_dual_breakpoints(casadi_qp_data<T1>* d, T1* tau_list,
515
- casadi_int* ind_list, T1 tau) {
516
- // Local variables
517
- casadi_int i, n_tau, loc, next_ind, tmp_ind, j;
518
- T1 trial_lam, new_tau, next_tau, tmp_tau;
519
- const casadi_qp_prob<T1>* p = d->prob;
520
- // Dual feasibility is piecewise linear. Start with one interval [0,tau]:
521
- tau_list[0] = tau;
522
- ind_list[0] = -1; // no associated index
523
- n_tau = 1;
524
- // Find the taus corresponding to lam crossing zero and insert into list
525
- for (i=0; i<p->nz; ++i) {
526
- if (d->dlam[i]==0.) continue; // Skip zero steps
527
- if (d->lam[i]==0.) continue; // Skip inactive constraints
528
- // Trial dual step
529
- trial_lam = d->lam[i] + tau*d->dlam[i];
530
- // Skip if no sign change
531
- if (d->lam[i]>0 ? trial_lam>=0 : trial_lam<=0) continue;
532
- // Location of the sign change
533
- new_tau = -d->lam[i]/d->dlam[i];
534
- // Where to insert the w[i]
535
- for (loc=0; loc<n_tau-1; ++loc) {
536
- if (new_tau<tau_list[loc]) break;
537
- }
538
- // Insert element
539
- n_tau++;
540
- next_tau=new_tau;
541
- next_ind=i;
542
- for (j=loc; j<n_tau; ++j) {
543
- tmp_tau = tau_list[j];
544
- tau_list[j] = next_tau;
545
- next_tau = tmp_tau;
546
- tmp_ind = ind_list[j];
547
- ind_list[j] = next_ind;
548
- next_ind = tmp_ind;
549
- }
550
- }
551
- return n_tau;
552
- }
553
-
554
- // SYMBOL "qp_dual_blocking"
555
- template<typename T1>
556
- casadi_int casadi_qp_dual_blocking(casadi_qp_data<T1>* d) {
557
- // Local variables
558
- casadi_int i, n_tau, j, k, du_index;
559
- T1 tau_k, dtau, new_infeas, tau1, infeas, tinfeas;
560
- const casadi_int *at_colind, *at_row;
561
- const casadi_qp_prob<T1>* p = d->prob;
562
- // Extract sparsities
563
- at_row = (at_colind = p->sp_at+2) + p->na + 1;
564
- // Dual feasibility is piecewise linear in tau. Get the intervals:
565
- n_tau = casadi_qp_dual_breakpoints(d, d->w, d->iw, d->tau);
566
- // No dual blocking yet
567
- du_index = -1;
568
- // How long step can we take without exceeding e?
569
- tau_k = 0.;
570
- for (j=0; j<n_tau; ++j) {
571
- // Distance to the next tau (may be zero)
572
- dtau = d->w[j] - tau_k;
573
- // Check if maximum dual infeasibilty gets exceeded
574
- for (k=0; k<p->nx; ++k) {
575
- // Get infeasibility and infeasibility tangent
576
- infeas = d->infeas[k];
577
- tinfeas = d->tinfeas[k];
578
- // Make sure tinfeas>0
579
- if (fabs(tinfeas)<1e-14) {
580
- // Skip
581
- continue;
582
- } else if (tinfeas<0) {
583
- // Switch signs
584
- infeas *= -1;
585
- tinfeas *= -1;
586
- }
587
- // Tentative new infeasibility
588
- new_infeas = infeas + dtau*tinfeas;
589
- // Does infeasibility get exceeded
590
- if (new_infeas > d->edu) {
591
- // Sign change and exceeded
592
- tau1 = fmax(tau_k, tau_k + (d->edu - infeas)/tinfeas);
593
- if (tau1 < d->tau) {
594
- // Enforce dual blocking constraint
595
- d->tau = tau1;
596
- du_index = k;
597
- }
598
- }
599
- }
600
- // Update infeasibility
601
- casadi_axpy(p->nx, fmin(d->tau - tau_k, dtau), d->tinfeas, d->infeas);
602
- // Stop here if dual blocking constraint
603
- if (du_index>=0) return du_index;
604
- // Continue to the next tau
605
- tau_k = d->w[j];
606
- // Get component, break if last
607
- i = d->iw[j];
608
- if (i<0) break;
609
- // Update sign or tinfeas
610
- if (!d->neverzero[i]) {
611
- // lam becomes zero, update the infeasibility tangent
612
- if (i<p->nx) {
613
- // Set a lam_x to zero
614
- d->tinfeas[i] -= d->dlam[i];
615
- } else {
616
- // Set a lam_a to zero
617
- for (k=at_colind[i-p->nx]; k<at_colind[i-p->nx+1]; ++k) {
618
- d->tinfeas[at_row[k]] -= d->nz_at[k]*d->dlam[i];
619
- }
620
- }
621
- }
622
- }
623
- return du_index;
624
- }
625
56
 
626
- // SYMBOL "qp_take_step"
627
- template<typename T1>
628
- void casadi_qp_take_step(casadi_qp_data<T1>* d) {
629
- // Local variables
630
- casadi_int i;
631
- const casadi_qp_prob<T1>* p = d->prob;
632
- // Get current sign
633
- for (i=0; i<p->nz; ++i) d->iw[i] = d->lam[i]>0. ? 1 : d->lam[i]<0 ? -1 : 0;
634
- // Take primal-dual step
635
- casadi_axpy(p->nz, d->tau, d->dz, d->z);
636
- casadi_axpy(p->nz, d->tau, d->dlam, d->lam);
637
- // Update sign
638
- for (i=0; i<p->nz; ++i) {
639
- // Allow sign changes for certain components
640
- if (d->neverzero[i] && (d->iw[i]<0 ? d->lam[i]>0 : d->lam[i]<0)) {
641
- d->iw[i]=-d->iw[i];
642
- }
643
- // Ensure correct sign
644
- switch (d->iw[i]) {
645
- case -1: d->lam[i] = fmin(d->lam[i], -p->dmin); break;
646
- case 1: d->lam[i] = fmax(d->lam[i], p->dmin); break;
647
- case 0: d->lam[i] = 0.; break;
648
- }
649
- }
650
- }
651
-
652
- // SYMBOL "qp_flip_check"
653
- template<typename T1>
654
- int casadi_qp_flip_check(casadi_qp_data<T1>* d) {
655
- const casadi_qp_prob<T1>* p = d->prob;
656
- // Calculate the difference between unenforced and enforced column index
657
- casadi_qp_kkt_vector(d, d->dlam, d->index);
658
- // Calculate the difference between old and new column index
659
- if (d->sign == 0) casadi_scal(p->nz, -1., d->dlam);
660
- // Try to find a linear combination of the new columns
661
- casadi_qr_solve(d->dlam, 1, 0, p->sp_v, d->nz_v, p->sp_r, d->nz_r, d->beta,
662
- p->prinv, p->pc, d->w);
663
- // If dlam[index]!=1, new columns must be linearly independent
664
- if (fabs(d->dlam[d->index]-1.) >= 1e-12) return 0;
665
- // Next, find a linear combination of the new rows
666
- casadi_clear(d->dz, p->nz);
667
- d->dz[d->index] = 1;
668
- casadi_qr_solve(d->dz, 1, 1, p->sp_v, d->nz_v, p->sp_r, d->nz_r, d->beta,
669
- p->prinv, p->pc, d->w);
670
- // Normalize dlam, dz
671
- casadi_scal(p->nz, 1./sqrt(casadi_dot(p->nz, d->dlam, d->dlam)), d->dlam);
672
- casadi_scal(p->nz, 1./sqrt(casadi_dot(p->nz, d->dz, d->dz)), d->dz);
673
- // KKT system will be singular
674
- return 1;
675
- }
676
-
677
- // SYMBOL "qp_factorize"
678
- template<typename T1>
679
- void casadi_qp_factorize(casadi_qp_data<T1>* d) {
680
- const casadi_qp_prob<T1>* p = d->prob;
681
- // Do we already have a search direction due to lost singularity?
682
- if (d->has_search_dir) {
683
- d->sing = 1;
684
- return;
685
- }
686
- // Construct the KKT matrix
687
- casadi_qp_kkt(d);
688
- // QR factorization
689
- casadi_qr(p->sp_kkt, d->nz_kkt, d->w, p->sp_v, d->nz_v, p->sp_r,
690
- d->nz_r, d->beta, p->prinv, p->pc);
691
- // Check singularity
692
- d->sing = casadi_qr_singular(&d->mina, &d->imina, d->nz_r, p->sp_r, p->pc, 1e-12);
693
- }
57
+ UnifiedReturnStatus unified_return_status;
58
+ bool success;
694
59
 
695
- // SYMBOL "qp_expand_step"
696
- template<typename T1>
697
- void casadi_qp_expand_step(casadi_qp_data<T1>* d) {
698
- // Local variables
699
- casadi_int i;
700
- const casadi_qp_prob<T1>* p = d->prob;
701
- // Calculate change in Lagrangian gradient
702
- casadi_clear(d->dlam, p->nx);
703
- casadi_mv(d->nz_h, p->sp_h, d->dz, d->dlam, 0); // gradient of the objective
704
- casadi_mv(d->nz_a, p->sp_a, d->dz + p->nx, d->dlam, 1); // gradient of the Lagrangian
705
- // Step in lam[:nx]
706
- casadi_scal(p->nx, -1., d->dlam);
707
- // For inactive constraints, lam(x) step is zero
708
- for (i = 0; i < p->nx; ++i) if (d->lam[i] == 0.) d->dlam[i] = 0.;
709
- // Step in lam[nx:]
710
- casadi_copy(d->dz+p->nx, p->na, d->dlam + p->nx);
711
- // Step in z[nx:]
712
- casadi_clear(d->dz + p->nx, p->na);
713
- casadi_mv(d->nz_a, p->sp_a, d->dz, d->dz + p->nx, 0);
714
- // Avoid steps that are nonzero due to numerics
715
- for (i = 0; i < p->nz; ++i) if (fabs(d->dz[i]) < 1e-14) d->dz[i] = 0.;
716
- // Tangent of the dual infeasibility at tau=0
717
- casadi_clear(d->tinfeas, p->nx);
718
- casadi_mv(d->nz_h, p->sp_h, d->dz, d->tinfeas, 0);
719
- casadi_mv(d->nz_a, p->sp_a, d->dlam + p->nx, d->tinfeas, 1);
720
- casadi_axpy(p->nx, 1., d->dlam, d->tinfeas);
721
- }
60
+ // Number of iterations performed
61
+ casadi_int iter_count;
722
62
 
723
- // SYMBOL "casadi_qp_pr_direction"
724
- template<typename T1>
725
- int casadi_qp_pr_direction(casadi_qp_data<T1>* d) {
726
- casadi_int i;
727
- const casadi_qp_prob<T1>* p = d->prob;
728
- for (i=0; i<p->nz; ++i) {
729
- if (d->lbz[i] - d->z[i] >= d->epr) {
730
- // Prevent further violation of lower bound
731
- if (d->dz[i] < 0 || d->dlam[i] > 0) return 1;
732
- } else if (d->z[i] - d->ubz[i] >= d->epr) {
733
- // Prevent further violation of upper bound
734
- if (d->dz[i] > 0 || d->dlam[i] < 0) return 1;
735
- }
736
- }
737
- return 0;
738
- }
63
+ // QP data, pointers to arg (no allocations needed)
64
+ const T1 *a, *h, *g, *lbx, *ubx, *lba, *uba, *x0, *lam_x0, *lam_a0;
65
+ // QP results, pointers to res (no allocations needed)
66
+ T1 *f, *x, *lam_x, *lam_a;
739
67
 
740
- // SYMBOL "casadi_qp_du_direction"
741
- template<typename T1>
742
- int casadi_qp_du_direction(casadi_qp_data<T1>* d) {
743
- casadi_int i;
744
- const casadi_qp_prob<T1>* p = d->prob;
745
- for (i=0; i<p->nx; ++i) {
746
- // Prevent further increase in dual infeasibility
747
- if (d->infeas[i] <= -d->edu && d->tinfeas[i] < -1e-12) {
748
- return 1;
749
- } else if (d->infeas[i] >= d->edu && d->tinfeas[i] > 1e-12) {
750
- return 1;
751
- }
752
- }
753
- return 0;
754
- }
755
-
756
- // SYMBOL "qp_enforceable"
757
- template<typename T1>
758
- int casadi_qp_enforceable(casadi_qp_data<T1>* d, casadi_int i, casadi_int s) {
759
- // Local variables
760
- casadi_int k;
761
- const casadi_int *at_colind, *at_row;
762
- const casadi_qp_prob<T1>* p = d->prob;
763
- // Can always enforce if not at bound
764
- if (fabs(d->infeas[i]) < d->edu) return 1;
765
- // AT sparsity
766
- at_colind = p->sp_at + 2;
767
- at_row = at_colind + p->na + 1;
768
- // Can we set lam[i] := s*DMIN without exceeding edu?
769
- if (i<p->nx) {
770
- return (s < 0) == (d->infeas[i] > 0);
771
- } else {
772
- for (k=at_colind[i-p->nx]; k<at_colind[i-p->nx+1]; ++k) {
773
- if (d->nz_at[k] > 0) {
774
- if ((s > 0) == (d->infeas[at_row[k]] > 0)) return 0;
775
- } else if (d->nz_at[k] < 0) {
776
- if ((s < 0) == (d->infeas[at_row[k]] > 0)) return 0;
777
- }
778
- }
779
- return 1;
780
- }
781
- }
782
-
783
- // SYMBOL "qp_singular_step"
784
- // C-REPLACE "static_cast<T1*>(0)" "0"
785
- template<typename T1>
786
- int casadi_qp_singular_step(casadi_qp_data<T1>* d) {
787
- // Local variables
788
- T1 tau_test, tau;
789
- casadi_int nnz_kkt, nk, k, i, best_k, best_neg, neg;
790
- const casadi_qp_prob<T1>* p = d->prob;
791
- // Find the columns that take part in any linear combination
792
- for (i = 0; i < p->nz; ++i) d->lincomb[i] = 0;
793
- for (k = 0; k < d->sing; ++k) {
794
- if (!d->has_search_dir) {
795
- casadi_qr_colcomb(d->dlam, d->nz_r, p->sp_r, p->pc, 1e-12, k);
796
- }
797
- for (i = 0; i < p->nz; ++i) if (fabs(d->dlam[i]) >= 1e-12) d->lincomb[i]++;
798
- }
799
-
800
- if (d->has_search_dir) {
801
- // One, given search direction
802
- nk = 1;
803
- } else {
804
- // QR factorization of the transpose
805
- casadi_trans(d->nz_kkt, p->sp_kkt, d->nz_v, p->sp_kkt, d->iw);
806
- nnz_kkt = p->sp_kkt[2+p->nz]; // kkt_colind[nz]
807
- casadi_copy(d->nz_v, nnz_kkt, d->nz_kkt);
808
- casadi_qr(p->sp_kkt, d->nz_kkt, d->w, p->sp_v, d->nz_v, p->sp_r, d->nz_r,
809
- d->beta, p->prinv, p->pc);
810
- // For all nullspace vectors
811
- nk = casadi_qr_singular(static_cast<T1*>(0), 0, d->nz_r, p->sp_r, p->pc, 1e-12);
812
- }
813
- // Best flip
814
- best_k = best_neg = -1;
815
- tau = p->inf;
816
- for (k=0; k<nk; ++k) {
817
- if (!d->has_search_dir) {
818
- // Get a linear combination of the rows in kkt
819
- casadi_qr_colcomb(d->dz, d->nz_r, p->sp_r, p->pc, 1e-12, k);
820
- }
821
- // Which constraints can be flipped in order to increase rank?
822
- for (i=0; i<p->nz; ++i) {
823
- d->iw[i] = d->lincomb[i] && fabs(casadi_qp_kkt_dot(d, d->dz, i)) > 1e-12;
824
- }
825
- // Calculate step, dz and dlam
826
- casadi_qp_expand_step(d);
827
- // Try both positive and negative direction
828
- for (neg = 0; neg < 2; ++neg) {
829
- // Negate direction
830
- if (neg) {
831
- casadi_scal(p->nz, -1., d->dz);
832
- casadi_scal(p->nz, -1., d->dlam);
833
- casadi_scal(p->nx, -1., d->tinfeas);
834
- }
835
- // Make sure primal infeasibility doesn't exceed limits
836
- if (casadi_qp_pr_direction(d)) continue;
837
- // Make sure dual infeasibility doesn't exceed limits
838
- if (casadi_qp_du_direction(d)) continue;
839
- // Loop over potential active set changes
840
- for (i=0; i<p->nz; ++i) {
841
- // Skip if no rank increase
842
- if (!d->iw[i]) continue;
843
- // Enforced or not?
844
- if (d->lam[i]==0.) {
845
- if (d->z[i] <= d->ubz[i] && (d->z[i] >= d->lbz[i] ?
846
- d->dz[i] < -1e-12 : d->dz[i] > 1e-12)) {
847
- // Enforce lower bound?
848
- if (!d->neverlower[i]
849
- && (tau_test = (d->lbz[i] - d->z[i]) / d->dz[i]) < tau
850
- && casadi_qp_enforceable(d, i, -1)) {
851
- tau = tau_test;
852
- d->r_index = i;
853
- d->r_sign = -1;
854
- best_k = k;
855
- best_neg = neg;
856
- }
857
- } else if (d->z[i] >= d->lbz[i] && (d->z[i] <= d->ubz[i] ?
858
- d->dz[i] > 1e-12 : d->dz[i] < -1e-12)) {
859
- // Enforce upper bound?
860
- if (!d->neverupper[i]
861
- && (tau_test = (d->ubz[i] - d->z[i]) / d->dz[i]) < tau
862
- && casadi_qp_enforceable(d, i, 1)) {
863
- tau = tau_test;
864
- d->r_index = i;
865
- d->r_sign = 1;
866
- best_k = k;
867
- best_neg = neg;
868
- }
869
- }
870
- } else if (!d->neverzero[i]) {
871
- // Drop a constraint?
872
- if (d->lam[i] > 0 ? d->dlam[i] < -1e-12 : d->dlam[i] > 1e-12) {
873
- if ((tau_test = -d->lam[i] / d->dlam[i]) < tau) {
874
- tau = tau_test;
875
- d->r_index = i;
876
- d->r_sign = 0;
877
- best_k = k;
878
- best_neg = neg;
879
- }
880
- }
881
- }
882
- }
883
- }
884
- }
885
- // Can we restore feasibility?
886
- if (d->r_index < 0) return 1;
887
- // Recalculate direction, if needed
888
- if (--k != best_k) {
889
- // Need to recalculate direction
890
- casadi_qr_colcomb(d->dz, d->nz_r, p->sp_r, p->pc, 1e-12, best_k);
891
- casadi_qp_expand_step(d);
892
- if (best_neg) tau *= -1;
893
- } else if (--neg != best_neg) {
894
- // No need to recalculate, but opposite direction
895
- tau *= -1;
896
- }
897
- // Scale step so that that tau=1 corresponds to a full step
898
- casadi_scal(p->nz, tau, d->dz);
899
- casadi_scal(p->nz, tau, d->dlam);
900
- casadi_scal(p->nx, tau, d->tinfeas);
901
- return 0;
902
- }
903
-
904
- // SYMBOL "qp_calc_step"
905
- template<typename T1>
906
- int casadi_qp_calc_step(casadi_qp_data<T1>* d) {
907
- // Local variables
908
- const casadi_qp_prob<T1>* p = d->prob;
909
- // Reset returns
910
- d->r_index = -1;
911
- d->r_sign = 0;
912
- // Handle singularity
913
- if (d->sing) return casadi_qp_singular_step(d);
914
- // Negative KKT residual
915
- casadi_qp_kkt_residual(d, d->dz);
916
- // Solve to get step in z[:nx] and lam[nx:]
917
- casadi_qr_solve(d->dz, 1, 1, p->sp_v, d->nz_v, p->sp_r, d->nz_r, d->beta,
918
- p->prinv, p->pc, d->w);
919
- // Have step in dz[:nx] and dlam[nx:]. Calculate complete dz and dlam
920
- casadi_qp_expand_step(d);
921
- // Successful return
922
- return 0;
923
- }
924
-
925
- // SYMBOL "qp_calc_sens"
926
- template<typename T1>
927
- void casadi_qp_calc_sens(casadi_qp_data<T1>* d, casadi_int i) {
928
- // Local variables
929
- const casadi_qp_prob<T1>* p = d->prob;
930
- // Calculate sensitivities in decreasing dual infeasibility index i
931
- casadi_clear(d->sens, p->nz);
932
- if (i >= 0) {
933
- d->sens[i] = d->infeas[i] > 0 ? -1. : 1.;
934
- casadi_mv(d->nz_a, p->sp_a, d->sens, d->sens + p->nx, 0);
935
- }
936
- }
937
-
938
- // SYMBOL "qp_calc_dependent"
939
- template<typename T1>
940
- void casadi_qp_calc_dependent(casadi_qp_data<T1>* d) {
941
- // Local variables
942
- casadi_int i;
943
- T1 r;
944
- const casadi_qp_prob<T1>* p = d->prob;
945
- // Calculate f
946
- d->f = casadi_bilin(d->nz_h, p->sp_h, d->z, d->z)/2.
947
- + casadi_dot(p->nx, d->z, d->g);
948
- // Calculate z[nx:]
949
- casadi_clear(d->z+p->nx, p->na);
950
- casadi_mv(d->nz_a, p->sp_a, d->z, d->z+p->nx, 0);
951
- // Calculate gradient of the Lagrangian
952
- casadi_copy(d->g, p->nx, d->infeas);
953
- casadi_mv(d->nz_h, p->sp_h, d->z, d->infeas, 0);
954
- casadi_mv(d->nz_a, p->sp_a, d->lam+p->nx, d->infeas, 1);
955
- // Calculate lam[:nx] without changing the sign accidentally, dual infeasibility
956
- for (i=0; i<p->nx; ++i) {
957
- // No change if zero
958
- if (d->lam[i]==0) continue;
959
- // lam[i] with no sign restrictions
960
- r = -d->infeas[i];
961
- if (d->lam[i]>0) {
962
- if (d->neverzero[i] && !d->neverlower[i]) {
963
- d->lam[i] = r==0 ? p->dmin : r; // keep sign if r==0
964
- } else {
965
- d->lam[i] = fmax(r, p->dmin); // no sign change
966
- }
967
- } else {
968
- if (d->neverzero[i] && !d->neverupper[i]) {
969
- d->lam[i] = r==0 ? -p->dmin : r; // keep sign if r==0
970
- } else {
971
- d->lam[i] = fmin(r, -p->dmin); // no sign change
972
- }
973
- }
974
- // Update dual infeasibility
975
- d->infeas[i] += d->lam[i];
976
- }
977
- // Calculate primal and dual error
978
- casadi_qp_pr(d);
979
- casadi_qp_du(d);
980
- // Acceptable primal and dual error
981
- d->epr = fmax(d->pr, (0.5 * p->constr_viol_tol / p->dual_inf_tol) * d->du);
982
- d->edu = fmax(d->du, (0.5 * p->dual_inf_tol / p->constr_viol_tol) * d->pr);
983
- // Sensitivity in decreasing |du|
984
- casadi_qp_calc_sens(d, d->idu);
985
- }
986
-
987
- // SYMBOL "qp_linesearch"
988
- template<typename T1>
989
- void casadi_qp_linesearch(casadi_qp_data<T1>* d) {
990
- // Local variables
991
- casadi_int du_index;
992
- // Start with a full step and no active set change
993
- d->sign = 0;
994
- d->index = -1;
995
- d->tau = 1.;
996
- // Find largest possible step without exceeding acceptable |pr|
997
- casadi_qp_primal_blocking(d);
998
- // Find largest possible step without exceeding acceptable |du|
999
- du_index = casadi_qp_dual_blocking(d);
1000
- // Take primal-dual step, avoiding accidental sign changes for lam
1001
- casadi_qp_take_step(d);
1002
- // Handle dual blocking constraints
1003
- if (du_index >= 0) {
1004
- // Sensititivity in decreasing du_index
1005
- casadi_qp_calc_sens(d, du_index);
1006
- // Find corresponding index
1007
- casadi_qp_du_index(d);
1008
- }
1009
- }
1010
-
1011
- // SYMBOL "qp_flip"
1012
- template<typename T1>
1013
- void casadi_qp_flip(casadi_qp_data<T1>* d) {
1014
- // Local variables
1015
- const casadi_qp_prob<T1>* p = d->prob;
1016
- // Try to restore regularity if possible
1017
- if (d->index == -1 && d->r_index >= 0) {
1018
- if (d->r_sign != 0 || casadi_qp_du_check(d, d->r_index)) {
1019
- d->index = d->r_index;
1020
- d->sign = d->r_sign;
1021
- if (d->sign > 0) {
1022
- d->msg = "Enforced ubz for regularity";
1023
- } else if (d->sign < 0) {
1024
- d->msg = "Enforced lbz for regularity";
1025
- } else if (d->lam[d->index] > 0) {
1026
- d->msg = "Dropped ubz for regularity";
1027
- } else {
1028
- d->msg = "Dropped lbz for regularity";
1029
- }
1030
- d->msg_ind = d->index;
1031
- }
1032
- }
1033
- // If nonsingular and nonzero error, try to flip a constraint
1034
- if (!d->sing && d->index == -1) {
1035
- if (d->pr * p->dual_inf_tol >= p->constr_viol_tol * d->du) {
1036
- // Improve primal feasibility if dominating
1037
- if (d->pr >= p->constr_viol_tol) casadi_qp_pr_index(d);
1038
- } else {
1039
- // Improve dual feasibility if dominating
1040
- if (d->du >= p->dual_inf_tol) casadi_qp_du_index(d);
1041
- }
1042
- }
1043
- // No search direction given by default
1044
- d->has_search_dir = 0;
1045
- // If a constraint was added
1046
- if (d->index >= 0) {
1047
- // Detect singularity before it happens and get nullspace vectors
1048
- if (!d->sing) d->has_search_dir = casadi_qp_flip_check(d);
1049
- // Perform the active-set change
1050
- d->lam[d->index] = d->sign==0 ? 0 : d->sign > 0 ? p->dmin : -p->dmin;
1051
- // Recalculate primal and dual infeasibility
1052
- casadi_qp_calc_dependent(d);
1053
- }
1054
- }
68
+ };
69
+ // C-REPLACE "casadi_qp_data<T1>" "struct casadi_qp_data"
1055
70
 
1056
- // SYMBOL "qp_prepare"
71
+ // SYMBOL "qp_init"
1057
72
  template<typename T1>
1058
- int casadi_qp_prepare(casadi_qp_data<T1>* d) {
73
+ void casadi_qp_init(casadi_qp_data<T1>* d, casadi_int** iw, T1** w) {
1059
74
  // Local variables
1060
- const casadi_qp_prob<T1>* p = d->prob;
1061
- // Calculate dependent quantities
1062
- casadi_qp_calc_dependent(d);
1063
- // Make an active set change
1064
- casadi_qp_flip(d);
1065
- // Form and factorize the KKT system
1066
- casadi_qp_factorize(d);
1067
- // Termination message
1068
- if (!d->sing && d->index == -1) {
1069
- d->status = QP_SUCCESS;
1070
- d->msg = "Converged";
1071
- d->msg_ind = -2;
1072
- return 1;
1073
- } else if (d->iter >= p->max_iter) {
1074
- d->status = QP_MAX_ITER;
1075
- d->msg = "Max iter";
1076
- d->msg_ind = -2;
1077
- return 1;
1078
- } else if (!d->sing && d->ipr < 0 && d->idu < 0) {
1079
- d->status = QP_SUCCESS;
1080
- d->msg = "No primal or dual error";
1081
- d->msg_ind = -2;
1082
- return 1;
1083
- } else {
1084
- // Keep iterating
1085
- return 0;
1086
- }
1087
- }
1088
-
1089
- // SYMBOL "qp_iterate"
1090
- template<typename T1>
1091
- int casadi_qp_iterate(casadi_qp_data<T1>* d) {
1092
- // Reset message flag
1093
- d->msg = 0;
1094
- // Start a new iteration
1095
- d->iter++;
1096
- // Calculate search direction
1097
- if (casadi_qp_calc_step(d)) {
1098
- d->status = QP_NO_SEARCH_DIR;
1099
- return 1;
1100
- }
1101
- // Line search in the calculated direction
1102
- casadi_qp_linesearch(d);
1103
- // Keep iterating
1104
- return 0;
75
+ //const casadi_qp_prob<T1>* p = d->prob;
1105
76
  }
1106
77
 
1107
- // The following routines require stdio
1108
- #ifndef CASADI_PRINTF
1109
-
1110
- // SYMBOL "qp_print_header"
1111
- template<typename T1>
1112
- int casadi_qp_print_header(casadi_qp_data<T1>* d, char* buf, size_t buf_sz) {
1113
- int flag;
1114
- // Print to string
1115
- flag = snprintf(buf, buf_sz, "%5s %5s %9s %9s %5s %9s %5s %9s %5s %9s %4s",
1116
- "Iter", "Sing", "fk", "|pr|", "con", "|du|", "var",
1117
- "min_R", "con", "last_tau", "Note");
1118
- // Check if error
1119
- if (flag < 0) {
1120
- d->status = QP_PRINTING_ERROR;
1121
- return 1;
1122
- }
1123
- // Successful return
1124
- return 0;
1125
- }
1126
-
1127
- // SYMBOL "qp_print_colcomb"
1128
- template<typename T1>
1129
- int casadi_qp_print_colcomb(casadi_qp_data<T1>* d, char* buf, size_t buf_sz, casadi_int j) {
1130
- casadi_int num_size, n_print, i, k, buf_offset, val;
1131
- size_t b;
1132
- const casadi_qp_prob<T1>* p = d->prob;
1133
- casadi_qr_colcomb(d->dlam, d->nz_r, p->sp_r, p->pc, 1e-12, j);
1134
-
1135
- // Determine max printing size
1136
- num_size = 1;
1137
- val = p->nz-1;
1138
- while (val) {
1139
- val/=10;
1140
- num_size++;
1141
- }
1142
-
1143
- if (buf_sz<=4) return 1;
1144
-
1145
- // How many numbers can be printed?
1146
- // Need some extra space for '...'
1147
- // and null
1148
- n_print = (buf_sz-4)/num_size;
1149
-
1150
- // Clear buffer
1151
- for (b=0;b<buf_sz;++b) buf[b]=' ';
1152
-
1153
- buf_offset = 0;
1154
- for (i=0;i<p->nz;++i) {
1155
- if (fabs(d->dlam[i]) >= 1e-12) {
1156
- if (n_print==0) {
1157
- buf[buf_sz-4] = '.';
1158
- buf[buf_sz-3] = '.';
1159
- buf[buf_sz-2] = '.';
1160
- buf[buf_sz-1] = '\0';
1161
- return 1;
1162
- }
1163
- n_print--;
1164
- snprintf(buf+buf_offset, num_size, "%d", static_cast<int>(i));
1165
- // Clear null chars
1166
- for (k=0;k<num_size;++k) {
1167
- if (buf[buf_offset+k]=='\0') buf[buf_offset+k] = ' ';
1168
- }
1169
- buf_offset += num_size;
1170
- }
1171
- }
1172
- buf[buf_sz-1] = '\0';
1173
-
1174
- // Successful return
1175
- return 0;
1176
- }
1177
-
1178
- // SYMBOL "qp_print_iteration"
78
+ // SYMBOL "qp_work"
1179
79
  template<typename T1>
1180
- int casadi_qp_print_iteration(casadi_qp_data<T1>* d, char* buf, int buf_sz) {
1181
- int flag;
1182
- // Print iteration data without note to string
1183
- flag = snprintf(buf, buf_sz,
1184
- "%5d %5d %9.2g %9.2g %5d %9.2g %5d %9.2g %5d %9.2g ",
1185
- static_cast<int>(d->iter), static_cast<int>(d->sing), d->f, d->pr,
1186
- static_cast<int>(d->ipr), d->du, static_cast<int>(d->idu),
1187
- d->mina, static_cast<int>(d->imina), d->tau);
1188
- // Check if error
1189
- if (flag < 0) {
1190
- d->status = QP_PRINTING_ERROR;
1191
- return 1;
1192
- }
1193
- // Rest of buffer reserved for iteration note
1194
- buf += flag;
1195
- buf_sz -= flag;
1196
- // Print iteration note, if any
1197
- if (d->msg) {
1198
- if (d->msg_ind > -2) {
1199
- flag = snprintf(buf, buf_sz, "%s, i=%d", d->msg, static_cast<int>(d->msg_ind));
1200
- } else {
1201
- flag = snprintf(buf, buf_sz, "%s", d->msg);
1202
- }
1203
- // Check if error
1204
- if (flag < 0) {
1205
- d->status = QP_PRINTING_ERROR;
1206
- return 1;
1207
- }
1208
- }
1209
- // Successful return
1210
- return 0;
80
+ void casadi_qp_work(const casadi_qp_prob<T1>* p, casadi_int* sz_arg, casadi_int* sz_res,
81
+ casadi_int* sz_iw, casadi_int* sz_w) {
82
+ // Reset sz_arg, sz_res
83
+ *sz_arg = *sz_res = 0;
84
+ // Reset sz_w, sz_iw
85
+ *sz_w = *sz_iw = 0;
1211
86
  }
1212
-
1213
- #endif // CASADI_PRINTF