casadi 3.6.7__cp313-none-macosx_10_13_x86_64.macosx_10_13_intel.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 (1312) hide show
  1. casadi/__init__.py +92 -0
  2. casadi/_casadi.so +0 -0
  3. casadi/casadi-cli +0 -0
  4. casadi/casadi.py +50976 -0
  5. casadi/cbc +0 -0
  6. casadi/clp +0 -0
  7. casadi/cmake/casadi-config-version.cmake +11 -0
  8. casadi/cmake/casadi-config.cmake +8 -0
  9. casadi/cmake/casadi-targets-release.cmake +19 -0
  10. casadi/cmake/casadi-targets.cmake +106 -0
  11. casadi/cmake/highs/highs-config.cmake +17 -0
  12. casadi/cmake/highs/highs-targets-release.cmake +28 -0
  13. casadi/cmake/highs/highs-targets.cmake +117 -0
  14. casadi/cmake/osqp/osqp-config.cmake +1 -0
  15. casadi/cmake/osqp/osqp-targets-noconfig.cmake +29 -0
  16. casadi/cmake/osqp/osqp-targets.cmake +113 -0
  17. casadi/cmake/qdldl/qdldl-config.cmake +1 -0
  18. casadi/cmake/qdldl/qdldl-targets-noconfig.cmake +29 -0
  19. casadi/cmake/qdldl/qdldl-targets.cmake +113 -0
  20. casadi/cmake/sleqp/sleqp-config-version.cmake +65 -0
  21. casadi/cmake/sleqp/sleqp-config.cmake +1 -0
  22. casadi/cmake/sleqp/sleqp-targets-release.cmake +20 -0
  23. casadi/cmake/sleqp/sleqp-targets.cmake +106 -0
  24. casadi/cmake/trlib/trlib-config-release.cmake +19 -0
  25. casadi/cmake/trlib/trlib-config-version.cmake +83 -0
  26. casadi/cmake/trlib/trlib-config.cmake +107 -0
  27. casadi/highs +0 -0
  28. casadi/include/blasfeo.h +52 -0
  29. casadi/include/blasfeo_block_size.h +447 -0
  30. casadi/include/blasfeo_common.h +274 -0
  31. casadi/include/blasfeo_d_aux.h +255 -0
  32. casadi/include/blasfeo_d_aux_ext_dep.h +145 -0
  33. casadi/include/blasfeo_d_aux_ext_dep_ref.h +84 -0
  34. casadi/include/blasfeo_d_aux_old.h +75 -0
  35. casadi/include/blasfeo_d_aux_ref.h +208 -0
  36. casadi/include/blasfeo_d_aux_test.h +226 -0
  37. casadi/include/blasfeo_d_blas.h +46 -0
  38. casadi/include/blasfeo_d_blas_api.h +281 -0
  39. casadi/include/blasfeo_d_blasfeo_api.h +364 -0
  40. casadi/include/blasfeo_d_blasfeo_api_ref.h +147 -0
  41. casadi/include/blasfeo_d_blasfeo_hp_api.h +84 -0
  42. casadi/include/blasfeo_d_blasfeo_ref_api.h +283 -0
  43. casadi/include/blasfeo_d_kernel.h +1321 -0
  44. casadi/include/blasfeo_i_aux_ext_dep.h +69 -0
  45. casadi/include/blasfeo_m_aux.h +57 -0
  46. casadi/include/blasfeo_memory.h +62 -0
  47. casadi/include/blasfeo_naming.h +77 -0
  48. casadi/include/blasfeo_processor_features.h +88 -0
  49. casadi/include/blasfeo_s_aux.h +168 -0
  50. casadi/include/blasfeo_s_aux_ext_dep.h +141 -0
  51. casadi/include/blasfeo_s_aux_ext_dep_ref.h +82 -0
  52. casadi/include/blasfeo_s_aux_old.h +64 -0
  53. casadi/include/blasfeo_s_aux_ref.h +147 -0
  54. casadi/include/blasfeo_s_aux_test.h +177 -0
  55. casadi/include/blasfeo_s_blas.h +46 -0
  56. casadi/include/blasfeo_s_blas_api.h +182 -0
  57. casadi/include/blasfeo_s_blasfeo_api.h +284 -0
  58. casadi/include/blasfeo_s_blasfeo_api_ref.h +135 -0
  59. casadi/include/blasfeo_s_blasfeo_ref_api.h +252 -0
  60. casadi/include/blasfeo_s_kernel.h +692 -0
  61. casadi/include/blasfeo_stdlib.h +62 -0
  62. casadi/include/blasfeo_target.h +73 -0
  63. casadi/include/blasfeo_timing.h +114 -0
  64. casadi/include/blasfeo_v_aux_ext_dep.h +83 -0
  65. casadi/include/casadi/casadi.hpp +31 -0
  66. casadi/include/casadi/casadi.i +4691 -0
  67. casadi/include/casadi/casadi_c.h +138 -0
  68. casadi/include/casadi/casadi_numpy.hpp +97 -0
  69. casadi/include/casadi/config.h +46 -0
  70. casadi/include/casadi/core/calculus.hpp +1750 -0
  71. casadi/include/casadi/core/callback.hpp +226 -0
  72. casadi/include/casadi/core/casadi_common.hpp +318 -0
  73. casadi/include/casadi/core/casadi_enum.hpp +90 -0
  74. casadi/include/casadi/core/casadi_export.h +43 -0
  75. casadi/include/casadi/core/casadi_interrupt.hpp +83 -0
  76. casadi/include/casadi/core/casadi_limits.hpp +104 -0
  77. casadi/include/casadi/core/casadi_logger.hpp +134 -0
  78. casadi/include/casadi/core/casadi_meta.hpp +107 -0
  79. casadi/include/casadi/core/casadi_misc.hpp +1001 -0
  80. casadi/include/casadi/core/casadi_types.hpp +66 -0
  81. casadi/include/casadi/core/code_generator.hpp +975 -0
  82. casadi/include/casadi/core/conic.hpp +213 -0
  83. casadi/include/casadi/core/core.hpp +70 -0
  84. casadi/include/casadi/core/dae_builder.hpp +723 -0
  85. casadi/include/casadi/core/dm.hpp +87 -0
  86. casadi/include/casadi/core/dm_fwd.hpp +39 -0
  87. casadi/include/casadi/core/dple.hpp +138 -0
  88. casadi/include/casadi/core/exception.hpp +167 -0
  89. casadi/include/casadi/core/expm.hpp +84 -0
  90. casadi/include/casadi/core/external.hpp +70 -0
  91. casadi/include/casadi/core/fmu.hpp +224 -0
  92. casadi/include/casadi/core/function.hpp +1347 -0
  93. casadi/include/casadi/core/generic_expression.hpp +760 -0
  94. casadi/include/casadi/core/generic_matrix.hpp +1598 -0
  95. casadi/include/casadi/core/generic_type.hpp +311 -0
  96. casadi/include/casadi/core/global_options.hpp +97 -0
  97. casadi/include/casadi/core/im.hpp +52 -0
  98. casadi/include/casadi/core/im_fwd.hpp +35 -0
  99. casadi/include/casadi/core/importer.hpp +221 -0
  100. casadi/include/casadi/core/integration_tools.hpp +292 -0
  101. casadi/include/casadi/core/integrator.hpp +256 -0
  102. casadi/include/casadi/core/interpolant.hpp +163 -0
  103. casadi/include/casadi/core/linsol.hpp +171 -0
  104. casadi/include/casadi/core/matrix_decl.hpp +1352 -0
  105. casadi/include/casadi/core/matrix_fwd.hpp +37 -0
  106. casadi/include/casadi/core/mx.hpp +953 -0
  107. casadi/include/casadi/core/nlp_builder.hpp +162 -0
  108. casadi/include/casadi/core/nlp_tools.hpp +124 -0
  109. casadi/include/casadi/core/nlpsol.hpp +234 -0
  110. casadi/include/casadi/core/nonzeros.hpp +111 -0
  111. casadi/include/casadi/core/options.hpp +119 -0
  112. casadi/include/casadi/core/optistack.hpp +670 -0
  113. casadi/include/casadi/core/polynomial.hpp +126 -0
  114. casadi/include/casadi/core/printable.hpp +73 -0
  115. casadi/include/casadi/core/rootfinder.hpp +176 -0
  116. casadi/include/casadi/core/runtime/casadi_axpy.hpp +8 -0
  117. casadi/include/casadi/core/runtime/casadi_bfgs.hpp +49 -0
  118. casadi/include/casadi/core/runtime/casadi_bilin.hpp +42 -0
  119. casadi/include/casadi/core/runtime/casadi_bound_consistency.hpp +51 -0
  120. casadi/include/casadi/core/runtime/casadi_cache.hpp +59 -0
  121. casadi/include/casadi/core/runtime/casadi_clear.hpp +27 -0
  122. casadi/include/casadi/core/runtime/casadi_clip_max.hpp +33 -0
  123. casadi/include/casadi/core/runtime/casadi_clip_min.hpp +33 -0
  124. casadi/include/casadi/core/runtime/casadi_convexify.hpp +182 -0
  125. casadi/include/casadi/core/runtime/casadi_copy.hpp +31 -0
  126. casadi/include/casadi/core/runtime/casadi_cvx.hpp +463 -0
  127. casadi/include/casadi/core/runtime/casadi_de_boor.hpp +36 -0
  128. casadi/include/casadi/core/runtime/casadi_dense_lsqr.hpp +247 -0
  129. casadi/include/casadi/core/runtime/casadi_densify.hpp +48 -0
  130. casadi/include/casadi/core/runtime/casadi_dot.hpp +27 -0
  131. casadi/include/casadi/core/runtime/casadi_feasiblesqpmethod.hpp +208 -0
  132. casadi/include/casadi/core/runtime/casadi_file_slurp.hpp +32 -0
  133. casadi/include/casadi/core/runtime/casadi_fill.hpp +27 -0
  134. casadi/include/casadi/core/runtime/casadi_finite_diff.hpp +345 -0
  135. casadi/include/casadi/core/runtime/casadi_flip.hpp +33 -0
  136. casadi/include/casadi/core/runtime/casadi_getu.hpp +35 -0
  137. casadi/include/casadi/core/runtime/casadi_iamax.hpp +36 -0
  138. casadi/include/casadi/core/runtime/casadi_interpn.hpp +39 -0
  139. casadi/include/casadi/core/runtime/casadi_interpn_grad.hpp +72 -0
  140. casadi/include/casadi/core/runtime/casadi_interpn_interpolate.hpp +43 -0
  141. casadi/include/casadi/core/runtime/casadi_interpn_weights.hpp +39 -0
  142. casadi/include/casadi/core/runtime/casadi_ipqp.hpp +868 -0
  143. casadi/include/casadi/core/runtime/casadi_jac.hpp +186 -0
  144. casadi/include/casadi/core/runtime/casadi_kkt.hpp +67 -0
  145. casadi/include/casadi/core/runtime/casadi_kron.hpp +50 -0
  146. casadi/include/casadi/core/runtime/casadi_ldl.hpp +109 -0
  147. casadi/include/casadi/core/runtime/casadi_logsumexp.hpp +41 -0
  148. casadi/include/casadi/core/runtime/casadi_low.hpp +65 -0
  149. casadi/include/casadi/core/runtime/casadi_lsqr.hpp +247 -0
  150. casadi/include/casadi/core/runtime/casadi_masked_norm_inf.hpp +33 -0
  151. casadi/include/casadi/core/runtime/casadi_max_viol.hpp +37 -0
  152. casadi/include/casadi/core/runtime/casadi_mmax.hpp +28 -0
  153. casadi/include/casadi/core/runtime/casadi_mmin.hpp +29 -0
  154. casadi/include/casadi/core/runtime/casadi_mtimes.hpp +75 -0
  155. casadi/include/casadi/core/runtime/casadi_mv.hpp +46 -0
  156. casadi/include/casadi/core/runtime/casadi_mv_dense.hpp +39 -0
  157. casadi/include/casadi/core/runtime/casadi_nd_boor_dual_eval.hpp +127 -0
  158. casadi/include/casadi/core/runtime/casadi_nd_boor_eval.hpp +120 -0
  159. casadi/include/casadi/core/runtime/casadi_newton.hpp +66 -0
  160. casadi/include/casadi/core/runtime/casadi_nlp.hpp +289 -0
  161. casadi/include/casadi/core/runtime/casadi_norm_1.hpp +29 -0
  162. casadi/include/casadi/core/runtime/casadi_norm_2.hpp +24 -0
  163. casadi/include/casadi/core/runtime/casadi_norm_inf.hpp +28 -0
  164. casadi/include/casadi/core/runtime/casadi_norm_inf_mul.hpp +105 -0
  165. casadi/include/casadi/core/runtime/casadi_ocp_block.hpp +55 -0
  166. casadi/include/casadi/core/runtime/casadi_oracle.hpp +44 -0
  167. casadi/include/casadi/core/runtime/casadi_oracle_callback.hpp +39 -0
  168. casadi/include/casadi/core/runtime/casadi_polyval.hpp +29 -0
  169. casadi/include/casadi/core/runtime/casadi_project.hpp +39 -0
  170. casadi/include/casadi/core/runtime/casadi_qp.hpp +86 -0
  171. casadi/include/casadi/core/runtime/casadi_qr.hpp +272 -0
  172. casadi/include/casadi/core/runtime/casadi_qrqp.hpp +1239 -0
  173. casadi/include/casadi/core/runtime/casadi_rank1.hpp +40 -0
  174. casadi/include/casadi/core/runtime/casadi_regularize.hpp +73 -0
  175. casadi/include/casadi/core/runtime/casadi_runtime.hpp +318 -0
  176. casadi/include/casadi/core/runtime/casadi_scal.hpp +26 -0
  177. casadi/include/casadi/core/runtime/casadi_scaled_copy.hpp +31 -0
  178. casadi/include/casadi/core/runtime/casadi_sparsify.hpp +42 -0
  179. casadi/include/casadi/core/runtime/casadi_sparsity.hpp +24 -0
  180. casadi/include/casadi/core/runtime/casadi_sqpmethod.hpp +178 -0
  181. casadi/include/casadi/core/runtime/casadi_sum.hpp +31 -0
  182. casadi/include/casadi/core/runtime/casadi_sum_viol.hpp +37 -0
  183. casadi/include/casadi/core/runtime/casadi_swap.hpp +32 -0
  184. casadi/include/casadi/core/runtime/casadi_trans.hpp +35 -0
  185. casadi/include/casadi/core/runtime/casadi_tri_project.hpp +37 -0
  186. casadi/include/casadi/core/runtime/casadi_trilsolve.hpp +81 -0
  187. casadi/include/casadi/core/runtime/casadi_triusolve.hpp +81 -0
  188. casadi/include/casadi/core/runtime/casadi_vector_fmax.hpp +28 -0
  189. casadi/include/casadi/core/runtime/casadi_vector_fmin.hpp +28 -0
  190. casadi/include/casadi/core/runtime/casadi_vfmax.hpp +28 -0
  191. casadi/include/casadi/core/runtime/casadi_vfmin.hpp +28 -0
  192. casadi/include/casadi/core/runtime/shared.hpp +261 -0
  193. casadi/include/casadi/core/serializer.hpp +256 -0
  194. casadi/include/casadi/core/serializing_stream.hpp +329 -0
  195. casadi/include/casadi/core/shared_object.hpp +270 -0
  196. casadi/include/casadi/core/slice.hpp +149 -0
  197. casadi/include/casadi/core/sparsity.hpp +1495 -0
  198. casadi/include/casadi/core/sparsity_interface.hpp +745 -0
  199. casadi/include/casadi/core/submatrix.hpp +156 -0
  200. casadi/include/casadi/core/sx.hpp +203 -0
  201. casadi/include/casadi/core/sx_elem.hpp +351 -0
  202. casadi/include/casadi/core/sx_fwd.hpp +45 -0
  203. casadi/include/casadi/core/timing.hpp +98 -0
  204. casadi/include/casadi/core/tools.hpp +67 -0
  205. casadi/include/casadi/core/xml_file.hpp +93 -0
  206. casadi/include/casadi/core/xml_node.hpp +207 -0
  207. casadi/include/casadi/doc.i +58615 -0
  208. casadi/include/casadi/doc_merged.i +36123 -0
  209. casadi/include/casadi/mem.h +311 -0
  210. casadi/include/casadi/valgrind-casadi.supp +511 -0
  211. casadi/include/casadi/valgrind-python.supp +1416 -0
  212. casadi/include/coin/BonArraysHelpers.hpp +52 -0
  213. casadi/include/coin/BonAuxInfos.hpp +110 -0
  214. casadi/include/coin/BonBabInfos.hpp +57 -0
  215. casadi/include/coin/BonBabSetupBase.hpp +386 -0
  216. casadi/include/coin/BonBonminSetup.hpp +95 -0
  217. casadi/include/coin/BonBranchingTQP.hpp +197 -0
  218. casadi/include/coin/BonCbc.hpp +127 -0
  219. casadi/include/coin/BonCbcLpStrategy.hpp +45 -0
  220. casadi/include/coin/BonCbcNlpStrategy.hpp +98 -0
  221. casadi/include/coin/BonCbcNode.hpp +133 -0
  222. casadi/include/coin/BonChooseVariable.hpp +345 -0
  223. casadi/include/coin/BonCurvBranchingSolver.hpp +77 -0
  224. casadi/include/coin/BonCutStrengthener.hpp +244 -0
  225. casadi/include/coin/BonDiver.hpp +424 -0
  226. casadi/include/coin/BonDummyHeuristic.hpp +53 -0
  227. casadi/include/coin/BonDummyPump.hpp +43 -0
  228. casadi/include/coin/BonEcpCuts.hpp +97 -0
  229. casadi/include/coin/BonExitCodes.hpp +12 -0
  230. casadi/include/coin/BonFixAndSolveHeuristic.hpp +43 -0
  231. casadi/include/coin/BonGuessHeuristic.hpp +46 -0
  232. casadi/include/coin/BonHeuristicDive.hpp +88 -0
  233. casadi/include/coin/BonHeuristicDiveFractional.hpp +67 -0
  234. casadi/include/coin/BonHeuristicDiveMIP.hpp +83 -0
  235. casadi/include/coin/BonHeuristicDiveMIPFractional.hpp +67 -0
  236. casadi/include/coin/BonHeuristicDiveMIPVectorLength.hpp +74 -0
  237. casadi/include/coin/BonHeuristicDiveVectorLength.hpp +74 -0
  238. casadi/include/coin/BonHeuristicFPump.hpp +111 -0
  239. casadi/include/coin/BonHeuristicLocalBranching.hpp +59 -0
  240. casadi/include/coin/BonHeuristicRINS.hpp +55 -0
  241. casadi/include/coin/BonIpoptInteriorWarmStarter.hpp +103 -0
  242. casadi/include/coin/BonIpoptSolver.hpp +188 -0
  243. casadi/include/coin/BonIpoptWarmStart.hpp +148 -0
  244. casadi/include/coin/BonLinearCutsGenerator.hpp +75 -0
  245. casadi/include/coin/BonLocalSolverBasedHeuristic.hpp +102 -0
  246. casadi/include/coin/BonLpBranchingSolver.hpp +80 -0
  247. casadi/include/coin/BonMilpRounding.hpp +74 -0
  248. casadi/include/coin/BonOACutGenerator2.hpp +56 -0
  249. casadi/include/coin/BonOAMessages.hpp +44 -0
  250. casadi/include/coin/BonOaDecBase.hpp +297 -0
  251. casadi/include/coin/BonOaFeasChecker.hpp +73 -0
  252. casadi/include/coin/BonOaNlpOptim.hpp +116 -0
  253. casadi/include/coin/BonOsiTMINLPInterface.hpp +1342 -0
  254. casadi/include/coin/BonOuterApprox.hpp +123 -0
  255. casadi/include/coin/BonPseudoCosts.hpp +91 -0
  256. casadi/include/coin/BonPumpForMinlp.hpp +45 -0
  257. casadi/include/coin/BonQuadCut.hpp +217 -0
  258. casadi/include/coin/BonQuadRow.hpp +122 -0
  259. casadi/include/coin/BonRegisteredOptions.hpp +225 -0
  260. casadi/include/coin/BonStrongBranchingSolver.hpp +69 -0
  261. casadi/include/coin/BonSubMipSolver.hpp +143 -0
  262. casadi/include/coin/BonTMINLP.hpp +420 -0
  263. casadi/include/coin/BonTMINLP2OsiLP.hpp +164 -0
  264. casadi/include/coin/BonTMINLP2Quad.hpp +191 -0
  265. casadi/include/coin/BonTMINLP2TNLP.hpp +509 -0
  266. casadi/include/coin/BonTMINLPLinObj.hpp +216 -0
  267. casadi/include/coin/BonTMatrix.hpp +167 -0
  268. casadi/include/coin/BonTNLP2FPNLP.hpp +264 -0
  269. casadi/include/coin/BonTNLPSolver.hpp +241 -0
  270. casadi/include/coin/BonTypes.hpp +95 -0
  271. casadi/include/coin/BonminConfig.h +19 -0
  272. casadi/include/coin/CbcBranchActual.hpp +26 -0
  273. casadi/include/coin/CbcBranchAllDifferent.hpp +61 -0
  274. casadi/include/coin/CbcBranchBase.hpp +79 -0
  275. casadi/include/coin/CbcBranchCut.hpp +182 -0
  276. casadi/include/coin/CbcBranchDecision.hpp +135 -0
  277. casadi/include/coin/CbcBranchDefaultDecision.hpp +101 -0
  278. casadi/include/coin/CbcBranchDynamic.hpp +210 -0
  279. casadi/include/coin/CbcBranchLotsize.hpp +249 -0
  280. casadi/include/coin/CbcBranchToFixLots.hpp +94 -0
  281. casadi/include/coin/CbcBranchingObject.hpp +245 -0
  282. casadi/include/coin/CbcClique.hpp +309 -0
  283. casadi/include/coin/CbcCompare.hpp +46 -0
  284. casadi/include/coin/CbcCompareActual.hpp +16 -0
  285. casadi/include/coin/CbcCompareBase.hpp +155 -0
  286. casadi/include/coin/CbcCompareDefault.hpp +129 -0
  287. casadi/include/coin/CbcCompareDepth.hpp +48 -0
  288. casadi/include/coin/CbcCompareEstimate.hpp +48 -0
  289. casadi/include/coin/CbcCompareObjective.hpp +50 -0
  290. casadi/include/coin/CbcConfig.h +18 -0
  291. casadi/include/coin/CbcConsequence.hpp +50 -0
  292. casadi/include/coin/CbcCountRowCut.hpp +176 -0
  293. casadi/include/coin/CbcCutGenerator.hpp +550 -0
  294. casadi/include/coin/CbcCutModifier.hpp +59 -0
  295. casadi/include/coin/CbcCutSubsetModifier.hpp +69 -0
  296. casadi/include/coin/CbcDummyBranchingObject.hpp +83 -0
  297. casadi/include/coin/CbcEventHandler.hpp +250 -0
  298. casadi/include/coin/CbcFathom.hpp +136 -0
  299. casadi/include/coin/CbcFathomDynamicProgramming.hpp +177 -0
  300. casadi/include/coin/CbcFeasibilityBase.hpp +60 -0
  301. casadi/include/coin/CbcFixVariable.hpp +68 -0
  302. casadi/include/coin/CbcFollowOn.hpp +207 -0
  303. casadi/include/coin/CbcFullNodeInfo.hpp +171 -0
  304. casadi/include/coin/CbcGeneral.hpp +60 -0
  305. casadi/include/coin/CbcGeneralDepth.hpp +289 -0
  306. casadi/include/coin/CbcHeuristic.hpp +735 -0
  307. casadi/include/coin/CbcHeuristicDINS.hpp +98 -0
  308. casadi/include/coin/CbcHeuristicDW.hpp +374 -0
  309. casadi/include/coin/CbcHeuristicDive.hpp +198 -0
  310. casadi/include/coin/CbcHeuristicDiveCoefficient.hpp +52 -0
  311. casadi/include/coin/CbcHeuristicDiveFractional.hpp +52 -0
  312. casadi/include/coin/CbcHeuristicDiveGuided.hpp +55 -0
  313. casadi/include/coin/CbcHeuristicDiveLineSearch.hpp +52 -0
  314. casadi/include/coin/CbcHeuristicDivePseudoCost.hpp +60 -0
  315. casadi/include/coin/CbcHeuristicDiveVectorLength.hpp +52 -0
  316. casadi/include/coin/CbcHeuristicFPump.hpp +375 -0
  317. casadi/include/coin/CbcHeuristicGreedy.hpp +289 -0
  318. casadi/include/coin/CbcHeuristicLocal.hpp +276 -0
  319. casadi/include/coin/CbcHeuristicPivotAndFix.hpp +58 -0
  320. casadi/include/coin/CbcHeuristicRENS.hpp +79 -0
  321. casadi/include/coin/CbcHeuristicRINS.hpp +106 -0
  322. casadi/include/coin/CbcHeuristicRandRound.hpp +58 -0
  323. casadi/include/coin/CbcHeuristicVND.hpp +95 -0
  324. casadi/include/coin/CbcLinked.hpp +1443 -0
  325. casadi/include/coin/CbcMessage.hpp +94 -0
  326. casadi/include/coin/CbcMipStartIO.hpp +29 -0
  327. casadi/include/coin/CbcModel.hpp +3296 -0
  328. casadi/include/coin/CbcNWay.hpp +171 -0
  329. casadi/include/coin/CbcNode.hpp +380 -0
  330. casadi/include/coin/CbcNodeInfo.hpp +377 -0
  331. casadi/include/coin/CbcObject.hpp +288 -0
  332. casadi/include/coin/CbcObjectUpdateData.hpp +63 -0
  333. casadi/include/coin/CbcOrClpParam.cpp +4321 -0
  334. casadi/include/coin/CbcOrClpParam.hpp +585 -0
  335. casadi/include/coin/CbcParam.hpp +338 -0
  336. casadi/include/coin/CbcPartialNodeInfo.hpp +116 -0
  337. casadi/include/coin/CbcSOS.hpp +290 -0
  338. casadi/include/coin/CbcSimpleInteger.hpp +299 -0
  339. casadi/include/coin/CbcSimpleIntegerDynamicPseudoCost.hpp +619 -0
  340. casadi/include/coin/CbcSimpleIntegerPseudoCost.hpp +122 -0
  341. casadi/include/coin/CbcSolver.hpp +460 -0
  342. casadi/include/coin/CbcStrategy.hpp +269 -0
  343. casadi/include/coin/CbcSubProblem.hpp +84 -0
  344. casadi/include/coin/CbcTree.hpp +493 -0
  345. casadi/include/coin/CbcTreeLocal.hpp +393 -0
  346. casadi/include/coin/Cbc_C_Interface.h +904 -0
  347. casadi/include/coin/Cgl012cut.hpp +464 -0
  348. casadi/include/coin/CglAllDifferent.hpp +115 -0
  349. casadi/include/coin/CglClique.hpp +312 -0
  350. casadi/include/coin/CglConfig.h +19 -0
  351. casadi/include/coin/CglCutGenerator.hpp +133 -0
  352. casadi/include/coin/CglDuplicateRow.hpp +189 -0
  353. casadi/include/coin/CglFlowCover.hpp +371 -0
  354. casadi/include/coin/CglGMI.hpp +364 -0
  355. casadi/include/coin/CglGMIParam.hpp +313 -0
  356. casadi/include/coin/CglGomory.hpp +204 -0
  357. casadi/include/coin/CglKnapsackCover.hpp +310 -0
  358. casadi/include/coin/CglLandP.hpp +306 -0
  359. casadi/include/coin/CglLandPValidator.hpp +130 -0
  360. casadi/include/coin/CglLiftAndProject.hpp +104 -0
  361. casadi/include/coin/CglMessage.hpp +49 -0
  362. casadi/include/coin/CglMixedIntegerRounding.hpp +429 -0
  363. casadi/include/coin/CglMixedIntegerRounding2.hpp +427 -0
  364. casadi/include/coin/CglOddHole.hpp +160 -0
  365. casadi/include/coin/CglParam.hpp +93 -0
  366. casadi/include/coin/CglPreProcess.hpp +600 -0
  367. casadi/include/coin/CglProbing.hpp +543 -0
  368. casadi/include/coin/CglRedSplit.hpp +448 -0
  369. casadi/include/coin/CglRedSplit2.hpp +494 -0
  370. casadi/include/coin/CglRedSplit2Param.hpp +495 -0
  371. casadi/include/coin/CglRedSplitParam.hpp +272 -0
  372. casadi/include/coin/CglResidualCapacity.hpp +240 -0
  373. casadi/include/coin/CglSimpleRounding.hpp +174 -0
  374. casadi/include/coin/CglStored.hpp +140 -0
  375. casadi/include/coin/CglTreeInfo.hpp +216 -0
  376. casadi/include/coin/CglTwomir.hpp +562 -0
  377. casadi/include/coin/CglZeroHalf.hpp +133 -0
  378. casadi/include/coin/ClpAmplObjective.hpp +113 -0
  379. casadi/include/coin/ClpCholeskyBase.hpp +321 -0
  380. casadi/include/coin/ClpCholeskyDense.hpp +157 -0
  381. casadi/include/coin/ClpCholeskyMumps.hpp +65 -0
  382. casadi/include/coin/ClpCholeskyPardiso.hpp +67 -0
  383. casadi/include/coin/ClpConfig.h +17 -0
  384. casadi/include/coin/ClpConstraint.hpp +129 -0
  385. casadi/include/coin/ClpConstraintAmpl.hpp +109 -0
  386. casadi/include/coin/ClpConstraintLinear.hpp +113 -0
  387. casadi/include/coin/ClpConstraintQuadratic.hpp +123 -0
  388. casadi/include/coin/ClpDualRowDantzig.hpp +72 -0
  389. casadi/include/coin/ClpDualRowPivot.hpp +136 -0
  390. casadi/include/coin/ClpDualRowSteepest.hpp +160 -0
  391. casadi/include/coin/ClpDummyMatrix.hpp +186 -0
  392. casadi/include/coin/ClpDynamicExampleMatrix.hpp +199 -0
  393. casadi/include/coin/ClpDynamicMatrix.hpp +420 -0
  394. casadi/include/coin/ClpEventHandler.hpp +193 -0
  395. casadi/include/coin/ClpFactorization.hpp +556 -0
  396. casadi/include/coin/ClpGubDynamicMatrix.hpp +270 -0
  397. casadi/include/coin/ClpGubMatrix.hpp +373 -0
  398. casadi/include/coin/ClpInterior.hpp +622 -0
  399. casadi/include/coin/ClpLinearObjective.hpp +104 -0
  400. casadi/include/coin/ClpMatrixBase.hpp +561 -0
  401. casadi/include/coin/ClpMessage.hpp +131 -0
  402. casadi/include/coin/ClpModel.hpp +1442 -0
  403. casadi/include/coin/ClpNetworkMatrix.hpp +235 -0
  404. casadi/include/coin/ClpNode.hpp +364 -0
  405. casadi/include/coin/ClpNonLinearCost.hpp +432 -0
  406. casadi/include/coin/ClpObjective.hpp +142 -0
  407. casadi/include/coin/ClpPEDualRowDantzig.hpp +84 -0
  408. casadi/include/coin/ClpPEDualRowSteepest.hpp +100 -0
  409. casadi/include/coin/ClpPEPrimalColumnDantzig.hpp +71 -0
  410. casadi/include/coin/ClpPEPrimalColumnSteepest.hpp +107 -0
  411. casadi/include/coin/ClpPESimplex.hpp +231 -0
  412. casadi/include/coin/ClpPackedMatrix.hpp +778 -0
  413. casadi/include/coin/ClpParameters.hpp +132 -0
  414. casadi/include/coin/ClpPdcoBase.hpp +110 -0
  415. casadi/include/coin/ClpPlusMinusOneMatrix.hpp +565 -0
  416. casadi/include/coin/ClpPresolve.hpp +379 -0
  417. casadi/include/coin/ClpPrimalColumnDantzig.hpp +74 -0
  418. casadi/include/coin/ClpPrimalColumnPivot.hpp +163 -0
  419. casadi/include/coin/ClpPrimalColumnSteepest.hpp +281 -0
  420. casadi/include/coin/ClpQuadraticObjective.hpp +161 -0
  421. casadi/include/coin/ClpSimplex.hpp +2137 -0
  422. casadi/include/coin/ClpSimplexDual.hpp +304 -0
  423. casadi/include/coin/ClpSimplexNonlinear.hpp +117 -0
  424. casadi/include/coin/ClpSimplexOther.hpp +282 -0
  425. casadi/include/coin/ClpSimplexPrimal.hpp +244 -0
  426. casadi/include/coin/ClpSolve.hpp +505 -0
  427. casadi/include/coin/Clp_C_Interface.h +554 -0
  428. casadi/include/coin/CoinAlloc.hpp +179 -0
  429. casadi/include/coin/CoinBuild.hpp +159 -0
  430. casadi/include/coin/CoinDenseFactorization.hpp +452 -0
  431. casadi/include/coin/CoinDenseVector.hpp +401 -0
  432. casadi/include/coin/CoinDistance.hpp +51 -0
  433. casadi/include/coin/CoinError.hpp +274 -0
  434. casadi/include/coin/CoinFactorization.hpp +2178 -0
  435. casadi/include/coin/CoinFileIO.hpp +185 -0
  436. casadi/include/coin/CoinFinite.hpp +37 -0
  437. casadi/include/coin/CoinFloatEqual.hpp +204 -0
  438. casadi/include/coin/CoinHelperFunctions.hpp +1270 -0
  439. casadi/include/coin/CoinIndexedVector.hpp +1437 -0
  440. casadi/include/coin/CoinLpIO.hpp +836 -0
  441. casadi/include/coin/CoinMessage.hpp +95 -0
  442. casadi/include/coin/CoinMessageHandler.hpp +717 -0
  443. casadi/include/coin/CoinModel.hpp +1214 -0
  444. casadi/include/coin/CoinModelUseful.hpp +518 -0
  445. casadi/include/coin/CoinMpsIO.hpp +1142 -0
  446. casadi/include/coin/CoinOslFactorization.hpp +287 -0
  447. casadi/include/coin/CoinPackedMatrix.hpp +956 -0
  448. casadi/include/coin/CoinPackedVector.hpp +670 -0
  449. casadi/include/coin/CoinPackedVectorBase.hpp +274 -0
  450. casadi/include/coin/CoinParam.hpp +644 -0
  451. casadi/include/coin/CoinPragma.hpp +29 -0
  452. casadi/include/coin/CoinPresolveDoubleton.hpp +76 -0
  453. casadi/include/coin/CoinPresolveDual.hpp +84 -0
  454. casadi/include/coin/CoinPresolveDupcol.hpp +259 -0
  455. casadi/include/coin/CoinPresolveEmpty.hpp +120 -0
  456. casadi/include/coin/CoinPresolveFixed.hpp +185 -0
  457. casadi/include/coin/CoinPresolveForcing.hpp +69 -0
  458. casadi/include/coin/CoinPresolveImpliedFree.hpp +66 -0
  459. casadi/include/coin/CoinPresolveIsolated.hpp +59 -0
  460. casadi/include/coin/CoinPresolveMatrix.hpp +1996 -0
  461. casadi/include/coin/CoinPresolveMonitor.hpp +105 -0
  462. casadi/include/coin/CoinPresolvePsdebug.hpp +169 -0
  463. casadi/include/coin/CoinPresolveSingleton.hpp +115 -0
  464. casadi/include/coin/CoinPresolveSubst.hpp +103 -0
  465. casadi/include/coin/CoinPresolveTighten.hpp +58 -0
  466. casadi/include/coin/CoinPresolveTripleton.hpp +69 -0
  467. casadi/include/coin/CoinPresolveUseless.hpp +63 -0
  468. casadi/include/coin/CoinPresolveZeros.hpp +65 -0
  469. casadi/include/coin/CoinRational.hpp +43 -0
  470. casadi/include/coin/CoinSearchTree.hpp +523 -0
  471. casadi/include/coin/CoinShallowPackedVector.hpp +149 -0
  472. casadi/include/coin/CoinSignal.hpp +127 -0
  473. casadi/include/coin/CoinSimpFactorization.hpp +432 -0
  474. casadi/include/coin/CoinSmartPtr.hpp +548 -0
  475. casadi/include/coin/CoinSnapshot.hpp +572 -0
  476. casadi/include/coin/CoinSort.hpp +753 -0
  477. casadi/include/coin/CoinStructuredModel.hpp +270 -0
  478. casadi/include/coin/CoinTime.hpp +350 -0
  479. casadi/include/coin/CoinTypes.hpp +67 -0
  480. casadi/include/coin/CoinUtility.hpp +26 -0
  481. casadi/include/coin/CoinUtilsConfig.h +34 -0
  482. casadi/include/coin/CoinWarmStart.hpp +56 -0
  483. casadi/include/coin/CoinWarmStartBasis.hpp +468 -0
  484. casadi/include/coin/CoinWarmStartDual.hpp +180 -0
  485. casadi/include/coin/CoinWarmStartPrimalDual.hpp +233 -0
  486. casadi/include/coin/CoinWarmStartVector.hpp +523 -0
  487. casadi/include/coin/Coin_C_defines.h +149 -0
  488. casadi/include/coin/Idiot.hpp +327 -0
  489. casadi/include/coin/OsiAuxInfo.hpp +261 -0
  490. casadi/include/coin/OsiBranchingObject.hpp +1097 -0
  491. casadi/include/coin/OsiCbcSolverInterface.hpp +791 -0
  492. casadi/include/coin/OsiChooseVariable.hpp +645 -0
  493. casadi/include/coin/OsiClpSolverInterface.hpp +1604 -0
  494. casadi/include/coin/OsiColCut.hpp +322 -0
  495. casadi/include/coin/OsiCollections.hpp +34 -0
  496. casadi/include/coin/OsiConfig.h +19 -0
  497. casadi/include/coin/OsiCut.hpp +251 -0
  498. casadi/include/coin/OsiCuts.hpp +505 -0
  499. casadi/include/coin/OsiPresolve.hpp +272 -0
  500. casadi/include/coin/OsiRowCut.hpp +345 -0
  501. casadi/include/coin/OsiRowCutDebugger.hpp +190 -0
  502. casadi/include/coin/OsiSolverBranch.hpp +169 -0
  503. casadi/include/coin/OsiSolverInterface.hpp +2221 -0
  504. casadi/include/coin/OsiSolverParameters.hpp +144 -0
  505. casadi/include/coin/OsiUnitTests.hpp +390 -0
  506. casadi/include/coin-or/IpAlgBuilder.hpp +417 -0
  507. casadi/include/coin-or/IpAlgStrategy.hpp +201 -0
  508. casadi/include/coin-or/IpAlgTypes.hpp +64 -0
  509. casadi/include/coin-or/IpAugSystemSolver.hpp +212 -0
  510. casadi/include/coin-or/IpBlas.hpp +426 -0
  511. casadi/include/coin-or/IpCachedResults.hpp +897 -0
  512. casadi/include/coin-or/IpCompoundMatrix.hpp +423 -0
  513. casadi/include/coin-or/IpCompoundSymMatrix.hpp +348 -0
  514. casadi/include/coin-or/IpCompoundVector.hpp +395 -0
  515. casadi/include/coin-or/IpConvCheck.hpp +97 -0
  516. casadi/include/coin-or/IpDebug.hpp +167 -0
  517. casadi/include/coin-or/IpDenseVector.hpp +626 -0
  518. casadi/include/coin-or/IpDiagMatrix.hpp +158 -0
  519. casadi/include/coin-or/IpEqMultCalculator.hpp +76 -0
  520. casadi/include/coin-or/IpException.hpp +156 -0
  521. casadi/include/coin-or/IpExpansionMatrix.hpp +245 -0
  522. casadi/include/coin-or/IpGenTMatrix.hpp +290 -0
  523. casadi/include/coin-or/IpHessianUpdater.hpp +73 -0
  524. casadi/include/coin-or/IpIdentityMatrix.hpp +167 -0
  525. casadi/include/coin-or/IpIpoptAlg.hpp +257 -0
  526. casadi/include/coin-or/IpIpoptApplication.hpp +367 -0
  527. casadi/include/coin-or/IpIpoptCalculatedQuantities.hpp +1009 -0
  528. casadi/include/coin-or/IpIpoptData.hpp +966 -0
  529. casadi/include/coin-or/IpIpoptNLP.hpp +328 -0
  530. casadi/include/coin-or/IpIterateInitializer.hpp +68 -0
  531. casadi/include/coin-or/IpIteratesVector.hpp +840 -0
  532. casadi/include/coin-or/IpIterationOutput.hpp +78 -0
  533. casadi/include/coin-or/IpJournalist.hpp +573 -0
  534. casadi/include/coin-or/IpLapack.hpp +227 -0
  535. casadi/include/coin-or/IpLibraryLoader.hpp +76 -0
  536. casadi/include/coin-or/IpLineSearch.hpp +106 -0
  537. casadi/include/coin-or/IpLinearSolvers.h +46 -0
  538. casadi/include/coin-or/IpMatrix.hpp +434 -0
  539. casadi/include/coin-or/IpMuUpdate.hpp +77 -0
  540. casadi/include/coin-or/IpNLP.hpp +306 -0
  541. casadi/include/coin-or/IpNLPScaling.hpp +582 -0
  542. casadi/include/coin-or/IpObserver.hpp +422 -0
  543. casadi/include/coin-or/IpOptionsList.hpp +412 -0
  544. casadi/include/coin-or/IpOrigIpoptNLP.hpp +603 -0
  545. casadi/include/coin-or/IpPDSystemSolver.hpp +137 -0
  546. casadi/include/coin-or/IpReferenced.hpp +262 -0
  547. casadi/include/coin-or/IpRegOptions.hpp +1152 -0
  548. casadi/include/coin-or/IpReturnCodes.h +23 -0
  549. casadi/include/coin-or/IpReturnCodes.hpp +18 -0
  550. casadi/include/coin-or/IpReturnCodes.inc +71 -0
  551. casadi/include/coin-or/IpReturnCodes_inc.h +45 -0
  552. casadi/include/coin-or/IpScaledMatrix.hpp +291 -0
  553. casadi/include/coin-or/IpSearchDirCalculator.hpp +72 -0
  554. casadi/include/coin-or/IpSmartPtr.hpp +865 -0
  555. casadi/include/coin-or/IpSolveStatistics.hpp +210 -0
  556. casadi/include/coin-or/IpSparseSymLinearSolverInterface.hpp +260 -0
  557. casadi/include/coin-or/IpStdAugSystemSolver.cpp +555 -0
  558. casadi/include/coin-or/IpStdCInterface.h +428 -0
  559. casadi/include/coin-or/IpSumSymMatrix.hpp +186 -0
  560. casadi/include/coin-or/IpSymLinearSolver.hpp +141 -0
  561. casadi/include/coin-or/IpSymMatrix.hpp +167 -0
  562. casadi/include/coin-or/IpSymScaledMatrix.hpp +255 -0
  563. casadi/include/coin-or/IpSymTMatrix.hpp +275 -0
  564. casadi/include/coin-or/IpTNLP.hpp +820 -0
  565. casadi/include/coin-or/IpTNLPAdapter.hpp +648 -0
  566. casadi/include/coin-or/IpTNLPReducer.hpp +274 -0
  567. casadi/include/coin-or/IpTaggedObject.hpp +128 -0
  568. casadi/include/coin-or/IpTimedTask.hpp +218 -0
  569. casadi/include/coin-or/IpTimingStatistics.hpp +323 -0
  570. casadi/include/coin-or/IpTripletHelper.hpp +308 -0
  571. casadi/include/coin-or/IpTypes.h +81 -0
  572. casadi/include/coin-or/IpTypes.hpp +30 -0
  573. casadi/include/coin-or/IpUtils.hpp +166 -0
  574. casadi/include/coin-or/IpVector.hpp +892 -0
  575. casadi/include/coin-or/IpZeroSymMatrix.hpp +155 -0
  576. casadi/include/coin-or/IpoptConfig.h +45 -0
  577. casadi/include/coin-or/SensAlgorithm.hpp +114 -0
  578. casadi/include/coin-or/SensApplication.hpp +188 -0
  579. casadi/include/coin-or/SensBacksolver.hpp +36 -0
  580. casadi/include/coin-or/SensMeasurement.hpp +56 -0
  581. casadi/include/coin-or/SensPCalculator.hpp +137 -0
  582. casadi/include/coin-or/SensRegOp.hpp +21 -0
  583. casadi/include/coin-or/SensSchurData.hpp +182 -0
  584. casadi/include/coin-or/SensSchurDriver.hpp +118 -0
  585. casadi/include/coin-or/SensSimpleBacksolver.hpp +49 -0
  586. casadi/include/coin-or/SensStepCalc.hpp +85 -0
  587. casadi/include/coin-or/SensUtils.hpp +63 -0
  588. casadi/include/coin-or/metis/defs.h +161 -0
  589. casadi/include/coin-or/metis/macros.h +143 -0
  590. casadi/include/coin-or/metis/metis.h +37 -0
  591. casadi/include/coin-or/metis/proto.h +505 -0
  592. casadi/include/coin-or/metis/rename.h +418 -0
  593. casadi/include/coin-or/metis/struct.h +251 -0
  594. casadi/include/coin-or/mumps/dmumps_c.h +142 -0
  595. casadi/include/coin-or/mumps/mumps_c_types.h +72 -0
  596. casadi/include/coin-or/mumps/mumps_compat.h +27 -0
  597. casadi/include/coin-or/mumps/mumps_int_def.h +11 -0
  598. casadi/include/coin-or/mumps/mumps_mpi.h +67 -0
  599. casadi/include/d_blas.h +78 -0
  600. casadi/include/d_blas_64.h +73 -0
  601. casadi/include/fatrop/auxiliary/Common.hpp +34 -0
  602. casadi/include/fatrop/auxiliary/DynamicLib.hpp +34 -0
  603. casadi/include/fatrop/auxiliary/FatropOptions.hpp +68 -0
  604. casadi/include/fatrop/auxiliary/FatropVector.hpp +143 -0
  605. casadi/include/fatrop/auxiliary/LinearAlgebra.hpp +88 -0
  606. casadi/include/fatrop/auxiliary/VectorUtils.hpp +54 -0
  607. casadi/include/fatrop/blasfeo_wrapper/LinearAlgebraBlasfeo.hpp +493 -0
  608. casadi/include/fatrop/fatrop.hpp +39 -0
  609. casadi/include/fatrop/function_evaluation/CasadiCodegen.hpp +104 -0
  610. casadi/include/fatrop/function_evaluation/FunctionEvaluation.hpp +60 -0
  611. casadi/include/fatrop/json/json.h +946 -0
  612. casadi/include/fatrop/ocp/CasadiCApiUserdataWrap.hpp +87 -0
  613. casadi/include/fatrop/ocp/DuInfEvaluator.hpp +38 -0
  614. casadi/include/fatrop/ocp/FatropOCP.hpp +161 -0
  615. casadi/include/fatrop/ocp/FatropOCPBuilder.hpp +52 -0
  616. casadi/include/fatrop/ocp/FatropOCPResto.hpp +299 -0
  617. casadi/include/fatrop/ocp/OCP.hpp +82 -0
  618. casadi/include/fatrop/ocp/OCPAbstract.hpp +254 -0
  619. casadi/include/fatrop/ocp/OCPAdapter.hpp +197 -0
  620. casadi/include/fatrop/ocp/OCPCInterface.h +289 -0
  621. casadi/include/fatrop/ocp/OCPDims.hpp +60 -0
  622. casadi/include/fatrop/ocp/OCPInitializer.hpp +41 -0
  623. casadi/include/fatrop/ocp/OCPKKT.hpp +69 -0
  624. casadi/include/fatrop/ocp/OCPLSRiccati.hpp +198 -0
  625. casadi/include/fatrop/ocp/OCPLSScaler.hpp +66 -0
  626. casadi/include/fatrop/ocp/OCPLinearSolver.hpp +75 -0
  627. casadi/include/fatrop/ocp/OCPNoScaling.hpp +42 -0
  628. casadi/include/fatrop/ocp/OCPScalingMethod.hpp +42 -0
  629. casadi/include/fatrop/ocp/StageOCP.hpp +592 -0
  630. casadi/include/fatrop/ocp/StageOCPApplication.hpp +242 -0
  631. casadi/include/fatrop/ocp/StageOCPExpressions.hpp +182 -0
  632. casadi/include/fatrop/ocp/UStageEvalAbstract.hpp +168 -0
  633. casadi/include/fatrop/ocp/UStageOCPImpl.hpp +152 -0
  634. casadi/include/fatrop/quasi_newton/bfgs.hpp +159 -0
  635. casadi/include/fatrop/solver/AlgBuilder.hpp +76 -0
  636. casadi/include/fatrop/solver/AlgStrategy.hpp +33 -0
  637. casadi/include/fatrop/solver/FatropAlg.hpp +121 -0
  638. casadi/include/fatrop/solver/FatropData.hpp +188 -0
  639. casadi/include/fatrop/solver/FatropOptions.hpp +95 -0
  640. casadi/include/fatrop/solver/FatropPrinter.hpp +65 -0
  641. casadi/include/fatrop/solver/FatropStats.hpp +63 -0
  642. casadi/include/fatrop/solver/Filter.hpp +54 -0
  643. casadi/include/fatrop/solver/IterationData.hpp +56 -0
  644. casadi/include/fatrop/solver/LineSearch.hpp +86 -0
  645. casadi/include/fatrop/solver/NLPL1.hpp +263 -0
  646. casadi/include/fatrop/templates/NLPAlg.hpp +104 -0
  647. casadi/include/highs/HConfig.h +21 -0
  648. casadi/include/highs/Highs.h +1529 -0
  649. casadi/include/highs/filereaderlp/builder.hpp +25 -0
  650. casadi/include/highs/filereaderlp/def.hpp +19 -0
  651. casadi/include/highs/filereaderlp/model.hpp +68 -0
  652. casadi/include/highs/filereaderlp/reader.hpp +10 -0
  653. casadi/include/highs/interfaces/highs_c_api.h +2283 -0
  654. casadi/include/highs/io/Filereader.h +47 -0
  655. casadi/include/highs/io/FilereaderEms.h +33 -0
  656. casadi/include/highs/io/FilereaderLp.h +54 -0
  657. casadi/include/highs/io/FilereaderMps.h +30 -0
  658. casadi/include/highs/io/HMPSIO.h +81 -0
  659. casadi/include/highs/io/HMpsFF.h +235 -0
  660. casadi/include/highs/io/HighsIO.h +109 -0
  661. casadi/include/highs/io/LoadOptions.h +27 -0
  662. casadi/include/highs/ipm/IpxSolution.h +35 -0
  663. casadi/include/highs/ipm/IpxWrapper.h +73 -0
  664. casadi/include/highs/ipm/basiclu/basiclu.h +161 -0
  665. casadi/include/highs/ipm/basiclu/basiclu_factorize.h +247 -0
  666. casadi/include/highs/ipm/basiclu/basiclu_get_factors.h +108 -0
  667. casadi/include/highs/ipm/basiclu/basiclu_initialize.h +119 -0
  668. casadi/include/highs/ipm/basiclu/basiclu_obj_factorize.h +34 -0
  669. casadi/include/highs/ipm/basiclu/basiclu_obj_free.h +19 -0
  670. casadi/include/highs/ipm/basiclu/basiclu_obj_get_factors.h +34 -0
  671. casadi/include/highs/ipm/basiclu/basiclu_obj_initialize.h +46 -0
  672. casadi/include/highs/ipm/basiclu/basiclu_obj_solve_dense.h +29 -0
  673. casadi/include/highs/ipm/basiclu/basiclu_obj_solve_for_update.h +42 -0
  674. casadi/include/highs/ipm/basiclu/basiclu_obj_solve_sparse.h +32 -0
  675. casadi/include/highs/ipm/basiclu/basiclu_obj_update.h +31 -0
  676. casadi/include/highs/ipm/basiclu/basiclu_object.h +30 -0
  677. casadi/include/highs/ipm/basiclu/basiclu_solve_dense.h +75 -0
  678. casadi/include/highs/ipm/basiclu/basiclu_solve_for_update.h +169 -0
  679. casadi/include/highs/ipm/basiclu/basiclu_solve_sparse.h +112 -0
  680. casadi/include/highs/ipm/basiclu/basiclu_update.h +125 -0
  681. casadi/include/highs/ipm/basiclu/lu_def.h +39 -0
  682. casadi/include/highs/ipm/basiclu/lu_file.h +21 -0
  683. casadi/include/highs/ipm/basiclu/lu_internal.h +220 -0
  684. casadi/include/highs/ipm/basiclu/lu_list.h +168 -0
  685. casadi/include/highs/ipm/ipx/basiclu_kernel.h +20 -0
  686. casadi/include/highs/ipm/ipx/basiclu_wrapper.h +47 -0
  687. casadi/include/highs/ipm/ipx/basis.h +351 -0
  688. casadi/include/highs/ipm/ipx/conjugate_residuals.h +74 -0
  689. casadi/include/highs/ipm/ipx/control.h +163 -0
  690. casadi/include/highs/ipm/ipx/crossover.h +157 -0
  691. casadi/include/highs/ipm/ipx/diagonal_precond.h +45 -0
  692. casadi/include/highs/ipm/ipx/forrest_tomlin.h +102 -0
  693. casadi/include/highs/ipm/ipx/guess_basis.h +21 -0
  694. casadi/include/highs/ipm/ipx/indexed_vector.h +113 -0
  695. casadi/include/highs/ipm/ipx/info.h +27 -0
  696. casadi/include/highs/ipm/ipx/ipm.h +94 -0
  697. casadi/include/highs/ipm/ipx/ipx_c.h +47 -0
  698. casadi/include/highs/ipm/ipx/ipx_config.h +9 -0
  699. casadi/include/highs/ipm/ipx/ipx_info.h +111 -0
  700. casadi/include/highs/ipm/ipx/ipx_internal.h +88 -0
  701. casadi/include/highs/ipm/ipx/ipx_parameters.h +75 -0
  702. casadi/include/highs/ipm/ipx/ipx_status.h +57 -0
  703. casadi/include/highs/ipm/ipx/iterate.h +328 -0
  704. casadi/include/highs/ipm/ipx/kkt_solver.h +70 -0
  705. casadi/include/highs/ipm/ipx/kkt_solver_basis.h +66 -0
  706. casadi/include/highs/ipm/ipx/kkt_solver_diag.h +48 -0
  707. casadi/include/highs/ipm/ipx/linear_operator.h +26 -0
  708. casadi/include/highs/ipm/ipx/lp_solver.h +201 -0
  709. casadi/include/highs/ipm/ipx/lu_factorization.h +79 -0
  710. casadi/include/highs/ipm/ipx/lu_update.h +129 -0
  711. casadi/include/highs/ipm/ipx/maxvolume.h +54 -0
  712. casadi/include/highs/ipm/ipx/model.h +409 -0
  713. casadi/include/highs/ipm/ipx/multistream.h +52 -0
  714. casadi/include/highs/ipm/ipx/normal_matrix.h +44 -0
  715. casadi/include/highs/ipm/ipx/power_method.h +44 -0
  716. casadi/include/highs/ipm/ipx/sparse_matrix.h +195 -0
  717. casadi/include/highs/ipm/ipx/sparse_utils.h +58 -0
  718. casadi/include/highs/ipm/ipx/splitted_normal_matrix.h +63 -0
  719. casadi/include/highs/ipm/ipx/starting_basis.h +39 -0
  720. casadi/include/highs/ipm/ipx/symbolic_invert.h +29 -0
  721. casadi/include/highs/ipm/ipx/timer.h +24 -0
  722. casadi/include/highs/ipm/ipx/utils.h +39 -0
  723. casadi/include/highs/lp_data/HConst.h +305 -0
  724. casadi/include/highs/lp_data/HStruct.h +146 -0
  725. casadi/include/highs/lp_data/HighsAnalysis.h +26 -0
  726. casadi/include/highs/lp_data/HighsCallback.h +40 -0
  727. casadi/include/highs/lp_data/HighsCallbackStruct.h +62 -0
  728. casadi/include/highs/lp_data/HighsDebug.h +37 -0
  729. casadi/include/highs/lp_data/HighsInfo.h +322 -0
  730. casadi/include/highs/lp_data/HighsInfoDebug.h +30 -0
  731. casadi/include/highs/lp_data/HighsLp.h +101 -0
  732. casadi/include/highs/lp_data/HighsLpSolverObject.h +48 -0
  733. casadi/include/highs/lp_data/HighsLpUtils.h +266 -0
  734. casadi/include/highs/lp_data/HighsModelUtils.h +109 -0
  735. casadi/include/highs/lp_data/HighsOptions.h +1357 -0
  736. casadi/include/highs/lp_data/HighsRanging.h +46 -0
  737. casadi/include/highs/lp_data/HighsRuntimeOptions.h +276 -0
  738. casadi/include/highs/lp_data/HighsSolution.h +137 -0
  739. casadi/include/highs/lp_data/HighsSolutionDebug.h +90 -0
  740. casadi/include/highs/lp_data/HighsSolve.h +26 -0
  741. casadi/include/highs/lp_data/HighsStatus.h +32 -0
  742. casadi/include/highs/mip/HighsCliqueTable.h +318 -0
  743. casadi/include/highs/mip/HighsConflictPool.h +112 -0
  744. casadi/include/highs/mip/HighsCutGeneration.h +96 -0
  745. casadi/include/highs/mip/HighsCutPool.h +171 -0
  746. casadi/include/highs/mip/HighsDebugSol.h +135 -0
  747. casadi/include/highs/mip/HighsDomain.h +641 -0
  748. casadi/include/highs/mip/HighsDomainChange.h +51 -0
  749. casadi/include/highs/mip/HighsDynamicRowMatrix.h +107 -0
  750. casadi/include/highs/mip/HighsGFkSolve.h +441 -0
  751. casadi/include/highs/mip/HighsImplications.h +146 -0
  752. casadi/include/highs/mip/HighsLpAggregator.h +53 -0
  753. casadi/include/highs/mip/HighsLpRelaxation.h +360 -0
  754. casadi/include/highs/mip/HighsMipSolver.h +105 -0
  755. casadi/include/highs/mip/HighsMipSolverData.h +236 -0
  756. casadi/include/highs/mip/HighsModkSeparator.h +63 -0
  757. casadi/include/highs/mip/HighsNodeQueue.h +314 -0
  758. casadi/include/highs/mip/HighsObjectiveFunction.h +74 -0
  759. casadi/include/highs/mip/HighsPathSeparator.h +42 -0
  760. casadi/include/highs/mip/HighsPrimalHeuristics.h +68 -0
  761. casadi/include/highs/mip/HighsPseudocost.h +363 -0
  762. casadi/include/highs/mip/HighsRedcostFixing.h +45 -0
  763. casadi/include/highs/mip/HighsSearch.h +244 -0
  764. casadi/include/highs/mip/HighsSeparation.h +44 -0
  765. casadi/include/highs/mip/HighsSeparator.h +56 -0
  766. casadi/include/highs/mip/HighsTableauSeparator.h +37 -0
  767. casadi/include/highs/mip/HighsTransformedLp.h +66 -0
  768. casadi/include/highs/model/HighsHessian.h +54 -0
  769. casadi/include/highs/model/HighsHessianUtils.h +49 -0
  770. casadi/include/highs/model/HighsModel.h +52 -0
  771. casadi/include/highs/parallel/HighsBinarySemaphore.h +113 -0
  772. casadi/include/highs/parallel/HighsCacheAlign.h +87 -0
  773. casadi/include/highs/parallel/HighsCombinable.h +121 -0
  774. casadi/include/highs/parallel/HighsMutex.h +129 -0
  775. casadi/include/highs/parallel/HighsParallel.h +133 -0
  776. casadi/include/highs/parallel/HighsRaceTimer.h +43 -0
  777. casadi/include/highs/parallel/HighsSchedulerConstants.h +24 -0
  778. casadi/include/highs/parallel/HighsSpinMutex.h +53 -0
  779. casadi/include/highs/parallel/HighsSplitDeque.h +583 -0
  780. casadi/include/highs/parallel/HighsTask.h +175 -0
  781. casadi/include/highs/parallel/HighsTaskExecutor.h +209 -0
  782. casadi/include/highs/pdlp/CupdlpWrapper.h +93 -0
  783. casadi/include/highs/pdlp/cupdlp/cupdlp_cs.h +41 -0
  784. casadi/include/highs/pdlp/cupdlp/cupdlp_defs.h +423 -0
  785. casadi/include/highs/pdlp/cupdlp/cupdlp_linalg.h +183 -0
  786. casadi/include/highs/pdlp/cupdlp/cupdlp_proj.h +19 -0
  787. casadi/include/highs/pdlp/cupdlp/cupdlp_restart.h +31 -0
  788. casadi/include/highs/pdlp/cupdlp/cupdlp_scaling_cuda.h +28 -0
  789. casadi/include/highs/pdlp/cupdlp/cupdlp_solver.h +98 -0
  790. casadi/include/highs/pdlp/cupdlp/cupdlp_step.h +33 -0
  791. casadi/include/highs/pdlp/cupdlp/cupdlp_utils.c +1726 -0
  792. casadi/include/highs/pdqsort/pdqsort.h +532 -0
  793. casadi/include/highs/presolve/HPresolve.h +365 -0
  794. casadi/include/highs/presolve/HPresolveAnalysis.h +54 -0
  795. casadi/include/highs/presolve/HighsPostsolveStack.h +907 -0
  796. casadi/include/highs/presolve/HighsSymmetry.h +284 -0
  797. casadi/include/highs/presolve/ICrash.h +127 -0
  798. casadi/include/highs/presolve/ICrashUtil.h +65 -0
  799. casadi/include/highs/presolve/ICrashX.h +26 -0
  800. casadi/include/highs/presolve/PresolveComponent.h +93 -0
  801. casadi/include/highs/qpsolver/a_asm.hpp +67 -0
  802. casadi/include/highs/qpsolver/a_quass.hpp +19 -0
  803. casadi/include/highs/qpsolver/basis.hpp +150 -0
  804. casadi/include/highs/qpsolver/crashsolution.hpp +12 -0
  805. casadi/include/highs/qpsolver/dantzigpricing.hpp +72 -0
  806. casadi/include/highs/qpsolver/devexpricing.hpp +99 -0
  807. casadi/include/highs/qpsolver/eventhandler.hpp +23 -0
  808. casadi/include/highs/qpsolver/factor.hpp +400 -0
  809. casadi/include/highs/qpsolver/feasibility_bounded.hpp +105 -0
  810. casadi/include/highs/qpsolver/feasibility_highs.hpp +270 -0
  811. casadi/include/highs/qpsolver/gradient.hpp +39 -0
  812. casadi/include/highs/qpsolver/instance.hpp +63 -0
  813. casadi/include/highs/qpsolver/matrix.hpp +335 -0
  814. casadi/include/highs/qpsolver/perturbation.hpp +8 -0
  815. casadi/include/highs/qpsolver/pricing.hpp +15 -0
  816. casadi/include/highs/qpsolver/qpconst.hpp +27 -0
  817. casadi/include/highs/qpsolver/qpvector.hpp +235 -0
  818. casadi/include/highs/qpsolver/quass.hpp +20 -0
  819. casadi/include/highs/qpsolver/ratiotest.hpp +19 -0
  820. casadi/include/highs/qpsolver/runtime.hpp +38 -0
  821. casadi/include/highs/qpsolver/scaling.hpp +8 -0
  822. casadi/include/highs/qpsolver/settings.hpp +57 -0
  823. casadi/include/highs/qpsolver/snippets.hpp +29 -0
  824. casadi/include/highs/qpsolver/statistics.hpp +23 -0
  825. casadi/include/highs/qpsolver/steepestedgepricing.hpp +167 -0
  826. casadi/include/highs/simplex/HApp.h +422 -0
  827. casadi/include/highs/simplex/HEkk.h +403 -0
  828. casadi/include/highs/simplex/HEkkDual.h +515 -0
  829. casadi/include/highs/simplex/HEkkDualRHS.h +137 -0
  830. casadi/include/highs/simplex/HEkkDualRow.h +204 -0
  831. casadi/include/highs/simplex/HEkkPrimal.h +195 -0
  832. casadi/include/highs/simplex/HSimplex.h +45 -0
  833. casadi/include/highs/simplex/HSimplexDebug.h +51 -0
  834. casadi/include/highs/simplex/HSimplexNla.h +184 -0
  835. casadi/include/highs/simplex/HSimplexReport.h +24 -0
  836. casadi/include/highs/simplex/HighsSimplexAnalysis.h +503 -0
  837. casadi/include/highs/simplex/SimplexConst.h +274 -0
  838. casadi/include/highs/simplex/SimplexStruct.h +264 -0
  839. casadi/include/highs/simplex/SimplexTimer.h +427 -0
  840. casadi/include/highs/test/DevKkt.h +146 -0
  841. casadi/include/highs/test/KktCh2.h +82 -0
  842. casadi/include/highs/util/FactorTimer.h +224 -0
  843. casadi/include/highs/util/HFactor.h +587 -0
  844. casadi/include/highs/util/HFactorConst.h +84 -0
  845. casadi/include/highs/util/HFactorDebug.h +58 -0
  846. casadi/include/highs/util/HSet.h +92 -0
  847. casadi/include/highs/util/HVector.h +25 -0
  848. casadi/include/highs/util/HVectorBase.h +105 -0
  849. casadi/include/highs/util/HighsCDouble.h +310 -0
  850. casadi/include/highs/util/HighsComponent.h +56 -0
  851. casadi/include/highs/util/HighsDataStack.h +86 -0
  852. casadi/include/highs/util/HighsDisjointSets.h +110 -0
  853. casadi/include/highs/util/HighsHash.h +1277 -0
  854. casadi/include/highs/util/HighsHashTree.h +1443 -0
  855. casadi/include/highs/util/HighsInt.h +39 -0
  856. casadi/include/highs/util/HighsIntegers.h +215 -0
  857. casadi/include/highs/util/HighsLinearSumBounds.h +160 -0
  858. casadi/include/highs/util/HighsMatrixPic.h +40 -0
  859. casadi/include/highs/util/HighsMatrixSlice.h +564 -0
  860. casadi/include/highs/util/HighsMatrixUtils.h +57 -0
  861. casadi/include/highs/util/HighsMemoryAllocation.h +55 -0
  862. casadi/include/highs/util/HighsRandom.h +245 -0
  863. casadi/include/highs/util/HighsRbTree.h +455 -0
  864. casadi/include/highs/util/HighsSort.h +134 -0
  865. casadi/include/highs/util/HighsSparseMatrix.h +147 -0
  866. casadi/include/highs/util/HighsSparseVectorSum.h +98 -0
  867. casadi/include/highs/util/HighsSplay.h +138 -0
  868. casadi/include/highs/util/HighsTimer.h +343 -0
  869. casadi/include/highs/util/HighsUtils.h +210 -0
  870. casadi/include/highs/util/stringutil.h +44 -0
  871. casadi/include/highs/zstr/strict_fstream.hpp +237 -0
  872. casadi/include/highs/zstr/zstr.hpp +472 -0
  873. casadi/include/highs_export.h +43 -0
  874. casadi/include/hpipm_aux_mem.h +52 -0
  875. casadi/include/hpipm_aux_string.h +50 -0
  876. casadi/include/hpipm_common.h +76 -0
  877. casadi/include/hpipm_d_cast_qcqp.h +71 -0
  878. casadi/include/hpipm_d_cond.h +135 -0
  879. casadi/include/hpipm_d_cond_aux.h +92 -0
  880. casadi/include/hpipm_d_cond_qcqp.h +129 -0
  881. casadi/include/hpipm_d_core_qp_ipm.h +101 -0
  882. casadi/include/hpipm_d_core_qp_ipm_aux.h +68 -0
  883. casadi/include/hpipm_d_dense_qcqp.h +199 -0
  884. casadi/include/hpipm_d_dense_qcqp_dim.h +98 -0
  885. casadi/include/hpipm_d_dense_qcqp_ipm.h +193 -0
  886. casadi/include/hpipm_d_dense_qcqp_res.h +108 -0
  887. casadi/include/hpipm_d_dense_qcqp_sol.h +85 -0
  888. casadi/include/hpipm_d_dense_qcqp_utils.h +82 -0
  889. casadi/include/hpipm_d_dense_qp.h +207 -0
  890. casadi/include/hpipm_d_dense_qp_dim.h +92 -0
  891. casadi/include/hpipm_d_dense_qp_ipm.h +260 -0
  892. casadi/include/hpipm_d_dense_qp_kkt.h +72 -0
  893. casadi/include/hpipm_d_dense_qp_res.h +106 -0
  894. casadi/include/hpipm_d_dense_qp_sol.h +94 -0
  895. casadi/include/hpipm_d_dense_qp_utils.h +83 -0
  896. casadi/include/hpipm_d_ocp_qcqp.h +322 -0
  897. casadi/include/hpipm_d_ocp_qcqp_dim.h +130 -0
  898. casadi/include/hpipm_d_ocp_qcqp_ipm.h +192 -0
  899. casadi/include/hpipm_d_ocp_qcqp_red.h +118 -0
  900. casadi/include/hpipm_d_ocp_qcqp_res.h +115 -0
  901. casadi/include/hpipm_d_ocp_qcqp_sol.h +114 -0
  902. casadi/include/hpipm_d_ocp_qcqp_utils.h +81 -0
  903. casadi/include/hpipm_d_ocp_qp.h +306 -0
  904. casadi/include/hpipm_d_ocp_qp_dim.h +142 -0
  905. casadi/include/hpipm_d_ocp_qp_ipm.h +252 -0
  906. casadi/include/hpipm_d_ocp_qp_kkt.h +66 -0
  907. casadi/include/hpipm_d_ocp_qp_red.h +117 -0
  908. casadi/include/hpipm_d_ocp_qp_res.h +113 -0
  909. casadi/include/hpipm_d_ocp_qp_sol.h +128 -0
  910. casadi/include/hpipm_d_ocp_qp_utils.h +82 -0
  911. casadi/include/hpipm_d_part_cond.h +115 -0
  912. casadi/include/hpipm_d_part_cond_qcqp.h +106 -0
  913. casadi/include/hpipm_d_sim_erk.h +122 -0
  914. casadi/include/hpipm_d_sim_rk.h +71 -0
  915. casadi/include/hpipm_d_tree_ocp_qcqp.h +213 -0
  916. casadi/include/hpipm_d_tree_ocp_qcqp_dim.h +117 -0
  917. casadi/include/hpipm_d_tree_ocp_qcqp_ipm.h +191 -0
  918. casadi/include/hpipm_d_tree_ocp_qcqp_res.h +109 -0
  919. casadi/include/hpipm_d_tree_ocp_qcqp_sol.h +99 -0
  920. casadi/include/hpipm_d_tree_ocp_qcqp_utils.h +84 -0
  921. casadi/include/hpipm_d_tree_ocp_qp.h +195 -0
  922. casadi/include/hpipm_d_tree_ocp_qp_dim.h +111 -0
  923. casadi/include/hpipm_d_tree_ocp_qp_ipm.h +209 -0
  924. casadi/include/hpipm_d_tree_ocp_qp_kkt.h +52 -0
  925. casadi/include/hpipm_d_tree_ocp_qp_res.h +107 -0
  926. casadi/include/hpipm_d_tree_ocp_qp_sol.h +100 -0
  927. casadi/include/hpipm_d_tree_ocp_qp_utils.h +83 -0
  928. casadi/include/hpipm_m_dense_qp.h +68 -0
  929. casadi/include/hpipm_m_dense_qp_dim.h +68 -0
  930. casadi/include/hpipm_m_ocp_qp.h +49 -0
  931. casadi/include/hpipm_m_ocp_qp_ipm_hard.h +115 -0
  932. casadi/include/hpipm_m_ocp_qp_kkt.h +45 -0
  933. casadi/include/hpipm_s_cast_qcqp.h +72 -0
  934. casadi/include/hpipm_s_cond.h +137 -0
  935. casadi/include/hpipm_s_cond_aux.h +92 -0
  936. casadi/include/hpipm_s_cond_qcqp.h +130 -0
  937. casadi/include/hpipm_s_core_qp_ipm.h +101 -0
  938. casadi/include/hpipm_s_core_qp_ipm_aux.h +68 -0
  939. casadi/include/hpipm_s_dense_qcqp.h +200 -0
  940. casadi/include/hpipm_s_dense_qcqp_dim.h +99 -0
  941. casadi/include/hpipm_s_dense_qcqp_ipm.h +204 -0
  942. casadi/include/hpipm_s_dense_qcqp_res.h +109 -0
  943. casadi/include/hpipm_s_dense_qcqp_sol.h +86 -0
  944. casadi/include/hpipm_s_dense_qcqp_utils.h +83 -0
  945. casadi/include/hpipm_s_dense_qp.h +207 -0
  946. casadi/include/hpipm_s_dense_qp_dim.h +94 -0
  947. casadi/include/hpipm_s_dense_qp_ipm.h +260 -0
  948. casadi/include/hpipm_s_dense_qp_kkt.h +72 -0
  949. casadi/include/hpipm_s_dense_qp_res.h +107 -0
  950. casadi/include/hpipm_s_dense_qp_sol.h +94 -0
  951. casadi/include/hpipm_s_dense_qp_utils.h +84 -0
  952. casadi/include/hpipm_s_ocp_qcqp.h +322 -0
  953. casadi/include/hpipm_s_ocp_qcqp_dim.h +131 -0
  954. casadi/include/hpipm_s_ocp_qcqp_ipm.h +193 -0
  955. casadi/include/hpipm_s_ocp_qcqp_red.h +119 -0
  956. casadi/include/hpipm_s_ocp_qcqp_res.h +116 -0
  957. casadi/include/hpipm_s_ocp_qcqp_sol.h +115 -0
  958. casadi/include/hpipm_s_ocp_qcqp_utils.h +82 -0
  959. casadi/include/hpipm_s_ocp_qp.h +306 -0
  960. casadi/include/hpipm_s_ocp_qp_dim.h +141 -0
  961. casadi/include/hpipm_s_ocp_qp_ipm.h +252 -0
  962. casadi/include/hpipm_s_ocp_qp_kkt.h +66 -0
  963. casadi/include/hpipm_s_ocp_qp_red.h +118 -0
  964. casadi/include/hpipm_s_ocp_qp_res.h +115 -0
  965. casadi/include/hpipm_s_ocp_qp_sol.h +128 -0
  966. casadi/include/hpipm_s_ocp_qp_utils.h +83 -0
  967. casadi/include/hpipm_s_part_cond.h +115 -0
  968. casadi/include/hpipm_s_part_cond_qcqp.h +107 -0
  969. casadi/include/hpipm_s_sim_erk.h +121 -0
  970. casadi/include/hpipm_s_sim_rk.h +72 -0
  971. casadi/include/hpipm_s_tree_ocp_qcqp.h +213 -0
  972. casadi/include/hpipm_s_tree_ocp_qcqp_dim.h +118 -0
  973. casadi/include/hpipm_s_tree_ocp_qcqp_ipm.h +192 -0
  974. casadi/include/hpipm_s_tree_ocp_qcqp_res.h +110 -0
  975. casadi/include/hpipm_s_tree_ocp_qcqp_sol.h +97 -0
  976. casadi/include/hpipm_s_tree_ocp_qcqp_utils.h +85 -0
  977. casadi/include/hpipm_s_tree_ocp_qp.h +196 -0
  978. casadi/include/hpipm_s_tree_ocp_qp_dim.h +111 -0
  979. casadi/include/hpipm_s_tree_ocp_qp_ipm.h +208 -0
  980. casadi/include/hpipm_s_tree_ocp_qp_kkt.h +54 -0
  981. casadi/include/hpipm_s_tree_ocp_qp_res.h +108 -0
  982. casadi/include/hpipm_s_tree_ocp_qp_sol.h +98 -0
  983. casadi/include/hpipm_s_tree_ocp_qp_utils.h +84 -0
  984. casadi/include/hpipm_scenario_tree.h +70 -0
  985. casadi/include/hpipm_timing.h +67 -0
  986. casadi/include/hpipm_tree.h +76 -0
  987. casadi/include/licenses/CSparse/Doc/License.txt +19 -0
  988. casadi/include/licenses/FMI-Standard-2.0.2/LICENSE.txt +473 -0
  989. casadi/include/licenses/FMI-Standard-3.0/LICENSE.txt +464 -0
  990. casadi/include/licenses/blasfeo-external/LICENSE.txt +26 -0
  991. casadi/include/licenses/bonmin-external/Bonmin/LICENSE +87 -0
  992. casadi/include/licenses/bonmin-external/LICENSE +3 -0
  993. casadi/include/licenses/casadi/LICENSE/LICENSE.txt +165 -0
  994. casadi/include/licenses/casadi-sundials/LICENSE +64 -0
  995. casadi/include/licenses/casadi-sundials/cvodes/LICENSE +60 -0
  996. casadi/include/licenses/casadi-sundials/idas/LICENSE +59 -0
  997. casadi/include/licenses/casadi-sundials/kinsol/LICENSE +59 -0
  998. casadi/include/licenses/casadi-sundials/sundials/LICENSE +67 -0
  999. casadi/include/licenses/cbc-external/Cbc/LICENSE +239 -0
  1000. casadi/include/licenses/cbc-external/LICENSE +245 -0
  1001. casadi/include/licenses/cgl-external/Cgl/LICENSE +239 -0
  1002. casadi/include/licenses/cgl-external/LICENSE +245 -0
  1003. casadi/include/licenses/clp-external/Clp/LICENSE +239 -0
  1004. casadi/include/licenses/clp-external/LICENSE +245 -0
  1005. casadi/include/licenses/coinutils-external/CoinUtils/LICENSE +239 -0
  1006. casadi/include/licenses/coinutils-external/LICENSE +245 -0
  1007. casadi/include/licenses/fatrop-external/LICENSE.txt +165 -0
  1008. casadi/include/licenses/fatrop-external/external/blasfeo/LICENSE.txt +26 -0
  1009. casadi/include/licenses/fatrop-external/external/pybind11/LICENSE +29 -0
  1010. casadi/include/licenses/fatrop-external/misc/license_header.txt +17 -0
  1011. casadi/include/licenses/highs-external/LICENSE.txt +21 -0
  1012. casadi/include/licenses/highs-external/extern/filereaderlp/LICENSE +19 -0
  1013. casadi/include/licenses/highs-external/extern/pdqsort/license.txt +16 -0
  1014. casadi/include/licenses/hpipm-external/LICENSE.txt +26 -0
  1015. casadi/include/licenses/hpipm-external/experimental/andrea/prototype/code/plotregion/license.txt +24 -0
  1016. casadi/include/licenses/ipopt-external/LICENSE +260 -0
  1017. casadi/include/licenses/metis-external/LICENSE +87 -0
  1018. casadi/include/licenses/metis-external/metis-4.0/LICENSE +18 -0
  1019. casadi/include/licenses/mockups-external/LICENSE +21 -0
  1020. casadi/include/licenses/mumps-external/LICENSE +87 -0
  1021. casadi/include/licenses/mumps-external/MUMPS/LICENSE +50 -0
  1022. casadi/include/licenses/osi-external/LICENSE +245 -0
  1023. casadi/include/licenses/osi-external/Osi/LICENSE +239 -0
  1024. casadi/include/licenses/osqp-external/LICENSE +201 -0
  1025. casadi/include/licenses/osqp-external/lin_sys/direct/qdldl/amd/LICENSE +36 -0
  1026. casadi/include/licenses/osqp-external/lin_sys/direct/qdldl/qdldl_sources/LICENSE +201 -0
  1027. casadi/include/licenses/qpOASES/LICENSE.txt +503 -0
  1028. casadi/include/licenses/sleqp-external/LICENSE +165 -0
  1029. casadi/include/licenses/superscs-external/LICENSE.txt +24 -0
  1030. casadi/include/licenses/tinyxml2-9.0.0/LICENSE.txt +18 -0
  1031. casadi/include/licenses/trlib-external/LICENSE +21 -0
  1032. casadi/include/osqp/auxil.h +181 -0
  1033. casadi/include/osqp/constants.h +128 -0
  1034. casadi/include/osqp/cs.h +180 -0
  1035. casadi/include/osqp/ctrlc.h +56 -0
  1036. casadi/include/osqp/error.h +38 -0
  1037. casadi/include/osqp/glob_opts.h +167 -0
  1038. casadi/include/osqp/lin_alg.h +216 -0
  1039. casadi/include/osqp/lin_sys.h +54 -0
  1040. casadi/include/osqp/osqp.h +430 -0
  1041. casadi/include/osqp/osqp_configure.h +49 -0
  1042. casadi/include/osqp/polish.h +25 -0
  1043. casadi/include/osqp/proj.h +37 -0
  1044. casadi/include/osqp/scaling.h +44 -0
  1045. casadi/include/osqp/types.h +326 -0
  1046. casadi/include/osqp/util.h +222 -0
  1047. casadi/include/osqp/version.h +9 -0
  1048. casadi/include/qdldl/qdldl.h +169 -0
  1049. casadi/include/qdldl/qdldl_types.h +23 -0
  1050. casadi/include/s_blas.h +78 -0
  1051. casadi/include/s_blas_64.h +73 -0
  1052. casadi/include/sleqp/defs.h +58 -0
  1053. casadi/include/sleqp/export.h +43 -0
  1054. casadi/include/sleqp/pub_cmp.h +18 -0
  1055. casadi/include/sleqp/pub_dyn.h +140 -0
  1056. casadi/include/sleqp/pub_error.h +50 -0
  1057. casadi/include/sleqp/pub_func.h +257 -0
  1058. casadi/include/sleqp/pub_hess_struct.h +105 -0
  1059. casadi/include/sleqp/pub_iterate.h +88 -0
  1060. casadi/include/sleqp/pub_log.h +88 -0
  1061. casadi/include/sleqp/pub_lsq.h +158 -0
  1062. casadi/include/sleqp/pub_mem.h +52 -0
  1063. casadi/include/sleqp/pub_problem.h +213 -0
  1064. casadi/include/sleqp/pub_scale.h +150 -0
  1065. casadi/include/sleqp/pub_settings.h +162 -0
  1066. casadi/include/sleqp/pub_solver.h +155 -0
  1067. casadi/include/sleqp/pub_types.h +230 -0
  1068. casadi/include/sleqp/pub_working_set.h +135 -0
  1069. casadi/include/sleqp/sparse/pub_mat.h +153 -0
  1070. casadi/include/sleqp/sparse/pub_vec.h +336 -0
  1071. casadi/include/sleqp.h +38 -0
  1072. casadi/include/superscs/cones.h +185 -0
  1073. casadi/include/superscs/constants.h +144 -0
  1074. casadi/include/superscs/cs.h +109 -0
  1075. casadi/include/superscs/ctrlc.h +77 -0
  1076. casadi/include/superscs/directions.h +125 -0
  1077. casadi/include/superscs/glbopts.h +240 -0
  1078. casadi/include/superscs/linAlg.h +437 -0
  1079. casadi/include/superscs/linSys.h +205 -0
  1080. casadi/include/superscs/linsys/amatrix.h +77 -0
  1081. casadi/include/superscs/linsys/common.h +49 -0
  1082. casadi/include/superscs/normalize.h +138 -0
  1083. casadi/include/superscs/scs.h +656 -0
  1084. casadi/include/superscs/scs_blas.h +79 -0
  1085. casadi/include/superscs/scs_parser.h +187 -0
  1086. casadi/include/superscs/unit_test_util.h +210 -0
  1087. casadi/include/superscs/util.h +354 -0
  1088. casadi/include/tinyxml2.h +2380 -0
  1089. casadi/include/trlib/trlib_eigen_inverse.h +118 -0
  1090. casadi/include/trlib/trlib_krylov.h +493 -0
  1091. casadi/include/trlib/trlib_leftmost.h +181 -0
  1092. casadi/include/trlib/trlib_private.h +109 -0
  1093. casadi/include/trlib/trlib_quadratic_zero.h +57 -0
  1094. casadi/include/trlib/trlib_tri_factor.h +409 -0
  1095. casadi/include/trlib/trlib_types.h +36 -0
  1096. casadi/include/trlib.h +44 -0
  1097. casadi/lib/cmake/tinyxml2/tinyxml2-config-version.cmake +65 -0
  1098. casadi/lib/cmake/tinyxml2/tinyxml2-config.cmake +57 -0
  1099. casadi/lib/cmake/tinyxml2/tinyxml2-static-targets-release.cmake +19 -0
  1100. casadi/lib/cmake/tinyxml2/tinyxml2-static-targets.cmake +107 -0
  1101. casadi/lib/libtinyxml2.a +0 -0
  1102. casadi/lib/pkgconfig/tinyxml2.pc +10 -0
  1103. casadi/libCbc.3.10.11.dylib +0 -0
  1104. casadi/libCbc.3.dylib +0 -0
  1105. casadi/libCbc.dylib +0 -0
  1106. casadi/libCbc.la +35 -0
  1107. casadi/libCbcSolver.3.10.11.dylib +0 -0
  1108. casadi/libCbcSolver.3.dylib +0 -0
  1109. casadi/libCbcSolver.dylib +0 -0
  1110. casadi/libCbcSolver.la +35 -0
  1111. casadi/libCgl.1.10.8.dylib +0 -0
  1112. casadi/libCgl.1.dylib +0 -0
  1113. casadi/libCgl.dylib +0 -0
  1114. casadi/libCgl.la +35 -0
  1115. casadi/libClp.1.14.9.dylib +0 -0
  1116. casadi/libClp.1.dylib +0 -0
  1117. casadi/libClp.dylib +0 -0
  1118. casadi/libClp.la +35 -0
  1119. casadi/libClpSolver.1.14.9.dylib +0 -0
  1120. casadi/libClpSolver.1.dylib +0 -0
  1121. casadi/libClpSolver.dylib +0 -0
  1122. casadi/libClpSolver.la +35 -0
  1123. casadi/libCoinUtils.3.11.10.dylib +0 -0
  1124. casadi/libCoinUtils.3.dylib +0 -0
  1125. casadi/libCoinUtils.dylib +0 -0
  1126. casadi/libCoinUtils.la +35 -0
  1127. casadi/libOsi.1.13.9.dylib +0 -0
  1128. casadi/libOsi.1.dylib +0 -0
  1129. casadi/libOsi.dylib +0 -0
  1130. casadi/libOsi.la +35 -0
  1131. casadi/libOsiCbc.3.10.11.dylib +0 -0
  1132. casadi/libOsiCbc.3.dylib +0 -0
  1133. casadi/libOsiCbc.dylib +0 -0
  1134. casadi/libOsiCbc.la +35 -0
  1135. casadi/libOsiClp.1.14.9.dylib +0 -0
  1136. casadi/libOsiClp.1.dylib +0 -0
  1137. casadi/libOsiClp.dylib +0 -0
  1138. casadi/libOsiClp.la +35 -0
  1139. casadi/libOsiCommonTests.1.13.9.dylib +0 -0
  1140. casadi/libOsiCommonTests.1.dylib +0 -0
  1141. casadi/libOsiCommonTests.dylib +0 -0
  1142. casadi/libOsiCommonTests.la +35 -0
  1143. casadi/libblasfeo.dylib +0 -0
  1144. casadi/libbonmin.4.8.9.dylib +0 -0
  1145. casadi/libbonmin.4.dylib +0 -0
  1146. casadi/libbonmin.dylib +0 -0
  1147. casadi/libbonmin.la +35 -0
  1148. casadi/libc++.1.0.dylib +0 -0
  1149. casadi/libcasadi.3.7.dylib +0 -0
  1150. casadi/libcasadi.dylib +0 -0
  1151. casadi/libcasadi_conic_cbc.3.7.dylib +0 -0
  1152. casadi/libcasadi_conic_cbc.dylib +0 -0
  1153. casadi/libcasadi_conic_clp.3.7.dylib +0 -0
  1154. casadi/libcasadi_conic_clp.dylib +0 -0
  1155. casadi/libcasadi_conic_cplex.3.7.dylib +0 -0
  1156. casadi/libcasadi_conic_cplex.dylib +0 -0
  1157. casadi/libcasadi_conic_fatrop.3.7.dylib +0 -0
  1158. casadi/libcasadi_conic_fatrop.dylib +0 -0
  1159. casadi/libcasadi_conic_gurobi.3.7.dylib +0 -0
  1160. casadi/libcasadi_conic_gurobi.dylib +0 -0
  1161. casadi/libcasadi_conic_highs.3.7.dylib +0 -0
  1162. casadi/libcasadi_conic_highs.dylib +0 -0
  1163. casadi/libcasadi_conic_hpipm.3.7.dylib +0 -0
  1164. casadi/libcasadi_conic_hpipm.dylib +0 -0
  1165. casadi/libcasadi_conic_ipqp.3.7.dylib +0 -0
  1166. casadi/libcasadi_conic_ipqp.dylib +0 -0
  1167. casadi/libcasadi_conic_nlpsol.3.7.dylib +0 -0
  1168. casadi/libcasadi_conic_nlpsol.dylib +0 -0
  1169. casadi/libcasadi_conic_osqp.3.7.dylib +0 -0
  1170. casadi/libcasadi_conic_osqp.dylib +0 -0
  1171. casadi/libcasadi_conic_qpoases.3.7.dylib +0 -0
  1172. casadi/libcasadi_conic_qpoases.dylib +0 -0
  1173. casadi/libcasadi_conic_qrqp.3.7.dylib +0 -0
  1174. casadi/libcasadi_conic_qrqp.dylib +0 -0
  1175. casadi/libcasadi_conic_superscs.3.7.dylib +0 -0
  1176. casadi/libcasadi_conic_superscs.dylib +0 -0
  1177. casadi/libcasadi_importer_shell.3.7.dylib +0 -0
  1178. casadi/libcasadi_importer_shell.dylib +0 -0
  1179. casadi/libcasadi_integrator_collocation.3.7.dylib +0 -0
  1180. casadi/libcasadi_integrator_collocation.dylib +0 -0
  1181. casadi/libcasadi_integrator_cvodes.3.7.dylib +0 -0
  1182. casadi/libcasadi_integrator_cvodes.dylib +0 -0
  1183. casadi/libcasadi_integrator_idas.3.7.dylib +0 -0
  1184. casadi/libcasadi_integrator_idas.dylib +0 -0
  1185. casadi/libcasadi_integrator_rk.3.7.dylib +0 -0
  1186. casadi/libcasadi_integrator_rk.dylib +0 -0
  1187. casadi/libcasadi_interpolant_bspline.3.7.dylib +0 -0
  1188. casadi/libcasadi_interpolant_bspline.dylib +0 -0
  1189. casadi/libcasadi_interpolant_linear.3.7.dylib +0 -0
  1190. casadi/libcasadi_interpolant_linear.dylib +0 -0
  1191. casadi/libcasadi_linsol_csparse.3.7.dylib +0 -0
  1192. casadi/libcasadi_linsol_csparse.dylib +0 -0
  1193. casadi/libcasadi_linsol_csparsecholesky.3.7.dylib +0 -0
  1194. casadi/libcasadi_linsol_csparsecholesky.dylib +0 -0
  1195. casadi/libcasadi_linsol_lapacklu.3.7.dylib +0 -0
  1196. casadi/libcasadi_linsol_lapacklu.dylib +0 -0
  1197. casadi/libcasadi_linsol_lapackqr.3.7.dylib +0 -0
  1198. casadi/libcasadi_linsol_lapackqr.dylib +0 -0
  1199. casadi/libcasadi_linsol_ldl.3.7.dylib +0 -0
  1200. casadi/libcasadi_linsol_ldl.dylib +0 -0
  1201. casadi/libcasadi_linsol_lsqr.3.7.dylib +0 -0
  1202. casadi/libcasadi_linsol_lsqr.dylib +0 -0
  1203. casadi/libcasadi_linsol_ma27.3.7.dylib +0 -0
  1204. casadi/libcasadi_linsol_ma27.dylib +0 -0
  1205. casadi/libcasadi_linsol_mumps.3.7.dylib +0 -0
  1206. casadi/libcasadi_linsol_mumps.dylib +0 -0
  1207. casadi/libcasadi_linsol_qr.3.7.dylib +0 -0
  1208. casadi/libcasadi_linsol_qr.dylib +0 -0
  1209. casadi/libcasadi_linsol_symbolicqr.3.7.dylib +0 -0
  1210. casadi/libcasadi_linsol_symbolicqr.dylib +0 -0
  1211. casadi/libcasadi_linsol_tridiag.3.7.dylib +0 -0
  1212. casadi/libcasadi_linsol_tridiag.dylib +0 -0
  1213. casadi/libcasadi_nlpsol_ampl.3.7.dylib +0 -0
  1214. casadi/libcasadi_nlpsol_ampl.dylib +0 -0
  1215. casadi/libcasadi_nlpsol_blocksqp.3.7.dylib +0 -0
  1216. casadi/libcasadi_nlpsol_blocksqp.dylib +0 -0
  1217. casadi/libcasadi_nlpsol_bonmin.3.7.dylib +0 -0
  1218. casadi/libcasadi_nlpsol_bonmin.dylib +0 -0
  1219. casadi/libcasadi_nlpsol_fatrop.3.7.dylib +0 -0
  1220. casadi/libcasadi_nlpsol_fatrop.dylib +0 -0
  1221. casadi/libcasadi_nlpsol_feasiblesqpmethod.3.7.dylib +0 -0
  1222. casadi/libcasadi_nlpsol_feasiblesqpmethod.dylib +0 -0
  1223. casadi/libcasadi_nlpsol_ipopt.3.7.dylib +0 -0
  1224. casadi/libcasadi_nlpsol_ipopt.dylib +0 -0
  1225. casadi/libcasadi_nlpsol_knitro.3.7.dylib +0 -0
  1226. casadi/libcasadi_nlpsol_knitro.dylib +0 -0
  1227. casadi/libcasadi_nlpsol_madnlp.3.7.dylib +0 -0
  1228. casadi/libcasadi_nlpsol_madnlp.dylib +0 -0
  1229. casadi/libcasadi_nlpsol_qrsqp.3.7.dylib +0 -0
  1230. casadi/libcasadi_nlpsol_qrsqp.dylib +0 -0
  1231. casadi/libcasadi_nlpsol_scpgen.3.7.dylib +0 -0
  1232. casadi/libcasadi_nlpsol_scpgen.dylib +0 -0
  1233. casadi/libcasadi_nlpsol_sleqp.3.7.dylib +0 -0
  1234. casadi/libcasadi_nlpsol_sleqp.dylib +0 -0
  1235. casadi/libcasadi_nlpsol_snopt.3.7.dylib +0 -0
  1236. casadi/libcasadi_nlpsol_snopt.dylib +0 -0
  1237. casadi/libcasadi_nlpsol_sqpmethod.3.7.dylib +0 -0
  1238. casadi/libcasadi_nlpsol_sqpmethod.dylib +0 -0
  1239. casadi/libcasadi_rootfinder_fast_newton.3.7.dylib +0 -0
  1240. casadi/libcasadi_rootfinder_fast_newton.dylib +0 -0
  1241. casadi/libcasadi_rootfinder_kinsol.3.7.dylib +0 -0
  1242. casadi/libcasadi_rootfinder_kinsol.dylib +0 -0
  1243. casadi/libcasadi_rootfinder_newton.3.7.dylib +0 -0
  1244. casadi/libcasadi_rootfinder_newton.dylib +0 -0
  1245. casadi/libcasadi_rootfinder_nlpsol.3.7.dylib +0 -0
  1246. casadi/libcasadi_rootfinder_nlpsol.dylib +0 -0
  1247. casadi/libcasadi_sundials_common.3.7.dylib +0 -0
  1248. casadi/libcasadi_sundials_common.dylib +0 -0
  1249. casadi/libcasadi_xmlfile_tinyxml.3.7.dylib +0 -0
  1250. casadi/libcasadi_xmlfile_tinyxml.dylib +0 -0
  1251. casadi/libcoinmetis.2.dylib +0 -0
  1252. casadi/libcoinmetis.dylib +0 -0
  1253. casadi/libcoinmetis.la +41 -0
  1254. casadi/libcoinmumps.3.dylib +0 -0
  1255. casadi/libcoinmumps.dylib +0 -0
  1256. casadi/libcoinmumps.la +41 -0
  1257. casadi/libcplex_adaptor.dylib +0 -0
  1258. casadi/libfatrop.dylib +0 -0
  1259. casadi/libgcc_s.1.1.dylib +0 -0
  1260. casadi/libgcc_s.1.dylib +0 -0
  1261. casadi/libgfortran.5.dylib +0 -0
  1262. casadi/libgurobi_adaptor.dylib +0 -0
  1263. casadi/libhighs.1.7.dylib +0 -0
  1264. casadi/libhighs.1.dylib +0 -0
  1265. casadi/libhighs.dylib +0 -0
  1266. casadi/libhpipm.dylib +0 -0
  1267. casadi/libindirect.a +0 -0
  1268. casadi/libipopt.3.dylib +0 -0
  1269. casadi/libipopt.dylib +0 -0
  1270. casadi/libipopt.la +41 -0
  1271. casadi/liblinsys.a +0 -0
  1272. casadi/libmatlab_ipc.dylib +0 -0
  1273. casadi/libosqp.a +0 -0
  1274. casadi/libosqp.dylib +0 -0
  1275. casadi/libqdldl.a +0 -0
  1276. casadi/libqdldl.dylib +0 -0
  1277. casadi/libquadmath.0.dylib +0 -0
  1278. casadi/libsipopt.3.dylib +0 -0
  1279. casadi/libsipopt.dylib +0 -0
  1280. casadi/libsipopt.la +41 -0
  1281. casadi/libsleqp.1.0.1.dylib +0 -0
  1282. casadi/libsleqp.dylib +0 -0
  1283. casadi/libsuperscs.a +0 -0
  1284. casadi/libtrlib.0.4.dylib +0 -0
  1285. casadi/libtrlib.dylib +0 -0
  1286. casadi/libz.1.2.13.dylib +0 -0
  1287. casadi/pkgconfig/bonmin.pc +12 -0
  1288. casadi/pkgconfig/casadi.pc +12 -0
  1289. casadi/pkgconfig/cbc.pc +12 -0
  1290. casadi/pkgconfig/cgl.pc +12 -0
  1291. casadi/pkgconfig/clp.pc +12 -0
  1292. casadi/pkgconfig/coinmetis.pc +13 -0
  1293. casadi/pkgconfig/coinmumps.pc +15 -0
  1294. casadi/pkgconfig/coinutils.pc +12 -0
  1295. casadi/pkgconfig/highs.pc +12 -0
  1296. casadi/pkgconfig/ipopt.pc +15 -0
  1297. casadi/pkgconfig/osi-cbc.pc +12 -0
  1298. casadi/pkgconfig/osi-clp.pc +12 -0
  1299. casadi/pkgconfig/osi-unittests.pc +12 -0
  1300. casadi/pkgconfig/osi.pc +12 -0
  1301. casadi/pkgconfig/sleqp.pc +10 -0
  1302. casadi/tools/__init__.py +52 -0
  1303. casadi/tools/bounds.py +107 -0
  1304. casadi/tools/graph/__init__.py +35 -0
  1305. casadi/tools/graph/graph.py +747 -0
  1306. casadi/tools/in_out.py +89 -0
  1307. casadi/tools/structure.py +1446 -0
  1308. casadi/tools/structure3.py +1441 -0
  1309. casadi-3.6.7.dist-info/METADATA +45 -0
  1310. casadi-3.6.7.dist-info/RECORD +1312 -0
  1311. casadi-3.6.7.dist-info/WHEEL +5 -0
  1312. dummy.txt +1 -0
@@ -0,0 +1,113 @@
1
+ /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
2
+ /* */
3
+ /* This file is part of the HiGHS linear optimization suite */
4
+ /* */
5
+ /* Written and engineered 2008-2021 at the University of Edinburgh */
6
+ /* */
7
+ /* Available as open-source under the MIT License */
8
+ /* */
9
+ /* Authors: Julian Hall, Ivet Galabova, Qi Huangfu, Leona Gottwald */
10
+ /* and Michael Feldmeier */
11
+ /* */
12
+ /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
13
+
14
+ #ifndef HIGHS_BINARY_SEMAPHORE_H_
15
+ #define HIGHS_BINARY_SEMAPHORE_H_
16
+
17
+ #include <atomic>
18
+ #include <chrono>
19
+ #include <condition_variable>
20
+ #include <mutex>
21
+ #include <thread>
22
+
23
+ #include "parallel/HighsCacheAlign.h"
24
+ #include "parallel/HighsSchedulerConstants.h"
25
+ #include "parallel/HighsSpinMutex.h"
26
+
27
+ class HighsBinarySemaphore {
28
+ struct Data {
29
+ std::atomic<int> count;
30
+ alignas(64) std::mutex mutex;
31
+ std::condition_variable condvar;
32
+
33
+ Data(int init) : count(init) {}
34
+ };
35
+
36
+ highs::cache_aligned::unique_ptr<Data> data_;
37
+
38
+ public:
39
+ HighsBinarySemaphore(bool init = false)
40
+ : data_(highs::cache_aligned::make_unique<Data>(init)) {}
41
+
42
+ void release() {
43
+ int prev = data_->count.exchange(1, std::memory_order_release);
44
+ if (prev < 0) {
45
+ std::unique_lock<std::mutex> lg{data_->mutex};
46
+ data_->condvar.notify_one();
47
+ }
48
+ }
49
+
50
+ bool try_acquire() {
51
+ int expected = 1;
52
+ return data_->count.compare_exchange_weak(
53
+ expected, 0, std::memory_order_acquire, std::memory_order_relaxed);
54
+ }
55
+
56
+ void acquire() {
57
+ if (try_acquire()) return;
58
+
59
+ auto tStart = std::chrono::high_resolution_clock::now();
60
+ int spinIters = 10;
61
+ while (true) {
62
+ for (int i = 0; i < spinIters; ++i) {
63
+ if (data_->count.load(std::memory_order_relaxed) == 1) {
64
+ if (try_acquire()) return;
65
+ }
66
+ HighsSpinMutex::yieldProcessor();
67
+ }
68
+
69
+ auto numMicroSecs =
70
+ std::chrono::duration_cast<std::chrono::microseconds>(
71
+ std::chrono::high_resolution_clock::now() - tStart)
72
+ .count();
73
+
74
+ if (numMicroSecs < HighsSchedulerConstants::kMicroSecsBeforeSleep)
75
+ spinIters *= 2;
76
+ else
77
+ break;
78
+ }
79
+
80
+ std::unique_lock<std::mutex> lg{data_->mutex};
81
+ int prev = data_->count.exchange(-1, std::memory_order_relaxed);
82
+ if (prev == 1) {
83
+ data_->count.store(0, std::memory_order_relaxed);
84
+ return;
85
+ }
86
+
87
+ do {
88
+ data_->condvar.wait(lg);
89
+ } while (data_->count.load(std::memory_order_relaxed) != 1);
90
+
91
+ data_->count.store(0, std::memory_order_relaxed);
92
+ }
93
+
94
+ std::unique_lock<std::mutex> lockMutexForAcquire() {
95
+ return std::unique_lock<std::mutex>{data_->mutex};
96
+ }
97
+
98
+ void acquire(std::unique_lock<std::mutex> lockGuard) {
99
+ int prev = data_->count.exchange(-1, std::memory_order_relaxed);
100
+ if (prev == 1) {
101
+ data_->count.store(0, std::memory_order_relaxed);
102
+ return;
103
+ }
104
+
105
+ do {
106
+ data_->condvar.wait(lockGuard);
107
+ } while (data_->count.load(std::memory_order_relaxed) != 1);
108
+
109
+ data_->count.store(0, std::memory_order_relaxed);
110
+ }
111
+ };
112
+
113
+ #endif
@@ -0,0 +1,87 @@
1
+ /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
2
+ /* */
3
+ /* This file is part of the HiGHS linear optimization suite */
4
+ /* */
5
+ /* Written and engineered 2008-2021 at the University of Edinburgh */
6
+ /* */
7
+ /* Available as open-source under the MIT License */
8
+ /* */
9
+ /* Authors: Julian Hall, Ivet Galabova, Qi Huangfu, Leona Gottwald */
10
+ /* and Michael Feldmeier */
11
+ /* */
12
+ /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
13
+ #ifndef HIGHS_CACHE_ALIGN_H_
14
+ #define HIGHS_CACHE_ALIGN_H_
15
+
16
+ #include <cstddef>
17
+ #include <cstdint>
18
+ #include <cstring>
19
+ #include <memory>
20
+
21
+ namespace highs {
22
+
23
+ struct cache_aligned {
24
+ static constexpr std::size_t alignment() { return 64; }
25
+
26
+ static void* alloc(std::size_t size) {
27
+ using std::uintptr_t;
28
+
29
+ uintptr_t ptr =
30
+ reinterpret_cast<uintptr_t>(::operator new(size + alignment()));
31
+
32
+ char* aligned_ptr = reinterpret_cast<char*>((ptr | (alignment() - 1)) + 1);
33
+ std::memcpy(aligned_ptr - sizeof(uintptr_t), &ptr, sizeof(uintptr_t));
34
+ return reinterpret_cast<void*>(aligned_ptr);
35
+ }
36
+
37
+ static void free(void* aligned_ptr) {
38
+ using std::uintptr_t;
39
+
40
+ if (aligned_ptr) {
41
+ void* freeptr;
42
+ std::memcpy(&freeptr,
43
+ reinterpret_cast<char*>(aligned_ptr) - sizeof(uintptr_t),
44
+ sizeof(uintptr_t));
45
+ ::operator delete(freeptr);
46
+ }
47
+ }
48
+
49
+ template <typename T>
50
+ struct Deleter {
51
+ void operator()(T* ptr) const {
52
+ ptr->~T();
53
+ free(ptr);
54
+ }
55
+ };
56
+
57
+ template <typename T>
58
+ struct Deleter<T[]> {
59
+ void operator()(T* ptr) const { free(ptr); }
60
+ };
61
+
62
+ template <typename T>
63
+ using unique_ptr = std::unique_ptr<T, Deleter<T>>;
64
+
65
+ template <typename T>
66
+ using shared_ptr = std::shared_ptr<T>;
67
+
68
+ template <typename T, typename... Args>
69
+ static shared_ptr<T> make_shared(Args&&... args) {
70
+ return shared_ptr<T>(new (alloc(sizeof(T))) T(std::forward<Args>(args)...),
71
+ Deleter<T>());
72
+ }
73
+
74
+ template <typename T, typename... Args>
75
+ static unique_ptr<T> make_unique(Args&&... args) {
76
+ return unique_ptr<T>(new (alloc(sizeof(T))) T(std::forward<Args>(args)...));
77
+ }
78
+
79
+ template <typename T, typename... Args>
80
+ static unique_ptr<T[]> make_unique_array(std::size_t N) {
81
+ return unique_ptr<T[]>(static_cast<T*>(alloc(sizeof(T) * N)));
82
+ }
83
+ };
84
+
85
+ } // namespace highs
86
+
87
+ #endif
@@ -0,0 +1,121 @@
1
+ /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
2
+ /* */
3
+ /* This file is part of the HiGHS linear optimization suite */
4
+ /* */
5
+ /* Written and engineered 2008-2021 at the University of Edinburgh */
6
+ /* */
7
+ /* Available as open-source under the MIT License */
8
+ /* */
9
+ /* Authors: Julian Hall, Ivet Galabova, Qi Huangfu, Leona Gottwald */
10
+ /* and Michael Feldmeier */
11
+ /* */
12
+ /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
13
+
14
+ #ifndef HIGHS_COMBINABLE_H_
15
+ #define HIGHS_COMBINABLE_H_
16
+
17
+ #include <functional>
18
+
19
+ #include "parallel/HighsCacheAlign.h"
20
+ #include "parallel/HighsTaskExecutor.h"
21
+
22
+ template <typename T, typename FConstruct_ = std::function<T(void)>>
23
+ class HighsCombinable {
24
+ FConstruct_ construct_;
25
+ struct PaddedData {
26
+ alignas(highs::cache_aligned::alignment()) bool initialized_;
27
+ T data_;
28
+ };
29
+ int numThreads;
30
+ highs::cache_aligned::unique_ptr<PaddedData[]> threadCopies_;
31
+
32
+ public:
33
+ HighsCombinable()
34
+ : construct_([]() { return T(); }),
35
+ numThreads(HighsTaskExecutor::getNumWorkerThreads()),
36
+ threadCopies_(
37
+ highs::cache_aligned::make_unique_array<PaddedData>(numThreads)) {
38
+ for (int i = 0; i < numThreads; ++i) threadCopies_[i].initialized_ = false;
39
+ }
40
+
41
+ template <typename FConstruct>
42
+ HighsCombinable(FConstruct&& fConstruct)
43
+ : construct_(std::forward<FConstruct>(fConstruct)),
44
+ numThreads(HighsTaskExecutor::getNumWorkerThreads()),
45
+ threadCopies_(
46
+ highs::cache_aligned::make_unique_array<PaddedData>(numThreads)) {
47
+ for (int i = 0; i < numThreads; ++i) threadCopies_[i].initialized_ = false;
48
+ }
49
+
50
+ HighsCombinable<T, FConstruct_>& operator=(
51
+ HighsCombinable<T, FConstruct_>&&) = default;
52
+ HighsCombinable(HighsCombinable<T, FConstruct_>&&) = default;
53
+
54
+ void clear() {
55
+ for (int i = 0; i < numThreads; ++i) {
56
+ if (threadCopies_[i].initialized_) {
57
+ threadCopies_[i].initialized_ = false;
58
+ threadCopies_[i].data_.~T();
59
+ }
60
+ }
61
+ }
62
+
63
+ T& local() {
64
+ int threadId = HighsTaskExecutor::getThisWorkerDeque()->getOwnerId();
65
+ if (!threadCopies_[threadId].initialized_) {
66
+ threadCopies_[threadId].initialized_ = true;
67
+ new (&threadCopies_[threadId].data_) T(construct_());
68
+ }
69
+
70
+ return threadCopies_[threadId].data_;
71
+ }
72
+
73
+ const T& local() const {
74
+ int threadId = HighsTaskExecutor::getThisWorkerDeque()->getOwnerId();
75
+ if (!threadCopies_[threadId].initialized_) {
76
+ threadCopies_[threadId].initialized_ = true;
77
+ new (&threadCopies_[threadId].data_) T(construct_());
78
+ }
79
+
80
+ return threadCopies_[threadId].data_;
81
+ }
82
+
83
+ template <typename FCombine>
84
+ void combine_each(FCombine&& combine) {
85
+ for (int i = 0; i < numThreads; ++i)
86
+ if (threadCopies_[i].initialized_) combine(threadCopies_[i].data_);
87
+ }
88
+
89
+ template <typename FCombine>
90
+ T combine(FCombine&& combine) {
91
+ T combined;
92
+ int i;
93
+ for (i = 0; i < numThreads; ++i) {
94
+ if (threadCopies_[i].initialized_) {
95
+ combined = std::move(threadCopies_[i].data_);
96
+ break;
97
+ }
98
+ }
99
+
100
+ for (++i; i < numThreads; ++i) {
101
+ if (threadCopies_[i].initialized_) {
102
+ combined =
103
+ combine(std::move(combined), std::move(threadCopies_[i].data_));
104
+ break;
105
+ }
106
+ }
107
+
108
+ return combined;
109
+ }
110
+
111
+ ~HighsCombinable() {
112
+ if (threadCopies_) clear();
113
+ }
114
+ };
115
+
116
+ template <typename U, typename FConstruct>
117
+ HighsCombinable<U, FConstruct> makeHighsCombinable(FConstruct&& fconstruct) {
118
+ return HighsCombinable<U, FConstruct>(std::forward<FConstruct>(fconstruct));
119
+ }
120
+
121
+ #endif
@@ -0,0 +1,129 @@
1
+ /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
2
+ /* */
3
+ /* This file is part of the HiGHS linear optimization suite */
4
+ /* */
5
+ /* Written and engineered 2008-2021 at the University of Edinburgh */
6
+ /* */
7
+ /* Available as open-source under the MIT License */
8
+ /* */
9
+ /* Authors: Julian Hall, Ivet Galabova, Qi Huangfu, Leona Gottwald */
10
+ /* and Michael Feldmeier */
11
+ /* */
12
+ /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
13
+
14
+ #ifndef HIGHS_MUTEX_H_
15
+ #define HIGHS_MUTEX_H_
16
+
17
+ #include "parallel/HighsSpinMutex.h"
18
+ #include "parallel/HighsTaskExecutor.h"
19
+
20
+ class HighsMutex {
21
+ std::atomic<unsigned int> state{0u};
22
+ enum Constants { kNumSpinTries = 10 };
23
+
24
+ public:
25
+ bool try_lock() {
26
+ unsigned int uncontendedState = 0;
27
+ return state.compare_exchange_weak(uncontendedState, 1,
28
+ std::memory_order_acquire,
29
+ std::memory_order_relaxed);
30
+ }
31
+
32
+ void lock() {
33
+ // First try to acquire the lock directly to have a fast path for
34
+ // uncontended access
35
+ if (try_lock()) return;
36
+
37
+ // Now spin a few times to check if the lock becomes available
38
+ for (int i = 0; i < kNumSpinTries; ++i) {
39
+ if (state.load(std::memory_order_relaxed) == 0) {
40
+ if (try_lock()) return;
41
+ }
42
+
43
+ HighsSpinMutex::yieldProcessor();
44
+ }
45
+
46
+ // Lock is still not available, so now start a loop where we yield
47
+ // to the scheduler after each time we observe the lock as unavailable
48
+ // so that we can see if there are other tasks and then check
49
+ // the lock again. We do so for some microseconds which we measure starting
50
+ // from now.
51
+ HighsSplitDeque* thisDeque = HighsTaskExecutor::getThisWorkerDeque();
52
+ auto tStart = std::chrono::high_resolution_clock::now();
53
+
54
+ while (true) {
55
+ int numTries = kNumSpinTries;
56
+
57
+ for (int i = 0; i < numTries; ++i) {
58
+ if (state.load(std::memory_order_relaxed) == 0) {
59
+ if (try_lock()) return;
60
+ }
61
+ thisDeque->yield();
62
+ }
63
+
64
+ auto numMicroSecs =
65
+ std::chrono::duration_cast<std::chrono::microseconds>(
66
+ std::chrono::high_resolution_clock::now() - tStart)
67
+ .count();
68
+
69
+ if (numMicroSecs < HighsSchedulerConstants::kMicroSecsBeforeGlobalSync)
70
+ numTries *= 2;
71
+ else
72
+ break;
73
+ }
74
+
75
+ // The lock is still not available, now we will try to set ourselves as the
76
+ // next worker to acquire the lock and start wait until we are
77
+ // notified by the current worker holding the lock.
78
+ unsigned int ownerId = (thisDeque->getOwnerId() + 1) << 1;
79
+ unsigned int s = state.load(std::memory_order_relaxed);
80
+ while (true) {
81
+ // as long as we observe that the lock is available we try to lock it, so
82
+ // that we are guaranteed to have a locked state stored within s.
83
+ while (s == 0)
84
+ if (state.compare_exchange_weak(s, 1, std::memory_order_acquire,
85
+ std::memory_order_relaxed))
86
+ return;
87
+
88
+ if (s & 1u) {
89
+ if (state.compare_exchange_weak(s, ownerId | 1,
90
+ std::memory_order_release,
91
+ std::memory_order_relaxed))
92
+ break;
93
+ } else {
94
+ // if we observe that the semaphore is unlocked but has its state not
95
+ // equal to zero it means another worker has just been notified to take
96
+ // the lock, but not yet taken it. Before we can set ourselves as the
97
+ // next worker we need to wait for its state to be in locked state.
98
+ HighsSpinMutex::yieldProcessor();
99
+ s = state.load(std::memory_order_relaxed);
100
+ }
101
+ }
102
+
103
+ // once we are here we have successfully set ourselves as the next worker
104
+ // and once the previous worker released the lock we will be notified. Hence
105
+ // we wait until a notify and then are free to acquire the lock
106
+ // unconditionally.
107
+ thisDeque->wait();
108
+
109
+ // set the state to have its locked bit set and store the previous next
110
+ // worker as the new next worker. As we only get here when the compare
111
+ // exchange in the loop above succeeds with s having its locked bit set we
112
+ // can simply store back s.
113
+ state.store(s, std::memory_order_relaxed);
114
+ }
115
+
116
+ void unlock() {
117
+ unsigned int prevState = state.fetch_add(
118
+ std::numeric_limits<unsigned int>::max(), std::memory_order_release);
119
+
120
+ if (prevState != 1) {
121
+ unsigned int notifyWorkerId = (prevState >> 1) - 1;
122
+ HighsTaskExecutor::getThisWorkerDeque()
123
+ ->getWorkerById(notifyWorkerId)
124
+ ->notify();
125
+ }
126
+ }
127
+ };
128
+
129
+ #endif
@@ -0,0 +1,133 @@
1
+ /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
2
+ /* */
3
+ /* This file is part of the HiGHS linear optimization suite */
4
+ /* */
5
+ /* Written and engineered 2008-2021 at the University of Edinburgh */
6
+ /* */
7
+ /* Available as open-source under the MIT License */
8
+ /* */
9
+ /* Authors: Julian Hall, Ivet Galabova, Qi Huangfu, Leona Gottwald */
10
+ /* and Michael Feldmeier */
11
+ /* */
12
+ /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
13
+ #ifndef HIGHS_PARALLEL_H_
14
+ #define HIGHS_PARALLEL_H_
15
+
16
+ #include "parallel/HighsMutex.h"
17
+ #include "parallel/HighsTaskExecutor.h"
18
+
19
+ namespace highs {
20
+
21
+ namespace parallel {
22
+
23
+ using mutex = HighsMutex;
24
+
25
+ inline void initialize_scheduler(int numThreads = 0) {
26
+ if (numThreads == 0) {
27
+ #ifdef HIGHS_NO_DEFAULT_THREADS
28
+ numThreads = 1;
29
+ #else
30
+ numThreads = (std::thread::hardware_concurrency() + 1) / 2;
31
+ #endif
32
+ }
33
+ HighsTaskExecutor::initialize(numThreads);
34
+ }
35
+
36
+ inline int num_threads() {
37
+ return HighsTaskExecutor::getThisWorkerDeque()->getNumWorkers();
38
+ }
39
+
40
+ inline int thread_num() {
41
+ return HighsTaskExecutor::getThisWorkerDeque()->getOwnerId();
42
+ }
43
+
44
+ template <typename F>
45
+ void spawn(HighsSplitDeque* localDeque, F&& f) {
46
+ localDeque->push(std::forward<F>(f));
47
+ }
48
+
49
+ template <typename F>
50
+ void spawn(F&& f) {
51
+ spawn(HighsTaskExecutor::getThisWorkerDeque(), std::forward<F>(f));
52
+ }
53
+
54
+ inline void sync(HighsSplitDeque* localDeque) {
55
+ std::pair<HighsSplitDeque::Status, HighsTask*> popResult = localDeque->pop();
56
+ switch (popResult.first) {
57
+ case HighsSplitDeque::Status::kEmpty:
58
+ assert(false);
59
+ // fall through
60
+ case HighsSplitDeque::Status::kOverflown:
61
+ // when the local deque is overflown the task has been executed during
62
+ // spawn already
63
+ break;
64
+ case HighsSplitDeque::Status::kStolen:
65
+ HighsTaskExecutor::sync_stolen_task(localDeque, popResult.second);
66
+ break;
67
+ case HighsSplitDeque::Status::kWork:
68
+ popResult.second->run();
69
+ }
70
+ }
71
+
72
+ inline void sync() { sync(HighsTaskExecutor::getThisWorkerDeque()); }
73
+ class TaskGroup {
74
+ HighsSplitDeque* workerDeque;
75
+ int dequeHead;
76
+
77
+ public:
78
+ TaskGroup() {
79
+ workerDeque = HighsTaskExecutor::getThisWorkerDeque();
80
+ dequeHead = workerDeque->getCurrentHead();
81
+ }
82
+
83
+ template <typename F>
84
+ void spawn(F&& f) const {
85
+ highs::parallel::spawn(workerDeque, std::forward<F>(f));
86
+ }
87
+
88
+ void sync() const {
89
+ assert(workerDeque->getCurrentHead() > dequeHead);
90
+ highs::parallel::sync(workerDeque);
91
+ }
92
+
93
+ void taskWait() const {
94
+ while (workerDeque->getCurrentHead() > dequeHead)
95
+ highs::parallel::sync(workerDeque);
96
+ }
97
+
98
+ void cancel() {
99
+ for (int i = dequeHead; i < workerDeque->getCurrentHead(); ++i)
100
+ workerDeque->cancelTask(i);
101
+ }
102
+
103
+ ~TaskGroup() {
104
+ cancel();
105
+ taskWait();
106
+ }
107
+ };
108
+
109
+ template <typename F>
110
+ void for_each(HighsInt start, HighsInt end, F&& f, HighsInt grainSize = 1) {
111
+ if (end - start <= grainSize) {
112
+ f(start, end);
113
+ } else {
114
+ TaskGroup tg;
115
+
116
+ do {
117
+ HighsInt split = (start + end) >> 1;
118
+ tg.spawn([split, end, grainSize, &f]() {
119
+ for_each(split, end, f, grainSize);
120
+ });
121
+ end = split;
122
+ } while (end - start > grainSize);
123
+
124
+ f(start, end);
125
+ tg.taskWait();
126
+ }
127
+ }
128
+
129
+ } // namespace parallel
130
+
131
+ } // namespace highs
132
+
133
+ #endif
@@ -0,0 +1,43 @@
1
+ /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
2
+ /* */
3
+ /* This file is part of the HiGHS linear optimization suite */
4
+ /* */
5
+ /* Written and engineered 2008-2021 at the University of Edinburgh */
6
+ /* */
7
+ /* Available as open-source under the MIT License */
8
+ /* */
9
+ /* Authors: Julian Hall, Ivet Galabova, Qi Huangfu, Leona Gottwald */
10
+ /* and Michael Feldmeier */
11
+ /* */
12
+ /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
13
+
14
+ #ifndef HIGHS_RACE_TIMER_H_
15
+ #define HIGHS_RACE_TIMER_H_
16
+
17
+ #include <atomic>
18
+ #include <limits>
19
+
20
+ template <typename T>
21
+ class HighsRaceTimer {
22
+ std::atomic<T> limit;
23
+
24
+ public:
25
+ HighsRaceTimer() : limit(std::numeric_limits<T>::max()) {}
26
+
27
+ void decreaseLimit(T newLimit) {
28
+ T current = limit.load(std::memory_order_relaxed);
29
+
30
+ while (current > newLimit) {
31
+ if (limit.compare_exchange_weak(current, newLimit,
32
+ std::memory_order_relaxed,
33
+ std::memory_order_relaxed))
34
+ break;
35
+ }
36
+ }
37
+
38
+ bool limitReached(const T currentTime) const {
39
+ return currentTime > limit.load(std::memory_order_relaxed);
40
+ }
41
+ };
42
+
43
+ #endif
@@ -0,0 +1,24 @@
1
+ /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
2
+ /* */
3
+ /* This file is part of the HiGHS linear optimization suite */
4
+ /* */
5
+ /* Written and engineered 2008-2021 at the University of Edinburgh */
6
+ /* */
7
+ /* Available as open-source under the MIT License */
8
+ /* */
9
+ /* Authors: Julian Hall, Ivet Galabova, Qi Huangfu, Leona Gottwald */
10
+ /* and Michael Feldmeier */
11
+ /* */
12
+ /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
13
+ #ifndef HIGHS_SCHEDULER_CONSTANTS_H_
14
+ #define HIGHS_SCHEDULER_CONSTANTS_H_
15
+
16
+ struct HighsSchedulerConstants {
17
+ enum Constants {
18
+ kNumTryFac = 16,
19
+ kMicroSecsBeforeSleep = 5000,
20
+ kMicroSecsBeforeGlobalSync = 1000,
21
+ };
22
+ };
23
+
24
+ #endif