casadi 3.6.4__cp312-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 (1327) hide show
  1. casadi/__init__.py +92 -0
  2. casadi/_casadi.so +0 -0
  3. casadi/casadi-cli +0 -0
  4. casadi/casadi.py +50467 -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 +102 -0
  11. casadi/cmake/highs/highs-config.cmake +24 -0
  12. casadi/cmake/highs/highs-targets-release.cmake +28 -0
  13. casadi/cmake/highs/highs-targets.cmake +114 -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 +109 -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 +109 -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 +102 -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/casadi/casadi.hpp +31 -0
  29. casadi/include/casadi/casadi.i +4673 -0
  30. casadi/include/casadi/casadi_c.h +136 -0
  31. casadi/include/casadi/casadi_numpy.hpp +97 -0
  32. casadi/include/casadi/config.h +46 -0
  33. casadi/include/casadi/core/calculus.hpp +1750 -0
  34. casadi/include/casadi/core/callback.hpp +226 -0
  35. casadi/include/casadi/core/casadi_common.hpp +317 -0
  36. casadi/include/casadi/core/casadi_enum.hpp +90 -0
  37. casadi/include/casadi/core/casadi_export.h +42 -0
  38. casadi/include/casadi/core/casadi_interrupt.hpp +83 -0
  39. casadi/include/casadi/core/casadi_limits.hpp +104 -0
  40. casadi/include/casadi/core/casadi_logger.hpp +134 -0
  41. casadi/include/casadi/core/casadi_meta.hpp +107 -0
  42. casadi/include/casadi/core/casadi_misc.hpp +949 -0
  43. casadi/include/casadi/core/casadi_types.hpp +65 -0
  44. casadi/include/casadi/core/code_generator.hpp +918 -0
  45. casadi/include/casadi/core/conic.hpp +213 -0
  46. casadi/include/casadi/core/core.hpp +69 -0
  47. casadi/include/casadi/core/dae_builder.hpp +723 -0
  48. casadi/include/casadi/core/dm.hpp +87 -0
  49. casadi/include/casadi/core/dm_fwd.hpp +39 -0
  50. casadi/include/casadi/core/dple.hpp +138 -0
  51. casadi/include/casadi/core/exception.hpp +167 -0
  52. casadi/include/casadi/core/expm.hpp +84 -0
  53. casadi/include/casadi/core/external.hpp +70 -0
  54. casadi/include/casadi/core/fmu.hpp +224 -0
  55. casadi/include/casadi/core/function.hpp +1347 -0
  56. casadi/include/casadi/core/generic_expression.hpp +760 -0
  57. casadi/include/casadi/core/generic_matrix.hpp +1598 -0
  58. casadi/include/casadi/core/generic_type.hpp +287 -0
  59. casadi/include/casadi/core/global_options.hpp +95 -0
  60. casadi/include/casadi/core/im.hpp +52 -0
  61. casadi/include/casadi/core/im_fwd.hpp +35 -0
  62. casadi/include/casadi/core/importer.hpp +221 -0
  63. casadi/include/casadi/core/integration_tools.hpp +292 -0
  64. casadi/include/casadi/core/integrator.hpp +256 -0
  65. casadi/include/casadi/core/interpolant.hpp +163 -0
  66. casadi/include/casadi/core/linsol.hpp +171 -0
  67. casadi/include/casadi/core/matrix_decl.hpp +1337 -0
  68. casadi/include/casadi/core/matrix_fwd.hpp +37 -0
  69. casadi/include/casadi/core/mx.hpp +938 -0
  70. casadi/include/casadi/core/nlp_builder.hpp +162 -0
  71. casadi/include/casadi/core/nlp_tools.hpp +124 -0
  72. casadi/include/casadi/core/nlpsol.hpp +234 -0
  73. casadi/include/casadi/core/nonzeros.hpp +111 -0
  74. casadi/include/casadi/core/options.hpp +119 -0
  75. casadi/include/casadi/core/optistack.hpp +647 -0
  76. casadi/include/casadi/core/polynomial.hpp +126 -0
  77. casadi/include/casadi/core/printable.hpp +73 -0
  78. casadi/include/casadi/core/rootfinder.hpp +176 -0
  79. casadi/include/casadi/core/runtime/casadi_axpy.hpp +8 -0
  80. casadi/include/casadi/core/runtime/casadi_bfgs.hpp +49 -0
  81. casadi/include/casadi/core/runtime/casadi_bilin.hpp +42 -0
  82. casadi/include/casadi/core/runtime/casadi_bound_consistency.hpp +51 -0
  83. casadi/include/casadi/core/runtime/casadi_cache.hpp +59 -0
  84. casadi/include/casadi/core/runtime/casadi_clear.hpp +27 -0
  85. casadi/include/casadi/core/runtime/casadi_clip_max.hpp +33 -0
  86. casadi/include/casadi/core/runtime/casadi_clip_min.hpp +33 -0
  87. casadi/include/casadi/core/runtime/casadi_convexify.hpp +182 -0
  88. casadi/include/casadi/core/runtime/casadi_copy.hpp +31 -0
  89. casadi/include/casadi/core/runtime/casadi_cvx.hpp +463 -0
  90. casadi/include/casadi/core/runtime/casadi_de_boor.hpp +36 -0
  91. casadi/include/casadi/core/runtime/casadi_dense_lsqr.hpp +247 -0
  92. casadi/include/casadi/core/runtime/casadi_densify.hpp +48 -0
  93. casadi/include/casadi/core/runtime/casadi_dot.hpp +27 -0
  94. casadi/include/casadi/core/runtime/casadi_feasiblesqpmethod.hpp +208 -0
  95. casadi/include/casadi/core/runtime/casadi_file_slurp.hpp +32 -0
  96. casadi/include/casadi/core/runtime/casadi_fill.hpp +27 -0
  97. casadi/include/casadi/core/runtime/casadi_finite_diff.hpp +345 -0
  98. casadi/include/casadi/core/runtime/casadi_flip.hpp +33 -0
  99. casadi/include/casadi/core/runtime/casadi_getu.hpp +35 -0
  100. casadi/include/casadi/core/runtime/casadi_iamax.hpp +36 -0
  101. casadi/include/casadi/core/runtime/casadi_interpn.hpp +39 -0
  102. casadi/include/casadi/core/runtime/casadi_interpn_grad.hpp +72 -0
  103. casadi/include/casadi/core/runtime/casadi_interpn_interpolate.hpp +43 -0
  104. casadi/include/casadi/core/runtime/casadi_interpn_weights.hpp +39 -0
  105. casadi/include/casadi/core/runtime/casadi_ipqp.hpp +868 -0
  106. casadi/include/casadi/core/runtime/casadi_jac.hpp +186 -0
  107. casadi/include/casadi/core/runtime/casadi_kkt.hpp +67 -0
  108. casadi/include/casadi/core/runtime/casadi_kron.hpp +50 -0
  109. casadi/include/casadi/core/runtime/casadi_ldl.hpp +109 -0
  110. casadi/include/casadi/core/runtime/casadi_logsumexp.hpp +41 -0
  111. casadi/include/casadi/core/runtime/casadi_low.hpp +65 -0
  112. casadi/include/casadi/core/runtime/casadi_lsqr.hpp +247 -0
  113. casadi/include/casadi/core/runtime/casadi_masked_norm_inf.hpp +33 -0
  114. casadi/include/casadi/core/runtime/casadi_max_viol.hpp +37 -0
  115. casadi/include/casadi/core/runtime/casadi_mmax.hpp +28 -0
  116. casadi/include/casadi/core/runtime/casadi_mmin.hpp +29 -0
  117. casadi/include/casadi/core/runtime/casadi_mtimes.hpp +75 -0
  118. casadi/include/casadi/core/runtime/casadi_mv.hpp +46 -0
  119. casadi/include/casadi/core/runtime/casadi_mv_dense.hpp +39 -0
  120. casadi/include/casadi/core/runtime/casadi_nd_boor_dual_eval.hpp +127 -0
  121. casadi/include/casadi/core/runtime/casadi_nd_boor_eval.hpp +120 -0
  122. casadi/include/casadi/core/runtime/casadi_newton.hpp +66 -0
  123. casadi/include/casadi/core/runtime/casadi_nlp.hpp +149 -0
  124. casadi/include/casadi/core/runtime/casadi_norm_1.hpp +29 -0
  125. casadi/include/casadi/core/runtime/casadi_norm_2.hpp +24 -0
  126. casadi/include/casadi/core/runtime/casadi_norm_inf.hpp +28 -0
  127. casadi/include/casadi/core/runtime/casadi_norm_inf_mul.hpp +105 -0
  128. casadi/include/casadi/core/runtime/casadi_polyval.hpp +29 -0
  129. casadi/include/casadi/core/runtime/casadi_project.hpp +39 -0
  130. casadi/include/casadi/core/runtime/casadi_qp.hpp +86 -0
  131. casadi/include/casadi/core/runtime/casadi_qr.hpp +272 -0
  132. casadi/include/casadi/core/runtime/casadi_qrqp.hpp +1239 -0
  133. casadi/include/casadi/core/runtime/casadi_rank1.hpp +40 -0
  134. casadi/include/casadi/core/runtime/casadi_regularize.hpp +73 -0
  135. casadi/include/casadi/core/runtime/casadi_runtime.hpp +315 -0
  136. casadi/include/casadi/core/runtime/casadi_scal.hpp +26 -0
  137. casadi/include/casadi/core/runtime/casadi_sparsify.hpp +42 -0
  138. casadi/include/casadi/core/runtime/casadi_sparsity.hpp +24 -0
  139. casadi/include/casadi/core/runtime/casadi_sqpmethod.hpp +168 -0
  140. casadi/include/casadi/core/runtime/casadi_sum.hpp +31 -0
  141. casadi/include/casadi/core/runtime/casadi_sum_viol.hpp +37 -0
  142. casadi/include/casadi/core/runtime/casadi_swap.hpp +32 -0
  143. casadi/include/casadi/core/runtime/casadi_trans.hpp +35 -0
  144. casadi/include/casadi/core/runtime/casadi_tri_project.hpp +37 -0
  145. casadi/include/casadi/core/runtime/casadi_trilsolve.hpp +81 -0
  146. casadi/include/casadi/core/runtime/casadi_triusolve.hpp +81 -0
  147. casadi/include/casadi/core/runtime/casadi_vector_fmax.hpp +28 -0
  148. casadi/include/casadi/core/runtime/casadi_vector_fmin.hpp +28 -0
  149. casadi/include/casadi/core/runtime/casadi_vfmax.hpp +28 -0
  150. casadi/include/casadi/core/runtime/casadi_vfmin.hpp +28 -0
  151. casadi/include/casadi/core/runtime/shared.hpp +261 -0
  152. casadi/include/casadi/core/serializer.hpp +256 -0
  153. casadi/include/casadi/core/serializing_stream.hpp +329 -0
  154. casadi/include/casadi/core/shared_object.hpp +270 -0
  155. casadi/include/casadi/core/slice.hpp +149 -0
  156. casadi/include/casadi/core/sparsity.hpp +1486 -0
  157. casadi/include/casadi/core/sparsity_interface.hpp +745 -0
  158. casadi/include/casadi/core/submatrix.hpp +156 -0
  159. casadi/include/casadi/core/sx.hpp +203 -0
  160. casadi/include/casadi/core/sx_elem.hpp +351 -0
  161. casadi/include/casadi/core/sx_fwd.hpp +45 -0
  162. casadi/include/casadi/core/timing.hpp +98 -0
  163. casadi/include/casadi/core/xml_file.hpp +93 -0
  164. casadi/include/casadi/core/xml_node.hpp +207 -0
  165. casadi/include/casadi/doc.i +57768 -0
  166. casadi/include/casadi/doc_merged.i +35612 -0
  167. casadi/include/casadi/mem.h +310 -0
  168. casadi/include/casadi/valgrind-casadi.supp +511 -0
  169. casadi/include/casadi/valgrind-python.supp +1416 -0
  170. casadi/include/highs/HConfig.h +20 -0
  171. casadi/include/highs/Highs.h +1459 -0
  172. casadi/include/highs/filereaderlp/builder.hpp +25 -0
  173. casadi/include/highs/filereaderlp/model.hpp +68 -0
  174. casadi/include/highs/filereaderlp/reader.hpp +10 -0
  175. casadi/include/highs/fortran/highs_fortran_api.mod +0 -0
  176. casadi/include/highs/interfaces/highs_c_api.h +2107 -0
  177. casadi/include/highs/io/Filereader.h +47 -0
  178. casadi/include/highs/io/FilereaderEms.h +33 -0
  179. casadi/include/highs/io/FilereaderLp.h +54 -0
  180. casadi/include/highs/io/FilereaderMps.h +30 -0
  181. casadi/include/highs/io/HMPSIO.h +81 -0
  182. casadi/include/highs/io/HMpsFF.h +233 -0
  183. casadi/include/highs/io/HighsIO.h +99 -0
  184. casadi/include/highs/io/LoadOptions.h +27 -0
  185. casadi/include/highs/ipm/IpxWrapper.h +73 -0
  186. casadi/include/highs/lp_data/HConst.h +295 -0
  187. casadi/include/highs/lp_data/HStruct.h +124 -0
  188. casadi/include/highs/lp_data/HighsAnalysis.h +26 -0
  189. casadi/include/highs/lp_data/HighsCallback.h +33 -0
  190. casadi/include/highs/lp_data/HighsCallbackStruct.h +36 -0
  191. casadi/include/highs/lp_data/HighsDebug.h +37 -0
  192. casadi/include/highs/lp_data/HighsInfo.h +304 -0
  193. casadi/include/highs/lp_data/HighsInfoDebug.h +30 -0
  194. casadi/include/highs/lp_data/HighsLp.h +85 -0
  195. casadi/include/highs/lp_data/HighsLpSolverObject.h +48 -0
  196. casadi/include/highs/lp_data/HighsLpUtils.h +266 -0
  197. casadi/include/highs/lp_data/HighsModelUtils.h +109 -0
  198. casadi/include/highs/lp_data/HighsOptions.h +1130 -0
  199. casadi/include/highs/lp_data/HighsRanging.h +46 -0
  200. casadi/include/highs/lp_data/HighsRuntimeOptions.h +276 -0
  201. casadi/include/highs/lp_data/HighsSolution.h +137 -0
  202. casadi/include/highs/lp_data/HighsSolutionDebug.h +90 -0
  203. casadi/include/highs/lp_data/HighsSolve.h +24 -0
  204. casadi/include/highs/lp_data/HighsStatus.h +32 -0
  205. casadi/include/highs/mip/HighsCliqueTable.h +318 -0
  206. casadi/include/highs/mip/HighsConflictPool.h +112 -0
  207. casadi/include/highs/mip/HighsCutGeneration.h +96 -0
  208. casadi/include/highs/mip/HighsCutPool.h +171 -0
  209. casadi/include/highs/mip/HighsDebugSol.h +142 -0
  210. casadi/include/highs/mip/HighsDomain.h +633 -0
  211. casadi/include/highs/mip/HighsDomainChange.h +51 -0
  212. casadi/include/highs/mip/HighsDynamicRowMatrix.h +105 -0
  213. casadi/include/highs/mip/HighsGFkSolve.h +441 -0
  214. casadi/include/highs/mip/HighsImplications.h +146 -0
  215. casadi/include/highs/mip/HighsLpAggregator.h +53 -0
  216. casadi/include/highs/mip/HighsLpRelaxation.h +355 -0
  217. casadi/include/highs/mip/HighsMipSolver.h +103 -0
  218. casadi/include/highs/mip/HighsMipSolverData.h +193 -0
  219. casadi/include/highs/mip/HighsModkSeparator.h +63 -0
  220. casadi/include/highs/mip/HighsNodeQueue.h +312 -0
  221. casadi/include/highs/mip/HighsObjectiveFunction.h +74 -0
  222. casadi/include/highs/mip/HighsPathSeparator.h +42 -0
  223. casadi/include/highs/mip/HighsPrimalHeuristics.h +68 -0
  224. casadi/include/highs/mip/HighsPseudocost.h +351 -0
  225. casadi/include/highs/mip/HighsRedcostFixing.h +45 -0
  226. casadi/include/highs/mip/HighsSearch.h +243 -0
  227. casadi/include/highs/mip/HighsSeparation.h +44 -0
  228. casadi/include/highs/mip/HighsSeparator.h +56 -0
  229. casadi/include/highs/mip/HighsTableauSeparator.h +37 -0
  230. casadi/include/highs/mip/HighsTransformedLp.h +66 -0
  231. casadi/include/highs/model/HighsHessian.h +49 -0
  232. casadi/include/highs/model/HighsHessianUtils.h +47 -0
  233. casadi/include/highs/model/HighsModel.h +43 -0
  234. casadi/include/highs/parallel/HighsBinarySemaphore.h +113 -0
  235. casadi/include/highs/parallel/HighsCacheAlign.h +87 -0
  236. casadi/include/highs/parallel/HighsCombinable.h +121 -0
  237. casadi/include/highs/parallel/HighsMutex.h +128 -0
  238. casadi/include/highs/parallel/HighsParallel.h +128 -0
  239. casadi/include/highs/parallel/HighsRaceTimer.h +43 -0
  240. casadi/include/highs/parallel/HighsSchedulerConstants.h +24 -0
  241. casadi/include/highs/parallel/HighsSpinMutex.h +53 -0
  242. casadi/include/highs/parallel/HighsSplitDeque.h +583 -0
  243. casadi/include/highs/parallel/HighsTask.h +176 -0
  244. casadi/include/highs/parallel/HighsTaskExecutor.h +209 -0
  245. casadi/include/highs/presolve/HPresolve.h +352 -0
  246. casadi/include/highs/presolve/HPresolveAnalysis.h +54 -0
  247. casadi/include/highs/presolve/HighsPostsolveStack.h +883 -0
  248. casadi/include/highs/presolve/HighsSymmetry.h +283 -0
  249. casadi/include/highs/presolve/ICrash.h +121 -0
  250. casadi/include/highs/presolve/ICrashUtil.h +65 -0
  251. casadi/include/highs/presolve/ICrashX.h +26 -0
  252. casadi/include/highs/presolve/PresolveComponent.h +93 -0
  253. casadi/include/highs/qpsolver/a_asm.hpp +56 -0
  254. casadi/include/highs/qpsolver/a_quass.hpp +12 -0
  255. casadi/include/highs/qpsolver/perturbation.hpp +8 -0
  256. casadi/include/highs/qpsolver/quass.hpp +20 -0
  257. casadi/include/highs/qpsolver/scaling.hpp +8 -0
  258. casadi/include/highs/qpsolver/vector.hpp +235 -0
  259. casadi/include/highs/simplex/HApp.h +422 -0
  260. casadi/include/highs/simplex/HEkk.h +369 -0
  261. casadi/include/highs/simplex/HEkkDual.h +515 -0
  262. casadi/include/highs/simplex/HEkkDualRHS.h +138 -0
  263. casadi/include/highs/simplex/HEkkDualRow.h +204 -0
  264. casadi/include/highs/simplex/HEkkPrimal.h +190 -0
  265. casadi/include/highs/simplex/HSimplex.h +47 -0
  266. casadi/include/highs/simplex/HSimplexDebug.h +51 -0
  267. casadi/include/highs/simplex/HSimplexNla.h +184 -0
  268. casadi/include/highs/simplex/HSimplexReport.h +24 -0
  269. casadi/include/highs/simplex/HighsSimplexAnalysis.h +375 -0
  270. casadi/include/highs/simplex/SimplexConst.h +274 -0
  271. casadi/include/highs/simplex/SimplexStruct.h +264 -0
  272. casadi/include/highs/simplex/SimplexTimer.h +427 -0
  273. casadi/include/highs/test/DevKkt.h +146 -0
  274. casadi/include/highs/test/KktCh2.h +82 -0
  275. casadi/include/highs/util/FactorTimer.h +224 -0
  276. casadi/include/highs/util/HFactor.h +558 -0
  277. casadi/include/highs/util/HFactorConst.h +84 -0
  278. casadi/include/highs/util/HFactorDebug.h +58 -0
  279. casadi/include/highs/util/HSet.h +92 -0
  280. casadi/include/highs/util/HVector.h +25 -0
  281. casadi/include/highs/util/HVectorBase.h +105 -0
  282. casadi/include/highs/util/HighsCDouble.h +310 -0
  283. casadi/include/highs/util/HighsComponent.h +56 -0
  284. casadi/include/highs/util/HighsDataStack.h +86 -0
  285. casadi/include/highs/util/HighsDisjointSets.h +110 -0
  286. casadi/include/highs/util/HighsHash.h +1270 -0
  287. casadi/include/highs/util/HighsHashTree.h +1443 -0
  288. casadi/include/highs/util/HighsInt.h +39 -0
  289. casadi/include/highs/util/HighsIntegers.h +216 -0
  290. casadi/include/highs/util/HighsLinearSumBounds.h +160 -0
  291. casadi/include/highs/util/HighsMatrixPic.h +40 -0
  292. casadi/include/highs/util/HighsMatrixSlice.h +561 -0
  293. casadi/include/highs/util/HighsMatrixUtils.h +57 -0
  294. casadi/include/highs/util/HighsRandom.h +233 -0
  295. casadi/include/highs/util/HighsRbTree.h +455 -0
  296. casadi/include/highs/util/HighsSort.h +134 -0
  297. casadi/include/highs/util/HighsSparseMatrix.h +144 -0
  298. casadi/include/highs/util/HighsSparseVectorSum.h +98 -0
  299. casadi/include/highs/util/HighsSplay.h +138 -0
  300. casadi/include/highs/util/HighsTimer.h +334 -0
  301. casadi/include/highs/util/HighsUtils.h +203 -0
  302. casadi/include/highs/util/stringutil.h +39 -0
  303. casadi/include/include/blasfeo.h +52 -0
  304. casadi/include/include/blasfeo_block_size.h +447 -0
  305. casadi/include/include/blasfeo_common.h +274 -0
  306. casadi/include/include/blasfeo_d_aux.h +255 -0
  307. casadi/include/include/blasfeo_d_aux_ext_dep.h +145 -0
  308. casadi/include/include/blasfeo_d_aux_ext_dep_ref.h +84 -0
  309. casadi/include/include/blasfeo_d_aux_old.h +75 -0
  310. casadi/include/include/blasfeo_d_aux_ref.h +208 -0
  311. casadi/include/include/blasfeo_d_aux_test.h +226 -0
  312. casadi/include/include/blasfeo_d_blas.h +46 -0
  313. casadi/include/include/blasfeo_d_blas_api.h +281 -0
  314. casadi/include/include/blasfeo_d_blasfeo_api.h +364 -0
  315. casadi/include/include/blasfeo_d_blasfeo_api_ref.h +147 -0
  316. casadi/include/include/blasfeo_d_blasfeo_hp_api.h +84 -0
  317. casadi/include/include/blasfeo_d_blasfeo_ref_api.h +283 -0
  318. casadi/include/include/blasfeo_d_kernel.h +1321 -0
  319. casadi/include/include/blasfeo_i_aux_ext_dep.h +69 -0
  320. casadi/include/include/blasfeo_m_aux.h +57 -0
  321. casadi/include/include/blasfeo_memory.h +62 -0
  322. casadi/include/include/blasfeo_naming.h +77 -0
  323. casadi/include/include/blasfeo_processor_features.h +88 -0
  324. casadi/include/include/blasfeo_s_aux.h +168 -0
  325. casadi/include/include/blasfeo_s_aux_ext_dep.h +141 -0
  326. casadi/include/include/blasfeo_s_aux_ext_dep_ref.h +82 -0
  327. casadi/include/include/blasfeo_s_aux_old.h +64 -0
  328. casadi/include/include/blasfeo_s_aux_ref.h +147 -0
  329. casadi/include/include/blasfeo_s_aux_test.h +177 -0
  330. casadi/include/include/blasfeo_s_blas.h +46 -0
  331. casadi/include/include/blasfeo_s_blas_api.h +182 -0
  332. casadi/include/include/blasfeo_s_blasfeo_api.h +284 -0
  333. casadi/include/include/blasfeo_s_blasfeo_api_ref.h +135 -0
  334. casadi/include/include/blasfeo_s_blasfeo_ref_api.h +252 -0
  335. casadi/include/include/blasfeo_s_kernel.h +692 -0
  336. casadi/include/include/blasfeo_stdlib.h +62 -0
  337. casadi/include/include/blasfeo_target.h +73 -0
  338. casadi/include/include/blasfeo_timing.h +114 -0
  339. casadi/include/include/blasfeo_v_aux_ext_dep.h +83 -0
  340. casadi/include/include/coin/BonArraysHelpers.hpp +52 -0
  341. casadi/include/include/coin/BonAuxInfos.hpp +110 -0
  342. casadi/include/include/coin/BonBabInfos.hpp +57 -0
  343. casadi/include/include/coin/BonBabSetupBase.hpp +386 -0
  344. casadi/include/include/coin/BonBonminSetup.hpp +95 -0
  345. casadi/include/include/coin/BonBranchingTQP.hpp +197 -0
  346. casadi/include/include/coin/BonCbc.hpp +127 -0
  347. casadi/include/include/coin/BonCbcLpStrategy.hpp +45 -0
  348. casadi/include/include/coin/BonCbcNlpStrategy.hpp +98 -0
  349. casadi/include/include/coin/BonCbcNode.hpp +133 -0
  350. casadi/include/include/coin/BonChooseVariable.hpp +345 -0
  351. casadi/include/include/coin/BonCurvBranchingSolver.hpp +77 -0
  352. casadi/include/include/coin/BonCutStrengthener.hpp +244 -0
  353. casadi/include/include/coin/BonDiver.hpp +424 -0
  354. casadi/include/include/coin/BonDummyHeuristic.hpp +53 -0
  355. casadi/include/include/coin/BonDummyPump.hpp +43 -0
  356. casadi/include/include/coin/BonEcpCuts.hpp +97 -0
  357. casadi/include/include/coin/BonExitCodes.hpp +12 -0
  358. casadi/include/include/coin/BonFixAndSolveHeuristic.hpp +43 -0
  359. casadi/include/include/coin/BonGuessHeuristic.hpp +46 -0
  360. casadi/include/include/coin/BonHeuristicDive.hpp +88 -0
  361. casadi/include/include/coin/BonHeuristicDiveFractional.hpp +67 -0
  362. casadi/include/include/coin/BonHeuristicDiveMIP.hpp +83 -0
  363. casadi/include/include/coin/BonHeuristicDiveMIPFractional.hpp +67 -0
  364. casadi/include/include/coin/BonHeuristicDiveMIPVectorLength.hpp +74 -0
  365. casadi/include/include/coin/BonHeuristicDiveVectorLength.hpp +74 -0
  366. casadi/include/include/coin/BonHeuristicFPump.hpp +111 -0
  367. casadi/include/include/coin/BonHeuristicLocalBranching.hpp +59 -0
  368. casadi/include/include/coin/BonHeuristicRINS.hpp +55 -0
  369. casadi/include/include/coin/BonIpoptInteriorWarmStarter.hpp +103 -0
  370. casadi/include/include/coin/BonIpoptSolver.hpp +188 -0
  371. casadi/include/include/coin/BonIpoptWarmStart.hpp +148 -0
  372. casadi/include/include/coin/BonLinearCutsGenerator.hpp +75 -0
  373. casadi/include/include/coin/BonLocalSolverBasedHeuristic.hpp +102 -0
  374. casadi/include/include/coin/BonLpBranchingSolver.hpp +80 -0
  375. casadi/include/include/coin/BonMilpRounding.hpp +74 -0
  376. casadi/include/include/coin/BonOACutGenerator2.hpp +56 -0
  377. casadi/include/include/coin/BonOAMessages.hpp +44 -0
  378. casadi/include/include/coin/BonOaDecBase.hpp +297 -0
  379. casadi/include/include/coin/BonOaFeasChecker.hpp +73 -0
  380. casadi/include/include/coin/BonOaNlpOptim.hpp +116 -0
  381. casadi/include/include/coin/BonOsiTMINLPInterface.hpp +1342 -0
  382. casadi/include/include/coin/BonOuterApprox.hpp +123 -0
  383. casadi/include/include/coin/BonPseudoCosts.hpp +91 -0
  384. casadi/include/include/coin/BonPumpForMinlp.hpp +45 -0
  385. casadi/include/include/coin/BonQuadCut.hpp +217 -0
  386. casadi/include/include/coin/BonQuadRow.hpp +122 -0
  387. casadi/include/include/coin/BonRegisteredOptions.hpp +225 -0
  388. casadi/include/include/coin/BonStrongBranchingSolver.hpp +69 -0
  389. casadi/include/include/coin/BonSubMipSolver.hpp +143 -0
  390. casadi/include/include/coin/BonTMINLP.hpp +420 -0
  391. casadi/include/include/coin/BonTMINLP2OsiLP.hpp +164 -0
  392. casadi/include/include/coin/BonTMINLP2Quad.hpp +191 -0
  393. casadi/include/include/coin/BonTMINLP2TNLP.hpp +509 -0
  394. casadi/include/include/coin/BonTMINLPLinObj.hpp +216 -0
  395. casadi/include/include/coin/BonTMatrix.hpp +167 -0
  396. casadi/include/include/coin/BonTNLP2FPNLP.hpp +264 -0
  397. casadi/include/include/coin/BonTNLPSolver.hpp +241 -0
  398. casadi/include/include/coin/BonTypes.hpp +95 -0
  399. casadi/include/include/coin/BonminConfig.h +19 -0
  400. casadi/include/include/coin/CbcBranchActual.hpp +26 -0
  401. casadi/include/include/coin/CbcBranchAllDifferent.hpp +61 -0
  402. casadi/include/include/coin/CbcBranchBase.hpp +79 -0
  403. casadi/include/include/coin/CbcBranchCut.hpp +182 -0
  404. casadi/include/include/coin/CbcBranchDecision.hpp +135 -0
  405. casadi/include/include/coin/CbcBranchDefaultDecision.hpp +101 -0
  406. casadi/include/include/coin/CbcBranchDynamic.hpp +210 -0
  407. casadi/include/include/coin/CbcBranchLotsize.hpp +249 -0
  408. casadi/include/include/coin/CbcBranchToFixLots.hpp +94 -0
  409. casadi/include/include/coin/CbcBranchingObject.hpp +245 -0
  410. casadi/include/include/coin/CbcClique.hpp +309 -0
  411. casadi/include/include/coin/CbcCompare.hpp +46 -0
  412. casadi/include/include/coin/CbcCompareActual.hpp +16 -0
  413. casadi/include/include/coin/CbcCompareBase.hpp +155 -0
  414. casadi/include/include/coin/CbcCompareDefault.hpp +129 -0
  415. casadi/include/include/coin/CbcCompareDepth.hpp +48 -0
  416. casadi/include/include/coin/CbcCompareEstimate.hpp +48 -0
  417. casadi/include/include/coin/CbcCompareObjective.hpp +50 -0
  418. casadi/include/include/coin/CbcConfig.h +18 -0
  419. casadi/include/include/coin/CbcConsequence.hpp +50 -0
  420. casadi/include/include/coin/CbcCountRowCut.hpp +176 -0
  421. casadi/include/include/coin/CbcCutGenerator.hpp +550 -0
  422. casadi/include/include/coin/CbcCutModifier.hpp +59 -0
  423. casadi/include/include/coin/CbcCutSubsetModifier.hpp +69 -0
  424. casadi/include/include/coin/CbcDummyBranchingObject.hpp +83 -0
  425. casadi/include/include/coin/CbcEventHandler.hpp +250 -0
  426. casadi/include/include/coin/CbcFathom.hpp +136 -0
  427. casadi/include/include/coin/CbcFathomDynamicProgramming.hpp +177 -0
  428. casadi/include/include/coin/CbcFeasibilityBase.hpp +60 -0
  429. casadi/include/include/coin/CbcFixVariable.hpp +68 -0
  430. casadi/include/include/coin/CbcFollowOn.hpp +207 -0
  431. casadi/include/include/coin/CbcFullNodeInfo.hpp +171 -0
  432. casadi/include/include/coin/CbcGeneral.hpp +60 -0
  433. casadi/include/include/coin/CbcGeneralDepth.hpp +289 -0
  434. casadi/include/include/coin/CbcHeuristic.hpp +735 -0
  435. casadi/include/include/coin/CbcHeuristicDINS.hpp +98 -0
  436. casadi/include/include/coin/CbcHeuristicDW.hpp +374 -0
  437. casadi/include/include/coin/CbcHeuristicDive.hpp +198 -0
  438. casadi/include/include/coin/CbcHeuristicDiveCoefficient.hpp +52 -0
  439. casadi/include/include/coin/CbcHeuristicDiveFractional.hpp +52 -0
  440. casadi/include/include/coin/CbcHeuristicDiveGuided.hpp +55 -0
  441. casadi/include/include/coin/CbcHeuristicDiveLineSearch.hpp +52 -0
  442. casadi/include/include/coin/CbcHeuristicDivePseudoCost.hpp +60 -0
  443. casadi/include/include/coin/CbcHeuristicDiveVectorLength.hpp +52 -0
  444. casadi/include/include/coin/CbcHeuristicFPump.hpp +375 -0
  445. casadi/include/include/coin/CbcHeuristicGreedy.hpp +289 -0
  446. casadi/include/include/coin/CbcHeuristicLocal.hpp +276 -0
  447. casadi/include/include/coin/CbcHeuristicPivotAndFix.hpp +58 -0
  448. casadi/include/include/coin/CbcHeuristicRENS.hpp +79 -0
  449. casadi/include/include/coin/CbcHeuristicRINS.hpp +106 -0
  450. casadi/include/include/coin/CbcHeuristicRandRound.hpp +58 -0
  451. casadi/include/include/coin/CbcHeuristicVND.hpp +95 -0
  452. casadi/include/include/coin/CbcLinked.hpp +1443 -0
  453. casadi/include/include/coin/CbcMessage.hpp +94 -0
  454. casadi/include/include/coin/CbcMipStartIO.hpp +29 -0
  455. casadi/include/include/coin/CbcModel.hpp +3296 -0
  456. casadi/include/include/coin/CbcNWay.hpp +171 -0
  457. casadi/include/include/coin/CbcNode.hpp +380 -0
  458. casadi/include/include/coin/CbcNodeInfo.hpp +377 -0
  459. casadi/include/include/coin/CbcObject.hpp +288 -0
  460. casadi/include/include/coin/CbcObjectUpdateData.hpp +63 -0
  461. casadi/include/include/coin/CbcOrClpParam.cpp +4321 -0
  462. casadi/include/include/coin/CbcOrClpParam.hpp +585 -0
  463. casadi/include/include/coin/CbcParam.hpp +338 -0
  464. casadi/include/include/coin/CbcPartialNodeInfo.hpp +116 -0
  465. casadi/include/include/coin/CbcSOS.hpp +290 -0
  466. casadi/include/include/coin/CbcSimpleInteger.hpp +299 -0
  467. casadi/include/include/coin/CbcSimpleIntegerDynamicPseudoCost.hpp +619 -0
  468. casadi/include/include/coin/CbcSimpleIntegerPseudoCost.hpp +122 -0
  469. casadi/include/include/coin/CbcSolver.hpp +460 -0
  470. casadi/include/include/coin/CbcStrategy.hpp +269 -0
  471. casadi/include/include/coin/CbcSubProblem.hpp +84 -0
  472. casadi/include/include/coin/CbcTree.hpp +493 -0
  473. casadi/include/include/coin/CbcTreeLocal.hpp +393 -0
  474. casadi/include/include/coin/Cbc_C_Interface.h +904 -0
  475. casadi/include/include/coin/Cgl012cut.hpp +464 -0
  476. casadi/include/include/coin/CglAllDifferent.hpp +115 -0
  477. casadi/include/include/coin/CglClique.hpp +312 -0
  478. casadi/include/include/coin/CglConfig.h +19 -0
  479. casadi/include/include/coin/CglCutGenerator.hpp +133 -0
  480. casadi/include/include/coin/CglDuplicateRow.hpp +189 -0
  481. casadi/include/include/coin/CglFlowCover.hpp +371 -0
  482. casadi/include/include/coin/CglGMI.hpp +364 -0
  483. casadi/include/include/coin/CglGMIParam.hpp +313 -0
  484. casadi/include/include/coin/CglGomory.hpp +204 -0
  485. casadi/include/include/coin/CglKnapsackCover.hpp +310 -0
  486. casadi/include/include/coin/CglLandP.hpp +306 -0
  487. casadi/include/include/coin/CglLandPValidator.hpp +130 -0
  488. casadi/include/include/coin/CglLiftAndProject.hpp +104 -0
  489. casadi/include/include/coin/CglMessage.hpp +49 -0
  490. casadi/include/include/coin/CglMixedIntegerRounding.hpp +429 -0
  491. casadi/include/include/coin/CglMixedIntegerRounding2.hpp +427 -0
  492. casadi/include/include/coin/CglOddHole.hpp +160 -0
  493. casadi/include/include/coin/CglParam.hpp +93 -0
  494. casadi/include/include/coin/CglPreProcess.hpp +600 -0
  495. casadi/include/include/coin/CglProbing.hpp +543 -0
  496. casadi/include/include/coin/CglRedSplit.hpp +448 -0
  497. casadi/include/include/coin/CglRedSplit2.hpp +494 -0
  498. casadi/include/include/coin/CglRedSplit2Param.hpp +495 -0
  499. casadi/include/include/coin/CglRedSplitParam.hpp +272 -0
  500. casadi/include/include/coin/CglResidualCapacity.hpp +240 -0
  501. casadi/include/include/coin/CglSimpleRounding.hpp +174 -0
  502. casadi/include/include/coin/CglStored.hpp +140 -0
  503. casadi/include/include/coin/CglTreeInfo.hpp +216 -0
  504. casadi/include/include/coin/CglTwomir.hpp +562 -0
  505. casadi/include/include/coin/CglZeroHalf.hpp +133 -0
  506. casadi/include/include/coin/ClpAmplObjective.hpp +113 -0
  507. casadi/include/include/coin/ClpCholeskyBase.hpp +321 -0
  508. casadi/include/include/coin/ClpCholeskyDense.hpp +157 -0
  509. casadi/include/include/coin/ClpCholeskyMumps.hpp +65 -0
  510. casadi/include/include/coin/ClpCholeskyPardiso.hpp +67 -0
  511. casadi/include/include/coin/ClpConfig.h +17 -0
  512. casadi/include/include/coin/ClpConstraint.hpp +129 -0
  513. casadi/include/include/coin/ClpConstraintAmpl.hpp +109 -0
  514. casadi/include/include/coin/ClpConstraintLinear.hpp +113 -0
  515. casadi/include/include/coin/ClpConstraintQuadratic.hpp +123 -0
  516. casadi/include/include/coin/ClpDualRowDantzig.hpp +72 -0
  517. casadi/include/include/coin/ClpDualRowPivot.hpp +136 -0
  518. casadi/include/include/coin/ClpDualRowSteepest.hpp +160 -0
  519. casadi/include/include/coin/ClpDummyMatrix.hpp +186 -0
  520. casadi/include/include/coin/ClpDynamicExampleMatrix.hpp +199 -0
  521. casadi/include/include/coin/ClpDynamicMatrix.hpp +420 -0
  522. casadi/include/include/coin/ClpEventHandler.hpp +193 -0
  523. casadi/include/include/coin/ClpFactorization.hpp +556 -0
  524. casadi/include/include/coin/ClpGubDynamicMatrix.hpp +270 -0
  525. casadi/include/include/coin/ClpGubMatrix.hpp +373 -0
  526. casadi/include/include/coin/ClpInterior.hpp +622 -0
  527. casadi/include/include/coin/ClpLinearObjective.hpp +104 -0
  528. casadi/include/include/coin/ClpMatrixBase.hpp +561 -0
  529. casadi/include/include/coin/ClpMessage.hpp +131 -0
  530. casadi/include/include/coin/ClpModel.hpp +1442 -0
  531. casadi/include/include/coin/ClpNetworkMatrix.hpp +235 -0
  532. casadi/include/include/coin/ClpNode.hpp +364 -0
  533. casadi/include/include/coin/ClpNonLinearCost.hpp +432 -0
  534. casadi/include/include/coin/ClpObjective.hpp +142 -0
  535. casadi/include/include/coin/ClpPEDualRowDantzig.hpp +84 -0
  536. casadi/include/include/coin/ClpPEDualRowSteepest.hpp +100 -0
  537. casadi/include/include/coin/ClpPEPrimalColumnDantzig.hpp +71 -0
  538. casadi/include/include/coin/ClpPEPrimalColumnSteepest.hpp +107 -0
  539. casadi/include/include/coin/ClpPESimplex.hpp +231 -0
  540. casadi/include/include/coin/ClpPackedMatrix.hpp +778 -0
  541. casadi/include/include/coin/ClpParameters.hpp +132 -0
  542. casadi/include/include/coin/ClpPdcoBase.hpp +110 -0
  543. casadi/include/include/coin/ClpPlusMinusOneMatrix.hpp +565 -0
  544. casadi/include/include/coin/ClpPresolve.hpp +379 -0
  545. casadi/include/include/coin/ClpPrimalColumnDantzig.hpp +74 -0
  546. casadi/include/include/coin/ClpPrimalColumnPivot.hpp +163 -0
  547. casadi/include/include/coin/ClpPrimalColumnSteepest.hpp +281 -0
  548. casadi/include/include/coin/ClpQuadraticObjective.hpp +161 -0
  549. casadi/include/include/coin/ClpSimplex.hpp +2137 -0
  550. casadi/include/include/coin/ClpSimplexDual.hpp +304 -0
  551. casadi/include/include/coin/ClpSimplexNonlinear.hpp +117 -0
  552. casadi/include/include/coin/ClpSimplexOther.hpp +282 -0
  553. casadi/include/include/coin/ClpSimplexPrimal.hpp +244 -0
  554. casadi/include/include/coin/ClpSolve.hpp +505 -0
  555. casadi/include/include/coin/Clp_C_Interface.h +554 -0
  556. casadi/include/include/coin/CoinAlloc.hpp +179 -0
  557. casadi/include/include/coin/CoinBuild.hpp +159 -0
  558. casadi/include/include/coin/CoinDenseFactorization.hpp +452 -0
  559. casadi/include/include/coin/CoinDenseVector.hpp +401 -0
  560. casadi/include/include/coin/CoinDistance.hpp +51 -0
  561. casadi/include/include/coin/CoinError.hpp +274 -0
  562. casadi/include/include/coin/CoinFactorization.hpp +2178 -0
  563. casadi/include/include/coin/CoinFileIO.hpp +185 -0
  564. casadi/include/include/coin/CoinFinite.hpp +37 -0
  565. casadi/include/include/coin/CoinFloatEqual.hpp +204 -0
  566. casadi/include/include/coin/CoinHelperFunctions.hpp +1270 -0
  567. casadi/include/include/coin/CoinIndexedVector.hpp +1437 -0
  568. casadi/include/include/coin/CoinLpIO.hpp +836 -0
  569. casadi/include/include/coin/CoinMessage.hpp +95 -0
  570. casadi/include/include/coin/CoinMessageHandler.hpp +717 -0
  571. casadi/include/include/coin/CoinModel.hpp +1214 -0
  572. casadi/include/include/coin/CoinModelUseful.hpp +518 -0
  573. casadi/include/include/coin/CoinMpsIO.hpp +1142 -0
  574. casadi/include/include/coin/CoinOslFactorization.hpp +287 -0
  575. casadi/include/include/coin/CoinPackedMatrix.hpp +956 -0
  576. casadi/include/include/coin/CoinPackedVector.hpp +670 -0
  577. casadi/include/include/coin/CoinPackedVectorBase.hpp +274 -0
  578. casadi/include/include/coin/CoinParam.hpp +644 -0
  579. casadi/include/include/coin/CoinPragma.hpp +29 -0
  580. casadi/include/include/coin/CoinPresolveDoubleton.hpp +76 -0
  581. casadi/include/include/coin/CoinPresolveDual.hpp +84 -0
  582. casadi/include/include/coin/CoinPresolveDupcol.hpp +259 -0
  583. casadi/include/include/coin/CoinPresolveEmpty.hpp +120 -0
  584. casadi/include/include/coin/CoinPresolveFixed.hpp +185 -0
  585. casadi/include/include/coin/CoinPresolveForcing.hpp +69 -0
  586. casadi/include/include/coin/CoinPresolveImpliedFree.hpp +66 -0
  587. casadi/include/include/coin/CoinPresolveIsolated.hpp +59 -0
  588. casadi/include/include/coin/CoinPresolveMatrix.hpp +1996 -0
  589. casadi/include/include/coin/CoinPresolveMonitor.hpp +105 -0
  590. casadi/include/include/coin/CoinPresolvePsdebug.hpp +169 -0
  591. casadi/include/include/coin/CoinPresolveSingleton.hpp +115 -0
  592. casadi/include/include/coin/CoinPresolveSubst.hpp +103 -0
  593. casadi/include/include/coin/CoinPresolveTighten.hpp +58 -0
  594. casadi/include/include/coin/CoinPresolveTripleton.hpp +69 -0
  595. casadi/include/include/coin/CoinPresolveUseless.hpp +63 -0
  596. casadi/include/include/coin/CoinPresolveZeros.hpp +65 -0
  597. casadi/include/include/coin/CoinRational.hpp +43 -0
  598. casadi/include/include/coin/CoinSearchTree.hpp +523 -0
  599. casadi/include/include/coin/CoinShallowPackedVector.hpp +149 -0
  600. casadi/include/include/coin/CoinSignal.hpp +127 -0
  601. casadi/include/include/coin/CoinSimpFactorization.hpp +432 -0
  602. casadi/include/include/coin/CoinSmartPtr.hpp +548 -0
  603. casadi/include/include/coin/CoinSnapshot.hpp +572 -0
  604. casadi/include/include/coin/CoinSort.hpp +753 -0
  605. casadi/include/include/coin/CoinStructuredModel.hpp +270 -0
  606. casadi/include/include/coin/CoinTime.hpp +350 -0
  607. casadi/include/include/coin/CoinTypes.hpp +67 -0
  608. casadi/include/include/coin/CoinUtility.hpp +26 -0
  609. casadi/include/include/coin/CoinUtilsConfig.h +34 -0
  610. casadi/include/include/coin/CoinWarmStart.hpp +56 -0
  611. casadi/include/include/coin/CoinWarmStartBasis.hpp +468 -0
  612. casadi/include/include/coin/CoinWarmStartDual.hpp +180 -0
  613. casadi/include/include/coin/CoinWarmStartPrimalDual.hpp +233 -0
  614. casadi/include/include/coin/CoinWarmStartVector.hpp +523 -0
  615. casadi/include/include/coin/Coin_C_defines.h +149 -0
  616. casadi/include/include/coin/Idiot.hpp +327 -0
  617. casadi/include/include/coin/OsiAuxInfo.hpp +261 -0
  618. casadi/include/include/coin/OsiBranchingObject.hpp +1097 -0
  619. casadi/include/include/coin/OsiCbcSolverInterface.hpp +791 -0
  620. casadi/include/include/coin/OsiChooseVariable.hpp +645 -0
  621. casadi/include/include/coin/OsiClpSolverInterface.hpp +1604 -0
  622. casadi/include/include/coin/OsiColCut.hpp +322 -0
  623. casadi/include/include/coin/OsiCollections.hpp +34 -0
  624. casadi/include/include/coin/OsiConfig.h +19 -0
  625. casadi/include/include/coin/OsiCut.hpp +251 -0
  626. casadi/include/include/coin/OsiCuts.hpp +505 -0
  627. casadi/include/include/coin/OsiPresolve.hpp +272 -0
  628. casadi/include/include/coin/OsiRowCut.hpp +345 -0
  629. casadi/include/include/coin/OsiRowCutDebugger.hpp +190 -0
  630. casadi/include/include/coin/OsiSolverBranch.hpp +169 -0
  631. casadi/include/include/coin/OsiSolverInterface.hpp +2221 -0
  632. casadi/include/include/coin/OsiSolverParameters.hpp +144 -0
  633. casadi/include/include/coin/OsiUnitTests.hpp +390 -0
  634. casadi/include/include/coin-or/IpAlgBuilder.hpp +417 -0
  635. casadi/include/include/coin-or/IpAlgStrategy.hpp +201 -0
  636. casadi/include/include/coin-or/IpAlgTypes.hpp +64 -0
  637. casadi/include/include/coin-or/IpAugSystemSolver.hpp +212 -0
  638. casadi/include/include/coin-or/IpBlas.hpp +426 -0
  639. casadi/include/include/coin-or/IpCachedResults.hpp +897 -0
  640. casadi/include/include/coin-or/IpCompoundMatrix.hpp +423 -0
  641. casadi/include/include/coin-or/IpCompoundSymMatrix.hpp +348 -0
  642. casadi/include/include/coin-or/IpCompoundVector.hpp +395 -0
  643. casadi/include/include/coin-or/IpConvCheck.hpp +97 -0
  644. casadi/include/include/coin-or/IpDebug.hpp +167 -0
  645. casadi/include/include/coin-or/IpDenseVector.hpp +626 -0
  646. casadi/include/include/coin-or/IpDiagMatrix.hpp +158 -0
  647. casadi/include/include/coin-or/IpEqMultCalculator.hpp +76 -0
  648. casadi/include/include/coin-or/IpException.hpp +156 -0
  649. casadi/include/include/coin-or/IpExpansionMatrix.hpp +245 -0
  650. casadi/include/include/coin-or/IpGenTMatrix.hpp +290 -0
  651. casadi/include/include/coin-or/IpHessianUpdater.hpp +73 -0
  652. casadi/include/include/coin-or/IpIdentityMatrix.hpp +167 -0
  653. casadi/include/include/coin-or/IpIpoptAlg.hpp +257 -0
  654. casadi/include/include/coin-or/IpIpoptApplication.hpp +367 -0
  655. casadi/include/include/coin-or/IpIpoptCalculatedQuantities.hpp +1009 -0
  656. casadi/include/include/coin-or/IpIpoptData.hpp +966 -0
  657. casadi/include/include/coin-or/IpIpoptNLP.hpp +328 -0
  658. casadi/include/include/coin-or/IpIterateInitializer.hpp +68 -0
  659. casadi/include/include/coin-or/IpIteratesVector.hpp +840 -0
  660. casadi/include/include/coin-or/IpIterationOutput.hpp +78 -0
  661. casadi/include/include/coin-or/IpJournalist.hpp +573 -0
  662. casadi/include/include/coin-or/IpLapack.hpp +227 -0
  663. casadi/include/include/coin-or/IpLibraryLoader.hpp +76 -0
  664. casadi/include/include/coin-or/IpLineSearch.hpp +106 -0
  665. casadi/include/include/coin-or/IpLinearSolvers.h +46 -0
  666. casadi/include/include/coin-or/IpMatrix.hpp +434 -0
  667. casadi/include/include/coin-or/IpMuUpdate.hpp +77 -0
  668. casadi/include/include/coin-or/IpNLP.hpp +306 -0
  669. casadi/include/include/coin-or/IpNLPScaling.hpp +582 -0
  670. casadi/include/include/coin-or/IpObserver.hpp +422 -0
  671. casadi/include/include/coin-or/IpOptionsList.hpp +412 -0
  672. casadi/include/include/coin-or/IpOrigIpoptNLP.hpp +603 -0
  673. casadi/include/include/coin-or/IpPDSystemSolver.hpp +137 -0
  674. casadi/include/include/coin-or/IpReferenced.hpp +262 -0
  675. casadi/include/include/coin-or/IpRegOptions.hpp +1152 -0
  676. casadi/include/include/coin-or/IpReturnCodes.h +23 -0
  677. casadi/include/include/coin-or/IpReturnCodes.hpp +18 -0
  678. casadi/include/include/coin-or/IpReturnCodes.inc +71 -0
  679. casadi/include/include/coin-or/IpReturnCodes_inc.h +45 -0
  680. casadi/include/include/coin-or/IpScaledMatrix.hpp +291 -0
  681. casadi/include/include/coin-or/IpSearchDirCalculator.hpp +72 -0
  682. casadi/include/include/coin-or/IpSmartPtr.hpp +865 -0
  683. casadi/include/include/coin-or/IpSolveStatistics.hpp +210 -0
  684. casadi/include/include/coin-or/IpSparseSymLinearSolverInterface.hpp +260 -0
  685. casadi/include/include/coin-or/IpStdAugSystemSolver.cpp +555 -0
  686. casadi/include/include/coin-or/IpStdCInterface.h +428 -0
  687. casadi/include/include/coin-or/IpSumSymMatrix.hpp +186 -0
  688. casadi/include/include/coin-or/IpSymLinearSolver.hpp +141 -0
  689. casadi/include/include/coin-or/IpSymMatrix.hpp +167 -0
  690. casadi/include/include/coin-or/IpSymScaledMatrix.hpp +255 -0
  691. casadi/include/include/coin-or/IpSymTMatrix.hpp +275 -0
  692. casadi/include/include/coin-or/IpTNLP.hpp +820 -0
  693. casadi/include/include/coin-or/IpTNLPAdapter.hpp +648 -0
  694. casadi/include/include/coin-or/IpTNLPReducer.hpp +274 -0
  695. casadi/include/include/coin-or/IpTaggedObject.hpp +128 -0
  696. casadi/include/include/coin-or/IpTimedTask.hpp +218 -0
  697. casadi/include/include/coin-or/IpTimingStatistics.hpp +323 -0
  698. casadi/include/include/coin-or/IpTripletHelper.hpp +308 -0
  699. casadi/include/include/coin-or/IpTypes.h +81 -0
  700. casadi/include/include/coin-or/IpTypes.hpp +30 -0
  701. casadi/include/include/coin-or/IpUtils.hpp +166 -0
  702. casadi/include/include/coin-or/IpVector.hpp +892 -0
  703. casadi/include/include/coin-or/IpZeroSymMatrix.hpp +155 -0
  704. casadi/include/include/coin-or/IpoptConfig.h +45 -0
  705. casadi/include/include/coin-or/SensAlgorithm.hpp +114 -0
  706. casadi/include/include/coin-or/SensApplication.hpp +188 -0
  707. casadi/include/include/coin-or/SensBacksolver.hpp +36 -0
  708. casadi/include/include/coin-or/SensMeasurement.hpp +56 -0
  709. casadi/include/include/coin-or/SensPCalculator.hpp +137 -0
  710. casadi/include/include/coin-or/SensRegOp.hpp +21 -0
  711. casadi/include/include/coin-or/SensSchurData.hpp +182 -0
  712. casadi/include/include/coin-or/SensSchurDriver.hpp +118 -0
  713. casadi/include/include/coin-or/SensSimpleBacksolver.hpp +49 -0
  714. casadi/include/include/coin-or/SensStepCalc.hpp +85 -0
  715. casadi/include/include/coin-or/SensUtils.hpp +63 -0
  716. casadi/include/include/coin-or/metis/defs.h +161 -0
  717. casadi/include/include/coin-or/metis/macros.h +143 -0
  718. casadi/include/include/coin-or/metis/metis.h +37 -0
  719. casadi/include/include/coin-or/metis/proto.h +505 -0
  720. casadi/include/include/coin-or/metis/rename.h +418 -0
  721. casadi/include/include/coin-or/metis/struct.h +251 -0
  722. casadi/include/include/coin-or/mumps/dmumps_c.h +142 -0
  723. casadi/include/include/coin-or/mumps/mumps_c_types.h +72 -0
  724. casadi/include/include/coin-or/mumps/mumps_compat.h +27 -0
  725. casadi/include/include/coin-or/mumps/mumps_int_def.h +11 -0
  726. casadi/include/include/coin-or/mumps/mumps_mpi.h +67 -0
  727. casadi/include/include/d_blas.h +78 -0
  728. casadi/include/include/d_blas_64.h +73 -0
  729. casadi/include/include/highs/HConfig.h +20 -0
  730. casadi/include/include/highs/Highs.h +1459 -0
  731. casadi/include/include/highs/filereaderlp/builder.hpp +25 -0
  732. casadi/include/include/highs/filereaderlp/model.hpp +68 -0
  733. casadi/include/include/highs/filereaderlp/reader.hpp +10 -0
  734. casadi/include/include/highs/fortran/highs_fortran_api.mod +0 -0
  735. casadi/include/include/highs/interfaces/highs_c_api.h +2107 -0
  736. casadi/include/include/highs/io/Filereader.h +47 -0
  737. casadi/include/include/highs/io/FilereaderEms.h +33 -0
  738. casadi/include/include/highs/io/FilereaderLp.h +54 -0
  739. casadi/include/include/highs/io/FilereaderMps.h +30 -0
  740. casadi/include/include/highs/io/HMPSIO.h +81 -0
  741. casadi/include/include/highs/io/HMpsFF.h +233 -0
  742. casadi/include/include/highs/io/HighsIO.h +99 -0
  743. casadi/include/include/highs/io/LoadOptions.h +27 -0
  744. casadi/include/include/highs/ipm/IpxWrapper.h +73 -0
  745. casadi/include/include/highs/lp_data/HConst.h +295 -0
  746. casadi/include/include/highs/lp_data/HStruct.h +124 -0
  747. casadi/include/include/highs/lp_data/HighsAnalysis.h +26 -0
  748. casadi/include/include/highs/lp_data/HighsCallback.h +33 -0
  749. casadi/include/include/highs/lp_data/HighsCallbackStruct.h +36 -0
  750. casadi/include/include/highs/lp_data/HighsDebug.h +37 -0
  751. casadi/include/include/highs/lp_data/HighsInfo.h +304 -0
  752. casadi/include/include/highs/lp_data/HighsInfoDebug.h +30 -0
  753. casadi/include/include/highs/lp_data/HighsLp.h +85 -0
  754. casadi/include/include/highs/lp_data/HighsLpSolverObject.h +48 -0
  755. casadi/include/include/highs/lp_data/HighsLpUtils.h +266 -0
  756. casadi/include/include/highs/lp_data/HighsModelUtils.h +109 -0
  757. casadi/include/include/highs/lp_data/HighsOptions.h +1130 -0
  758. casadi/include/include/highs/lp_data/HighsRanging.h +46 -0
  759. casadi/include/include/highs/lp_data/HighsRuntimeOptions.h +276 -0
  760. casadi/include/include/highs/lp_data/HighsSolution.h +137 -0
  761. casadi/include/include/highs/lp_data/HighsSolutionDebug.h +90 -0
  762. casadi/include/include/highs/lp_data/HighsSolve.h +24 -0
  763. casadi/include/include/highs/lp_data/HighsStatus.h +32 -0
  764. casadi/include/include/highs/mip/HighsCliqueTable.h +318 -0
  765. casadi/include/include/highs/mip/HighsConflictPool.h +112 -0
  766. casadi/include/include/highs/mip/HighsCutGeneration.h +96 -0
  767. casadi/include/include/highs/mip/HighsCutPool.h +171 -0
  768. casadi/include/include/highs/mip/HighsDebugSol.h +142 -0
  769. casadi/include/include/highs/mip/HighsDomain.h +633 -0
  770. casadi/include/include/highs/mip/HighsDomainChange.h +51 -0
  771. casadi/include/include/highs/mip/HighsDynamicRowMatrix.h +105 -0
  772. casadi/include/include/highs/mip/HighsGFkSolve.h +441 -0
  773. casadi/include/include/highs/mip/HighsImplications.h +146 -0
  774. casadi/include/include/highs/mip/HighsLpAggregator.h +53 -0
  775. casadi/include/include/highs/mip/HighsLpRelaxation.h +355 -0
  776. casadi/include/include/highs/mip/HighsMipSolver.h +103 -0
  777. casadi/include/include/highs/mip/HighsMipSolverData.h +193 -0
  778. casadi/include/include/highs/mip/HighsModkSeparator.h +63 -0
  779. casadi/include/include/highs/mip/HighsNodeQueue.h +312 -0
  780. casadi/include/include/highs/mip/HighsObjectiveFunction.h +74 -0
  781. casadi/include/include/highs/mip/HighsPathSeparator.h +42 -0
  782. casadi/include/include/highs/mip/HighsPrimalHeuristics.h +68 -0
  783. casadi/include/include/highs/mip/HighsPseudocost.h +351 -0
  784. casadi/include/include/highs/mip/HighsRedcostFixing.h +45 -0
  785. casadi/include/include/highs/mip/HighsSearch.h +243 -0
  786. casadi/include/include/highs/mip/HighsSeparation.h +44 -0
  787. casadi/include/include/highs/mip/HighsSeparator.h +56 -0
  788. casadi/include/include/highs/mip/HighsTableauSeparator.h +37 -0
  789. casadi/include/include/highs/mip/HighsTransformedLp.h +66 -0
  790. casadi/include/include/highs/model/HighsHessian.h +49 -0
  791. casadi/include/include/highs/model/HighsHessianUtils.h +47 -0
  792. casadi/include/include/highs/model/HighsModel.h +43 -0
  793. casadi/include/include/highs/parallel/HighsBinarySemaphore.h +113 -0
  794. casadi/include/include/highs/parallel/HighsCacheAlign.h +87 -0
  795. casadi/include/include/highs/parallel/HighsCombinable.h +121 -0
  796. casadi/include/include/highs/parallel/HighsMutex.h +128 -0
  797. casadi/include/include/highs/parallel/HighsParallel.h +128 -0
  798. casadi/include/include/highs/parallel/HighsRaceTimer.h +43 -0
  799. casadi/include/include/highs/parallel/HighsSchedulerConstants.h +24 -0
  800. casadi/include/include/highs/parallel/HighsSpinMutex.h +53 -0
  801. casadi/include/include/highs/parallel/HighsSplitDeque.h +583 -0
  802. casadi/include/include/highs/parallel/HighsTask.h +176 -0
  803. casadi/include/include/highs/parallel/HighsTaskExecutor.h +209 -0
  804. casadi/include/include/highs/presolve/HPresolve.h +352 -0
  805. casadi/include/include/highs/presolve/HPresolveAnalysis.h +54 -0
  806. casadi/include/include/highs/presolve/HighsPostsolveStack.h +883 -0
  807. casadi/include/include/highs/presolve/HighsSymmetry.h +283 -0
  808. casadi/include/include/highs/presolve/ICrash.h +121 -0
  809. casadi/include/include/highs/presolve/ICrashUtil.h +65 -0
  810. casadi/include/include/highs/presolve/ICrashX.h +26 -0
  811. casadi/include/include/highs/presolve/PresolveComponent.h +93 -0
  812. casadi/include/include/highs/qpsolver/a_asm.hpp +56 -0
  813. casadi/include/include/highs/qpsolver/a_quass.hpp +12 -0
  814. casadi/include/include/highs/qpsolver/perturbation.hpp +8 -0
  815. casadi/include/include/highs/qpsolver/quass.hpp +20 -0
  816. casadi/include/include/highs/qpsolver/scaling.hpp +8 -0
  817. casadi/include/include/highs/qpsolver/vector.hpp +235 -0
  818. casadi/include/include/highs/simplex/HApp.h +422 -0
  819. casadi/include/include/highs/simplex/HEkk.h +369 -0
  820. casadi/include/include/highs/simplex/HEkkDual.h +515 -0
  821. casadi/include/include/highs/simplex/HEkkDualRHS.h +138 -0
  822. casadi/include/include/highs/simplex/HEkkDualRow.h +204 -0
  823. casadi/include/include/highs/simplex/HEkkPrimal.h +190 -0
  824. casadi/include/include/highs/simplex/HSimplex.h +47 -0
  825. casadi/include/include/highs/simplex/HSimplexDebug.h +51 -0
  826. casadi/include/include/highs/simplex/HSimplexNla.h +184 -0
  827. casadi/include/include/highs/simplex/HSimplexReport.h +24 -0
  828. casadi/include/include/highs/simplex/HighsSimplexAnalysis.h +375 -0
  829. casadi/include/include/highs/simplex/SimplexConst.h +274 -0
  830. casadi/include/include/highs/simplex/SimplexStruct.h +264 -0
  831. casadi/include/include/highs/simplex/SimplexTimer.h +427 -0
  832. casadi/include/include/highs/test/DevKkt.h +146 -0
  833. casadi/include/include/highs/test/KktCh2.h +82 -0
  834. casadi/include/include/highs/util/FactorTimer.h +224 -0
  835. casadi/include/include/highs/util/HFactor.h +558 -0
  836. casadi/include/include/highs/util/HFactorConst.h +84 -0
  837. casadi/include/include/highs/util/HFactorDebug.h +58 -0
  838. casadi/include/include/highs/util/HSet.h +92 -0
  839. casadi/include/include/highs/util/HVector.h +25 -0
  840. casadi/include/include/highs/util/HVectorBase.h +105 -0
  841. casadi/include/include/highs/util/HighsCDouble.h +310 -0
  842. casadi/include/include/highs/util/HighsComponent.h +56 -0
  843. casadi/include/include/highs/util/HighsDataStack.h +86 -0
  844. casadi/include/include/highs/util/HighsDisjointSets.h +110 -0
  845. casadi/include/include/highs/util/HighsHash.h +1270 -0
  846. casadi/include/include/highs/util/HighsHashTree.h +1443 -0
  847. casadi/include/include/highs/util/HighsInt.h +39 -0
  848. casadi/include/include/highs/util/HighsIntegers.h +216 -0
  849. casadi/include/include/highs/util/HighsLinearSumBounds.h +160 -0
  850. casadi/include/include/highs/util/HighsMatrixPic.h +40 -0
  851. casadi/include/include/highs/util/HighsMatrixSlice.h +561 -0
  852. casadi/include/include/highs/util/HighsMatrixUtils.h +57 -0
  853. casadi/include/include/highs/util/HighsRandom.h +233 -0
  854. casadi/include/include/highs/util/HighsRbTree.h +455 -0
  855. casadi/include/include/highs/util/HighsSort.h +134 -0
  856. casadi/include/include/highs/util/HighsSparseMatrix.h +144 -0
  857. casadi/include/include/highs/util/HighsSparseVectorSum.h +98 -0
  858. casadi/include/include/highs/util/HighsSplay.h +138 -0
  859. casadi/include/include/highs/util/HighsTimer.h +334 -0
  860. casadi/include/include/highs/util/HighsUtils.h +203 -0
  861. casadi/include/include/highs/util/stringutil.h +39 -0
  862. casadi/include/include/highs_export.h +42 -0
  863. casadi/include/include/hpipm_aux_mem.h +52 -0
  864. casadi/include/include/hpipm_aux_string.h +50 -0
  865. casadi/include/include/hpipm_common.h +76 -0
  866. casadi/include/include/hpipm_d_cast_qcqp.h +71 -0
  867. casadi/include/include/hpipm_d_cond.h +135 -0
  868. casadi/include/include/hpipm_d_cond_aux.h +92 -0
  869. casadi/include/include/hpipm_d_cond_qcqp.h +129 -0
  870. casadi/include/include/hpipm_d_core_qp_ipm.h +101 -0
  871. casadi/include/include/hpipm_d_core_qp_ipm_aux.h +68 -0
  872. casadi/include/include/hpipm_d_dense_qcqp.h +199 -0
  873. casadi/include/include/hpipm_d_dense_qcqp_dim.h +98 -0
  874. casadi/include/include/hpipm_d_dense_qcqp_ipm.h +193 -0
  875. casadi/include/include/hpipm_d_dense_qcqp_res.h +108 -0
  876. casadi/include/include/hpipm_d_dense_qcqp_sol.h +85 -0
  877. casadi/include/include/hpipm_d_dense_qcqp_utils.h +82 -0
  878. casadi/include/include/hpipm_d_dense_qp.h +207 -0
  879. casadi/include/include/hpipm_d_dense_qp_dim.h +92 -0
  880. casadi/include/include/hpipm_d_dense_qp_ipm.h +260 -0
  881. casadi/include/include/hpipm_d_dense_qp_kkt.h +72 -0
  882. casadi/include/include/hpipm_d_dense_qp_res.h +106 -0
  883. casadi/include/include/hpipm_d_dense_qp_sol.h +94 -0
  884. casadi/include/include/hpipm_d_dense_qp_utils.h +83 -0
  885. casadi/include/include/hpipm_d_ocp_qcqp.h +322 -0
  886. casadi/include/include/hpipm_d_ocp_qcqp_dim.h +130 -0
  887. casadi/include/include/hpipm_d_ocp_qcqp_ipm.h +192 -0
  888. casadi/include/include/hpipm_d_ocp_qcqp_red.h +118 -0
  889. casadi/include/include/hpipm_d_ocp_qcqp_res.h +115 -0
  890. casadi/include/include/hpipm_d_ocp_qcqp_sol.h +114 -0
  891. casadi/include/include/hpipm_d_ocp_qcqp_utils.h +81 -0
  892. casadi/include/include/hpipm_d_ocp_qp.h +306 -0
  893. casadi/include/include/hpipm_d_ocp_qp_dim.h +142 -0
  894. casadi/include/include/hpipm_d_ocp_qp_ipm.h +252 -0
  895. casadi/include/include/hpipm_d_ocp_qp_kkt.h +66 -0
  896. casadi/include/include/hpipm_d_ocp_qp_red.h +117 -0
  897. casadi/include/include/hpipm_d_ocp_qp_res.h +113 -0
  898. casadi/include/include/hpipm_d_ocp_qp_sol.h +128 -0
  899. casadi/include/include/hpipm_d_ocp_qp_utils.h +82 -0
  900. casadi/include/include/hpipm_d_part_cond.h +115 -0
  901. casadi/include/include/hpipm_d_part_cond_qcqp.h +106 -0
  902. casadi/include/include/hpipm_d_sim_erk.h +122 -0
  903. casadi/include/include/hpipm_d_sim_rk.h +71 -0
  904. casadi/include/include/hpipm_d_tree_ocp_qcqp.h +213 -0
  905. casadi/include/include/hpipm_d_tree_ocp_qcqp_dim.h +117 -0
  906. casadi/include/include/hpipm_d_tree_ocp_qcqp_ipm.h +191 -0
  907. casadi/include/include/hpipm_d_tree_ocp_qcqp_res.h +109 -0
  908. casadi/include/include/hpipm_d_tree_ocp_qcqp_sol.h +99 -0
  909. casadi/include/include/hpipm_d_tree_ocp_qcqp_utils.h +84 -0
  910. casadi/include/include/hpipm_d_tree_ocp_qp.h +195 -0
  911. casadi/include/include/hpipm_d_tree_ocp_qp_dim.h +111 -0
  912. casadi/include/include/hpipm_d_tree_ocp_qp_ipm.h +209 -0
  913. casadi/include/include/hpipm_d_tree_ocp_qp_kkt.h +52 -0
  914. casadi/include/include/hpipm_d_tree_ocp_qp_res.h +107 -0
  915. casadi/include/include/hpipm_d_tree_ocp_qp_sol.h +100 -0
  916. casadi/include/include/hpipm_d_tree_ocp_qp_utils.h +83 -0
  917. casadi/include/include/hpipm_m_dense_qp.h +68 -0
  918. casadi/include/include/hpipm_m_dense_qp_dim.h +68 -0
  919. casadi/include/include/hpipm_m_ocp_qp.h +49 -0
  920. casadi/include/include/hpipm_m_ocp_qp_ipm_hard.h +115 -0
  921. casadi/include/include/hpipm_m_ocp_qp_kkt.h +45 -0
  922. casadi/include/include/hpipm_s_cast_qcqp.h +72 -0
  923. casadi/include/include/hpipm_s_cond.h +137 -0
  924. casadi/include/include/hpipm_s_cond_aux.h +92 -0
  925. casadi/include/include/hpipm_s_cond_qcqp.h +130 -0
  926. casadi/include/include/hpipm_s_core_qp_ipm.h +101 -0
  927. casadi/include/include/hpipm_s_core_qp_ipm_aux.h +68 -0
  928. casadi/include/include/hpipm_s_dense_qcqp.h +200 -0
  929. casadi/include/include/hpipm_s_dense_qcqp_dim.h +99 -0
  930. casadi/include/include/hpipm_s_dense_qcqp_ipm.h +204 -0
  931. casadi/include/include/hpipm_s_dense_qcqp_res.h +109 -0
  932. casadi/include/include/hpipm_s_dense_qcqp_sol.h +86 -0
  933. casadi/include/include/hpipm_s_dense_qcqp_utils.h +83 -0
  934. casadi/include/include/hpipm_s_dense_qp.h +207 -0
  935. casadi/include/include/hpipm_s_dense_qp_dim.h +94 -0
  936. casadi/include/include/hpipm_s_dense_qp_ipm.h +260 -0
  937. casadi/include/include/hpipm_s_dense_qp_kkt.h +72 -0
  938. casadi/include/include/hpipm_s_dense_qp_res.h +107 -0
  939. casadi/include/include/hpipm_s_dense_qp_sol.h +94 -0
  940. casadi/include/include/hpipm_s_dense_qp_utils.h +84 -0
  941. casadi/include/include/hpipm_s_ocp_qcqp.h +322 -0
  942. casadi/include/include/hpipm_s_ocp_qcqp_dim.h +131 -0
  943. casadi/include/include/hpipm_s_ocp_qcqp_ipm.h +193 -0
  944. casadi/include/include/hpipm_s_ocp_qcqp_red.h +119 -0
  945. casadi/include/include/hpipm_s_ocp_qcqp_res.h +116 -0
  946. casadi/include/include/hpipm_s_ocp_qcqp_sol.h +115 -0
  947. casadi/include/include/hpipm_s_ocp_qcqp_utils.h +82 -0
  948. casadi/include/include/hpipm_s_ocp_qp.h +306 -0
  949. casadi/include/include/hpipm_s_ocp_qp_dim.h +141 -0
  950. casadi/include/include/hpipm_s_ocp_qp_ipm.h +252 -0
  951. casadi/include/include/hpipm_s_ocp_qp_kkt.h +66 -0
  952. casadi/include/include/hpipm_s_ocp_qp_red.h +118 -0
  953. casadi/include/include/hpipm_s_ocp_qp_res.h +115 -0
  954. casadi/include/include/hpipm_s_ocp_qp_sol.h +128 -0
  955. casadi/include/include/hpipm_s_ocp_qp_utils.h +83 -0
  956. casadi/include/include/hpipm_s_part_cond.h +115 -0
  957. casadi/include/include/hpipm_s_part_cond_qcqp.h +107 -0
  958. casadi/include/include/hpipm_s_sim_erk.h +121 -0
  959. casadi/include/include/hpipm_s_sim_rk.h +72 -0
  960. casadi/include/include/hpipm_s_tree_ocp_qcqp.h +213 -0
  961. casadi/include/include/hpipm_s_tree_ocp_qcqp_dim.h +118 -0
  962. casadi/include/include/hpipm_s_tree_ocp_qcqp_ipm.h +192 -0
  963. casadi/include/include/hpipm_s_tree_ocp_qcqp_res.h +110 -0
  964. casadi/include/include/hpipm_s_tree_ocp_qcqp_sol.h +97 -0
  965. casadi/include/include/hpipm_s_tree_ocp_qcqp_utils.h +85 -0
  966. casadi/include/include/hpipm_s_tree_ocp_qp.h +196 -0
  967. casadi/include/include/hpipm_s_tree_ocp_qp_dim.h +111 -0
  968. casadi/include/include/hpipm_s_tree_ocp_qp_ipm.h +208 -0
  969. casadi/include/include/hpipm_s_tree_ocp_qp_kkt.h +54 -0
  970. casadi/include/include/hpipm_s_tree_ocp_qp_res.h +108 -0
  971. casadi/include/include/hpipm_s_tree_ocp_qp_sol.h +98 -0
  972. casadi/include/include/hpipm_s_tree_ocp_qp_utils.h +84 -0
  973. casadi/include/include/hpipm_scenario_tree.h +70 -0
  974. casadi/include/include/hpipm_timing.h +67 -0
  975. casadi/include/include/hpipm_tree.h +76 -0
  976. casadi/include/include/osqp/auxil.h +181 -0
  977. casadi/include/include/osqp/constants.h +129 -0
  978. casadi/include/include/osqp/cs.h +180 -0
  979. casadi/include/include/osqp/ctrlc.h +56 -0
  980. casadi/include/include/osqp/error.h +38 -0
  981. casadi/include/include/osqp/glob_opts.h +167 -0
  982. casadi/include/include/osqp/lin_alg.h +216 -0
  983. casadi/include/include/osqp/lin_sys.h +54 -0
  984. casadi/include/include/osqp/osqp.h +430 -0
  985. casadi/include/include/osqp/osqp_configure.h +49 -0
  986. casadi/include/include/osqp/polish.h +25 -0
  987. casadi/include/include/osqp/proj.h +37 -0
  988. casadi/include/include/osqp/scaling.h +44 -0
  989. casadi/include/include/osqp/types.h +326 -0
  990. casadi/include/include/osqp/util.h +222 -0
  991. casadi/include/include/qdldl/qdldl.h +169 -0
  992. casadi/include/include/qdldl/qdldl_types.h +23 -0
  993. casadi/include/include/s_blas.h +78 -0
  994. casadi/include/include/s_blas_64.h +73 -0
  995. casadi/include/include/sleqp/defs.h +58 -0
  996. casadi/include/include/sleqp/export.h +42 -0
  997. casadi/include/include/sleqp/pub_cmp.h +18 -0
  998. casadi/include/include/sleqp/pub_dyn.h +140 -0
  999. casadi/include/include/sleqp/pub_error.h +50 -0
  1000. casadi/include/include/sleqp/pub_func.h +257 -0
  1001. casadi/include/include/sleqp/pub_hess_struct.h +105 -0
  1002. casadi/include/include/sleqp/pub_iterate.h +88 -0
  1003. casadi/include/include/sleqp/pub_log.h +88 -0
  1004. casadi/include/include/sleqp/pub_lsq.h +158 -0
  1005. casadi/include/include/sleqp/pub_mem.h +52 -0
  1006. casadi/include/include/sleqp/pub_problem.h +213 -0
  1007. casadi/include/include/sleqp/pub_scale.h +150 -0
  1008. casadi/include/include/sleqp/pub_settings.h +162 -0
  1009. casadi/include/include/sleqp/pub_solver.h +155 -0
  1010. casadi/include/include/sleqp/pub_types.h +230 -0
  1011. casadi/include/include/sleqp/pub_working_set.h +135 -0
  1012. casadi/include/include/sleqp/sparse/pub_mat.h +153 -0
  1013. casadi/include/include/sleqp/sparse/pub_vec.h +336 -0
  1014. casadi/include/include/sleqp.h +38 -0
  1015. casadi/include/include/superscs/cones.h +185 -0
  1016. casadi/include/include/superscs/constants.h +144 -0
  1017. casadi/include/include/superscs/cs.h +109 -0
  1018. casadi/include/include/superscs/ctrlc.h +77 -0
  1019. casadi/include/include/superscs/directions.h +125 -0
  1020. casadi/include/include/superscs/glbopts.h +240 -0
  1021. casadi/include/include/superscs/linAlg.h +437 -0
  1022. casadi/include/include/superscs/linSys.h +205 -0
  1023. casadi/include/include/superscs/linsys/amatrix.h +77 -0
  1024. casadi/include/include/superscs/linsys/common.h +49 -0
  1025. casadi/include/include/superscs/normalize.h +138 -0
  1026. casadi/include/include/superscs/scs.h +656 -0
  1027. casadi/include/include/superscs/scs_blas.h +79 -0
  1028. casadi/include/include/superscs/scs_parser.h +187 -0
  1029. casadi/include/include/superscs/unit_test_util.h +210 -0
  1030. casadi/include/include/superscs/util.h +354 -0
  1031. casadi/include/include/trlib/trlib_eigen_inverse.h +118 -0
  1032. casadi/include/include/trlib/trlib_krylov.h +493 -0
  1033. casadi/include/include/trlib/trlib_leftmost.h +181 -0
  1034. casadi/include/include/trlib/trlib_private.h +109 -0
  1035. casadi/include/include/trlib/trlib_quadratic_zero.h +57 -0
  1036. casadi/include/include/trlib/trlib_tri_factor.h +409 -0
  1037. casadi/include/include/trlib/trlib_types.h +36 -0
  1038. casadi/include/include/trlib.h +44 -0
  1039. casadi/include/licenses/CSparse/Doc/License.txt +19 -0
  1040. casadi/include/licenses/FMI-Standard-2.0.2/LICENSE.txt +473 -0
  1041. casadi/include/licenses/FMI-Standard-3.0/LICENSE.txt +464 -0
  1042. casadi/include/licenses/blasfeo-external/LICENSE.txt +26 -0
  1043. casadi/include/licenses/bonmin-external/Bonmin/LICENSE +87 -0
  1044. casadi/include/licenses/bonmin-external/LICENSE +3 -0
  1045. casadi/include/licenses/casadi/LICENSE/LICENSE.txt +165 -0
  1046. casadi/include/licenses/casadi-sundials/LICENSE +64 -0
  1047. casadi/include/licenses/casadi-sundials/cvodes/LICENSE +60 -0
  1048. casadi/include/licenses/casadi-sundials/idas/LICENSE +59 -0
  1049. casadi/include/licenses/casadi-sundials/kinsol/LICENSE +59 -0
  1050. casadi/include/licenses/casadi-sundials/sundials/LICENSE +67 -0
  1051. casadi/include/licenses/cbc-external/Cbc/LICENSE +239 -0
  1052. casadi/include/licenses/cbc-external/LICENSE +245 -0
  1053. casadi/include/licenses/cgl-external/Cgl/LICENSE +239 -0
  1054. casadi/include/licenses/cgl-external/LICENSE +245 -0
  1055. casadi/include/licenses/clp-external/Clp/LICENSE +239 -0
  1056. casadi/include/licenses/clp-external/LICENSE +245 -0
  1057. casadi/include/licenses/coinutils-external/CoinUtils/LICENSE +239 -0
  1058. casadi/include/licenses/coinutils-external/LICENSE +245 -0
  1059. casadi/include/licenses/highs-external/LICENSE +21 -0
  1060. casadi/include/licenses/highs-external/extern/filereaderlp/LICENSE +19 -0
  1061. casadi/include/licenses/highs-external/extern/pdqsort/license.txt +16 -0
  1062. casadi/include/licenses/hpipm-external/LICENSE.txt +26 -0
  1063. casadi/include/licenses/hpipm-external/experimental/andrea/prototype/code/plotregion/license.txt +24 -0
  1064. casadi/include/licenses/ipopt-external/LICENSE +260 -0
  1065. casadi/include/licenses/metis-external/LICENSE +87 -0
  1066. casadi/include/licenses/metis-external/metis-4.0/LICENSE +18 -0
  1067. casadi/include/licenses/mockups-external/LICENSE +21 -0
  1068. casadi/include/licenses/mumps-external/LICENSE +87 -0
  1069. casadi/include/licenses/mumps-external/MUMPS/LICENSE +50 -0
  1070. casadi/include/licenses/osi-external/LICENSE +245 -0
  1071. casadi/include/licenses/osi-external/Osi/LICENSE +239 -0
  1072. casadi/include/licenses/osqp-external/LICENSE +201 -0
  1073. casadi/include/licenses/osqp-external/lin_sys/direct/qdldl/amd/LICENSE +36 -0
  1074. casadi/include/licenses/osqp-external/lin_sys/direct/qdldl/qdldl_sources/LICENSE +201 -0
  1075. casadi/include/licenses/qpOASES/LICENSE.txt +503 -0
  1076. casadi/include/licenses/sleqp-external/LICENSE +165 -0
  1077. casadi/include/licenses/superscs-external/LICENSE.txt +24 -0
  1078. casadi/include/licenses/tinyxml2-9.0.0/LICENSE.txt +18 -0
  1079. casadi/include/licenses/trlib-external/LICENSE +21 -0
  1080. casadi/include/osqp/auxil.h +181 -0
  1081. casadi/include/osqp/constants.h +129 -0
  1082. casadi/include/osqp/cs.h +180 -0
  1083. casadi/include/osqp/ctrlc.h +56 -0
  1084. casadi/include/osqp/error.h +38 -0
  1085. casadi/include/osqp/glob_opts.h +167 -0
  1086. casadi/include/osqp/lin_alg.h +216 -0
  1087. casadi/include/osqp/lin_sys.h +54 -0
  1088. casadi/include/osqp/osqp.h +430 -0
  1089. casadi/include/osqp/osqp_configure.h +49 -0
  1090. casadi/include/osqp/polish.h +25 -0
  1091. casadi/include/osqp/proj.h +37 -0
  1092. casadi/include/osqp/scaling.h +44 -0
  1093. casadi/include/osqp/types.h +326 -0
  1094. casadi/include/osqp/util.h +222 -0
  1095. casadi/include/superscs/cones.h +185 -0
  1096. casadi/include/superscs/constants.h +144 -0
  1097. casadi/include/superscs/cs.h +109 -0
  1098. casadi/include/superscs/ctrlc.h +77 -0
  1099. casadi/include/superscs/directions.h +125 -0
  1100. casadi/include/superscs/glbopts.h +240 -0
  1101. casadi/include/superscs/linAlg.h +437 -0
  1102. casadi/include/superscs/linSys.h +205 -0
  1103. casadi/include/superscs/linsys/amatrix.h +77 -0
  1104. casadi/include/superscs/linsys/common.h +49 -0
  1105. casadi/include/superscs/normalize.h +138 -0
  1106. casadi/include/superscs/scs.h +656 -0
  1107. casadi/include/superscs/scs_blas.h +79 -0
  1108. casadi/include/superscs/scs_parser.h +187 -0
  1109. casadi/include/superscs/unit_test_util.h +210 -0
  1110. casadi/include/superscs/util.h +354 -0
  1111. casadi/include/tinyxml2.h +2380 -0
  1112. casadi/include/trlib/trlib_eigen_inverse.h +118 -0
  1113. casadi/include/trlib/trlib_krylov.h +493 -0
  1114. casadi/include/trlib/trlib_leftmost.h +181 -0
  1115. casadi/include/trlib/trlib_private.h +109 -0
  1116. casadi/include/trlib/trlib_quadratic_zero.h +57 -0
  1117. casadi/include/trlib/trlib_tri_factor.h +409 -0
  1118. casadi/include/trlib/trlib_types.h +36 -0
  1119. casadi/lib/cmake/tinyxml2/tinyxml2-config-version.cmake +65 -0
  1120. casadi/lib/cmake/tinyxml2/tinyxml2-config.cmake +57 -0
  1121. casadi/lib/cmake/tinyxml2/tinyxml2-static-targets-release.cmake +19 -0
  1122. casadi/lib/cmake/tinyxml2/tinyxml2-static-targets.cmake +103 -0
  1123. casadi/lib/libtinyxml2.a +0 -0
  1124. casadi/lib/pkgconfig/tinyxml2.pc +10 -0
  1125. casadi/libCbc.3.10.11.dylib +0 -0
  1126. casadi/libCbc.3.dylib +0 -0
  1127. casadi/libCbc.dylib +0 -0
  1128. casadi/libCbc.la +35 -0
  1129. casadi/libCbcSolver.3.10.11.dylib +0 -0
  1130. casadi/libCbcSolver.3.dylib +0 -0
  1131. casadi/libCbcSolver.dylib +0 -0
  1132. casadi/libCbcSolver.la +35 -0
  1133. casadi/libCgl.1.10.8.dylib +0 -0
  1134. casadi/libCgl.1.dylib +0 -0
  1135. casadi/libCgl.dylib +0 -0
  1136. casadi/libCgl.la +35 -0
  1137. casadi/libClp.1.14.9.dylib +0 -0
  1138. casadi/libClp.1.dylib +0 -0
  1139. casadi/libClp.dylib +0 -0
  1140. casadi/libClp.la +35 -0
  1141. casadi/libClpSolver.1.14.9.dylib +0 -0
  1142. casadi/libClpSolver.1.dylib +0 -0
  1143. casadi/libClpSolver.dylib +0 -0
  1144. casadi/libClpSolver.la +35 -0
  1145. casadi/libCoinUtils.3.11.10.dylib +0 -0
  1146. casadi/libCoinUtils.3.dylib +0 -0
  1147. casadi/libCoinUtils.dylib +0 -0
  1148. casadi/libCoinUtils.la +35 -0
  1149. casadi/libFortranHighs.dylib +0 -0
  1150. casadi/libOsi.1.13.9.dylib +0 -0
  1151. casadi/libOsi.1.dylib +0 -0
  1152. casadi/libOsi.dylib +0 -0
  1153. casadi/libOsi.la +35 -0
  1154. casadi/libOsiCbc.3.10.11.dylib +0 -0
  1155. casadi/libOsiCbc.3.dylib +0 -0
  1156. casadi/libOsiCbc.dylib +0 -0
  1157. casadi/libOsiCbc.la +35 -0
  1158. casadi/libOsiClp.1.14.9.dylib +0 -0
  1159. casadi/libOsiClp.1.dylib +0 -0
  1160. casadi/libOsiClp.dylib +0 -0
  1161. casadi/libOsiClp.la +35 -0
  1162. casadi/libOsiCommonTests.1.13.9.dylib +0 -0
  1163. casadi/libOsiCommonTests.1.dylib +0 -0
  1164. casadi/libOsiCommonTests.dylib +0 -0
  1165. casadi/libOsiCommonTests.la +35 -0
  1166. casadi/libblasfeo.dylib +0 -0
  1167. casadi/libbonmin.4.8.9.dylib +0 -0
  1168. casadi/libbonmin.4.dylib +0 -0
  1169. casadi/libbonmin.dylib +0 -0
  1170. casadi/libbonmin.la +35 -0
  1171. casadi/libc++.1.0.dylib +0 -0
  1172. casadi/libcasadi.3.7.dylib +0 -0
  1173. casadi/libcasadi.dylib +0 -0
  1174. casadi/libcasadi_conic_cbc.3.7.dylib +0 -0
  1175. casadi/libcasadi_conic_cbc.dylib +0 -0
  1176. casadi/libcasadi_conic_clp.3.7.dylib +0 -0
  1177. casadi/libcasadi_conic_clp.dylib +0 -0
  1178. casadi/libcasadi_conic_cplex.3.7.dylib +0 -0
  1179. casadi/libcasadi_conic_cplex.dylib +0 -0
  1180. casadi/libcasadi_conic_gurobi.3.7.dylib +0 -0
  1181. casadi/libcasadi_conic_gurobi.dylib +0 -0
  1182. casadi/libcasadi_conic_highs.3.7.dylib +0 -0
  1183. casadi/libcasadi_conic_highs.dylib +0 -0
  1184. casadi/libcasadi_conic_hpipm.3.7.dylib +0 -0
  1185. casadi/libcasadi_conic_hpipm.dylib +0 -0
  1186. casadi/libcasadi_conic_ipqp.3.7.dylib +0 -0
  1187. casadi/libcasadi_conic_ipqp.dylib +0 -0
  1188. casadi/libcasadi_conic_nlpsol.3.7.dylib +0 -0
  1189. casadi/libcasadi_conic_nlpsol.dylib +0 -0
  1190. casadi/libcasadi_conic_osqp.3.7.dylib +0 -0
  1191. casadi/libcasadi_conic_osqp.dylib +0 -0
  1192. casadi/libcasadi_conic_qpoases.3.7.dylib +0 -0
  1193. casadi/libcasadi_conic_qpoases.dylib +0 -0
  1194. casadi/libcasadi_conic_qrqp.3.7.dylib +0 -0
  1195. casadi/libcasadi_conic_qrqp.dylib +0 -0
  1196. casadi/libcasadi_conic_superscs.3.7.dylib +0 -0
  1197. casadi/libcasadi_conic_superscs.dylib +0 -0
  1198. casadi/libcasadi_importer_shell.3.7.dylib +0 -0
  1199. casadi/libcasadi_importer_shell.dylib +0 -0
  1200. casadi/libcasadi_integrator_collocation.3.7.dylib +0 -0
  1201. casadi/libcasadi_integrator_collocation.dylib +0 -0
  1202. casadi/libcasadi_integrator_cvodes.3.7.dylib +0 -0
  1203. casadi/libcasadi_integrator_cvodes.dylib +0 -0
  1204. casadi/libcasadi_integrator_idas.3.7.dylib +0 -0
  1205. casadi/libcasadi_integrator_idas.dylib +0 -0
  1206. casadi/libcasadi_integrator_rk.3.7.dylib +0 -0
  1207. casadi/libcasadi_integrator_rk.dylib +0 -0
  1208. casadi/libcasadi_interpolant_bspline.3.7.dylib +0 -0
  1209. casadi/libcasadi_interpolant_bspline.dylib +0 -0
  1210. casadi/libcasadi_interpolant_linear.3.7.dylib +0 -0
  1211. casadi/libcasadi_interpolant_linear.dylib +0 -0
  1212. casadi/libcasadi_linsol_csparse.3.7.dylib +0 -0
  1213. casadi/libcasadi_linsol_csparse.dylib +0 -0
  1214. casadi/libcasadi_linsol_csparsecholesky.3.7.dylib +0 -0
  1215. casadi/libcasadi_linsol_csparsecholesky.dylib +0 -0
  1216. casadi/libcasadi_linsol_lapacklu.3.7.dylib +0 -0
  1217. casadi/libcasadi_linsol_lapacklu.dylib +0 -0
  1218. casadi/libcasadi_linsol_lapackqr.3.7.dylib +0 -0
  1219. casadi/libcasadi_linsol_lapackqr.dylib +0 -0
  1220. casadi/libcasadi_linsol_ldl.3.7.dylib +0 -0
  1221. casadi/libcasadi_linsol_ldl.dylib +0 -0
  1222. casadi/libcasadi_linsol_lsqr.3.7.dylib +0 -0
  1223. casadi/libcasadi_linsol_lsqr.dylib +0 -0
  1224. casadi/libcasadi_linsol_ma27.3.7.dylib +0 -0
  1225. casadi/libcasadi_linsol_ma27.dylib +0 -0
  1226. casadi/libcasadi_linsol_mumps.3.7.dylib +0 -0
  1227. casadi/libcasadi_linsol_mumps.dylib +0 -0
  1228. casadi/libcasadi_linsol_qr.3.7.dylib +0 -0
  1229. casadi/libcasadi_linsol_qr.dylib +0 -0
  1230. casadi/libcasadi_linsol_symbolicqr.3.7.dylib +0 -0
  1231. casadi/libcasadi_linsol_symbolicqr.dylib +0 -0
  1232. casadi/libcasadi_linsol_tridiag.3.7.dylib +0 -0
  1233. casadi/libcasadi_linsol_tridiag.dylib +0 -0
  1234. casadi/libcasadi_nlpsol_ampl.3.7.dylib +0 -0
  1235. casadi/libcasadi_nlpsol_ampl.dylib +0 -0
  1236. casadi/libcasadi_nlpsol_blocksqp.3.7.dylib +0 -0
  1237. casadi/libcasadi_nlpsol_blocksqp.dylib +0 -0
  1238. casadi/libcasadi_nlpsol_bonmin.3.7.dylib +0 -0
  1239. casadi/libcasadi_nlpsol_bonmin.dylib +0 -0
  1240. casadi/libcasadi_nlpsol_feasiblesqpmethod.3.7.dylib +0 -0
  1241. casadi/libcasadi_nlpsol_feasiblesqpmethod.dylib +0 -0
  1242. casadi/libcasadi_nlpsol_ipopt.3.7.dylib +0 -0
  1243. casadi/libcasadi_nlpsol_ipopt.dylib +0 -0
  1244. casadi/libcasadi_nlpsol_knitro.3.7.dylib +0 -0
  1245. casadi/libcasadi_nlpsol_knitro.dylib +0 -0
  1246. casadi/libcasadi_nlpsol_qrsqp.3.7.dylib +0 -0
  1247. casadi/libcasadi_nlpsol_qrsqp.dylib +0 -0
  1248. casadi/libcasadi_nlpsol_scpgen.3.7.dylib +0 -0
  1249. casadi/libcasadi_nlpsol_scpgen.dylib +0 -0
  1250. casadi/libcasadi_nlpsol_sleqp.3.7.dylib +0 -0
  1251. casadi/libcasadi_nlpsol_sleqp.dylib +0 -0
  1252. casadi/libcasadi_nlpsol_snopt.3.7.dylib +0 -0
  1253. casadi/libcasadi_nlpsol_snopt.dylib +0 -0
  1254. casadi/libcasadi_nlpsol_sqpmethod.3.7.dylib +0 -0
  1255. casadi/libcasadi_nlpsol_sqpmethod.dylib +0 -0
  1256. casadi/libcasadi_rootfinder_fast_newton.3.7.dylib +0 -0
  1257. casadi/libcasadi_rootfinder_fast_newton.dylib +0 -0
  1258. casadi/libcasadi_rootfinder_kinsol.3.7.dylib +0 -0
  1259. casadi/libcasadi_rootfinder_kinsol.dylib +0 -0
  1260. casadi/libcasadi_rootfinder_newton.3.7.dylib +0 -0
  1261. casadi/libcasadi_rootfinder_newton.dylib +0 -0
  1262. casadi/libcasadi_rootfinder_nlpsol.3.7.dylib +0 -0
  1263. casadi/libcasadi_rootfinder_nlpsol.dylib +0 -0
  1264. casadi/libcasadi_sundials_common.3.7.dylib +0 -0
  1265. casadi/libcasadi_sundials_common.dylib +0 -0
  1266. casadi/libcasadi_xmlfile_tinyxml.3.7.dylib +0 -0
  1267. casadi/libcasadi_xmlfile_tinyxml.dylib +0 -0
  1268. casadi/libcoinmetis.2.dylib +0 -0
  1269. casadi/libcoinmetis.dylib +0 -0
  1270. casadi/libcoinmetis.la +41 -0
  1271. casadi/libcoinmumps.3.dylib +0 -0
  1272. casadi/libcoinmumps.dylib +0 -0
  1273. casadi/libcoinmumps.la +41 -0
  1274. casadi/libcplex_adaptor.dylib +0 -0
  1275. casadi/libgcc_s.1.1.dylib +0 -0
  1276. casadi/libgcc_s.1.dylib +0 -0
  1277. casadi/libgfortran.5.dylib +0 -0
  1278. casadi/libgurobi_adaptor.dylib +0 -0
  1279. casadi/libhighs.1.6.0.dylib +0 -0
  1280. casadi/libhighs.1.6.dylib +0 -0
  1281. casadi/libhighs.dylib +0 -0
  1282. casadi/libhpipm.dylib +0 -0
  1283. casadi/libindirect.a +0 -0
  1284. casadi/libipopt.3.dylib +0 -0
  1285. casadi/libipopt.dylib +0 -0
  1286. casadi/libipopt.la +41 -0
  1287. casadi/liblinsys.a +0 -0
  1288. casadi/libosqp.a +0 -0
  1289. casadi/libosqp.dylib +0 -0
  1290. casadi/libqdldl.a +0 -0
  1291. casadi/libqdldl.dylib +0 -0
  1292. casadi/libquadmath.0.dylib +0 -0
  1293. casadi/libsipopt.3.dylib +0 -0
  1294. casadi/libsipopt.dylib +0 -0
  1295. casadi/libsipopt.la +41 -0
  1296. casadi/libsleqp.1.0.1.dylib +0 -0
  1297. casadi/libsleqp.dylib +0 -0
  1298. casadi/libsuperscs.a +0 -0
  1299. casadi/libtrlib.0.4.dylib +0 -0
  1300. casadi/libtrlib.dylib +0 -0
  1301. casadi/libz.1.2.13.dylib +0 -0
  1302. casadi/pkgconfig/bonmin.pc +12 -0
  1303. casadi/pkgconfig/casadi.pc +12 -0
  1304. casadi/pkgconfig/cbc.pc +12 -0
  1305. casadi/pkgconfig/cgl.pc +12 -0
  1306. casadi/pkgconfig/clp.pc +12 -0
  1307. casadi/pkgconfig/coinmetis.pc +13 -0
  1308. casadi/pkgconfig/coinmumps.pc +15 -0
  1309. casadi/pkgconfig/coinutils.pc +12 -0
  1310. casadi/pkgconfig/highs.pc +12 -0
  1311. casadi/pkgconfig/ipopt.pc +15 -0
  1312. casadi/pkgconfig/osi-cbc.pc +12 -0
  1313. casadi/pkgconfig/osi-clp.pc +12 -0
  1314. casadi/pkgconfig/osi-unittests.pc +12 -0
  1315. casadi/pkgconfig/osi.pc +12 -0
  1316. casadi/pkgconfig/sleqp.pc +10 -0
  1317. casadi/tools/__init__.py +48 -0
  1318. casadi/tools/bounds.py +107 -0
  1319. casadi/tools/graph/__init__.py +35 -0
  1320. casadi/tools/graph/graph.py +747 -0
  1321. casadi/tools/in_out.py +89 -0
  1322. casadi/tools/structure.py +1446 -0
  1323. casadi/tools/structure3.py +1441 -0
  1324. casadi-3.6.4.dist-info/METADATA +37 -0
  1325. casadi-3.6.4.dist-info/RECORD +1327 -0
  1326. casadi-3.6.4.dist-info/WHEEL +5 -0
  1327. dummy.txt +1 -0
@@ -0,0 +1,1459 @@
1
+ /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
2
+ /* */
3
+ /* This file is part of the HiGHS linear optimization suite */
4
+ /* */
5
+ /* Written and engineered 2008-2023 by Julian Hall, Ivet Galabova, */
6
+ /* Leona Gottwald and Michael Feldmeier */
7
+ /* */
8
+ /* Available as open-source under the MIT License */
9
+ /* */
10
+ /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
11
+ /**@file Highs.h
12
+ * @brief The HiGHS class
13
+ */
14
+ #ifndef HIGHS_H_
15
+ #define HIGHS_H_
16
+
17
+ #include <sstream>
18
+
19
+ #include "lp_data/HighsCallback.h"
20
+ #include "lp_data/HighsLpUtils.h"
21
+ #include "lp_data/HighsRanging.h"
22
+ #include "lp_data/HighsSolutionDebug.h"
23
+ #include "model/HighsModel.h"
24
+ #include "presolve/ICrash.h"
25
+ #include "presolve/PresolveComponent.h"
26
+
27
+ /**
28
+ * @brief Return the version
29
+ */
30
+ const char* highsVersion();
31
+
32
+ /**
33
+ * @brief Return detailed version information, githash and compilation
34
+ * date
35
+ */
36
+ HighsInt highsVersionMajor();
37
+ HighsInt highsVersionMinor();
38
+ HighsInt highsVersionPatch();
39
+ const char* highsGithash();
40
+ const char* highsCompilationDate();
41
+
42
+ /**
43
+ * @brief Class to set parameters and run HiGHS
44
+ */
45
+ class Highs {
46
+ public:
47
+ Highs();
48
+ virtual ~Highs() {
49
+ FILE* log_stream = options_.log_options.log_stream;
50
+ if (log_stream != nullptr) {
51
+ assert(log_stream != stdout);
52
+ fclose(log_stream);
53
+ }
54
+ }
55
+
56
+ /**
57
+ * @brief Return the version as a string
58
+ */
59
+ std::string version() const { return highsVersion(); }
60
+
61
+ /**
62
+ * @brief Return major version
63
+ */
64
+ HighsInt versionMajor() const { return highsVersionMajor(); }
65
+
66
+ /**
67
+ * @brief Return minor version
68
+ */
69
+ HighsInt versionMinor() const { return highsVersionMinor(); }
70
+
71
+ /**
72
+ * @brief Return patch version
73
+ */
74
+ HighsInt versionPatch() const { return highsVersionPatch(); }
75
+
76
+ /**
77
+ * @brief Return githash
78
+ */
79
+ std::string githash() const { return highsGithash(); }
80
+
81
+ /**
82
+ * @brief Return compilation date
83
+ */
84
+ std::string compilationDate() const { return highsCompilationDate(); }
85
+
86
+ /**
87
+ * @brief Reset the options and then call clearModel()
88
+ */
89
+ HighsStatus clear();
90
+
91
+ /**
92
+ * @brief Clear the incumbent model and then call clearSolver()
93
+ */
94
+ HighsStatus clearModel();
95
+
96
+ /**
97
+ * @brief Clear all solution data associated with the model
98
+ */
99
+ HighsStatus clearSolver();
100
+
101
+ /**
102
+ * Methods for model input
103
+ */
104
+
105
+ /**
106
+ * Every model loading module eventually uses
107
+ * passModel(HighsModel model) to communicate the model to HiGHS.
108
+ */
109
+
110
+ /**
111
+ * @brief Pass a HighsModel instance to Highs
112
+ */
113
+ HighsStatus passModel(HighsModel model);
114
+
115
+ /**
116
+ * @brief Pass a HighsLp instance to Highs
117
+ */
118
+ HighsStatus passModel(HighsLp lp);
119
+
120
+ /**
121
+ * @brief Pass a QP (possibly with integrality data) via pointers to vectors
122
+ * of data
123
+ */
124
+ HighsStatus passModel(
125
+ const HighsInt num_col, const HighsInt num_row, const HighsInt num_nz,
126
+ const HighsInt q_num_nz, const HighsInt a_format, const HighsInt q_format,
127
+ const HighsInt sense, const double offset, const double* col_cost,
128
+ const double* col_lower, const double* col_upper, const double* row_lower,
129
+ const double* row_upper, const HighsInt* a_start, const HighsInt* a_index,
130
+ const double* a_value, const HighsInt* q_start, const HighsInt* q_index,
131
+ const double* q_value, const HighsInt* integrality = nullptr);
132
+
133
+ /**
134
+ * @brief Pass an LP (possibly with integrality data) via pointers to vectors
135
+ * of data
136
+ */
137
+ HighsStatus passModel(const HighsInt num_col, const HighsInt num_row,
138
+ const HighsInt num_nz, const HighsInt a_format,
139
+ const HighsInt sense, const double offset,
140
+ const double* col_cost, const double* col_lower,
141
+ const double* col_upper, const double* row_lower,
142
+ const double* row_upper, const HighsInt* a_start,
143
+ const HighsInt* a_index, const double* a_value,
144
+ const HighsInt* integrality = nullptr);
145
+
146
+ /**
147
+ * @brief Pass a HighsHessian instance for the incumbent model
148
+ */
149
+ HighsStatus passHessian(HighsHessian hessian_);
150
+
151
+ /**
152
+ * @brief Pass the Hessian for the incumbent model via pointers to vectors of
153
+ * data
154
+ */
155
+ HighsStatus passHessian(const HighsInt dim, const HighsInt num_nz,
156
+ const HighsInt format, const HighsInt* start,
157
+ const HighsInt* index, const double* value);
158
+ /**
159
+ * @brief Pass a column name to the incumbent model
160
+ */
161
+ HighsStatus passColName(const HighsInt col, const std::string& name);
162
+
163
+ /**
164
+ * @brief Pass a row name to the incumbent model
165
+ */
166
+ HighsStatus passRowName(const HighsInt row, const std::string& name);
167
+
168
+ /**
169
+ * @brief Read in a model
170
+ */
171
+ HighsStatus readModel(const std::string& filename);
172
+
173
+ /**
174
+ * @brief Read in a basis
175
+ */
176
+ HighsStatus readBasis(const std::string& filename);
177
+
178
+ /**
179
+ * @brief Presolve the incumbent model
180
+ */
181
+ HighsStatus presolve();
182
+
183
+ /**
184
+ * @brief Solve the incumbent model according to the specified options
185
+ */
186
+ HighsStatus run();
187
+
188
+ /**
189
+ * @brief Postsolve the incumbent model using a solution
190
+ */
191
+ HighsStatus postsolve(const HighsSolution& solution);
192
+
193
+ /**
194
+ * @brief Postsolve the incumbent model using a solution and basis
195
+ */
196
+ HighsStatus postsolve(const HighsSolution& solution, const HighsBasis& basis);
197
+
198
+ /**
199
+ * @brief Write the current solution to a file in a given style
200
+ */
201
+ HighsStatus writeSolution(const std::string& filename,
202
+ const HighsInt style = kSolutionStyleRaw);
203
+
204
+ /**
205
+ * @brief Read a HiGHS solution file in a given style
206
+ */
207
+ HighsStatus readSolution(const std::string& filename,
208
+ const HighsInt style = kSolutionStyleRaw);
209
+
210
+ /**
211
+ * @brief Assess the validity, integrality and feasibility of the
212
+ * current primal solution. Of value after calling
213
+ * Highs::readSolution
214
+ */
215
+ HighsStatus assessPrimalSolution(bool& valid, bool& integral,
216
+ bool& feasible) const;
217
+
218
+ /**
219
+ * Methods for HiGHS option input/output
220
+ */
221
+
222
+ /**
223
+ * @brief Set an option to the bool/HighsInt/double/string value if it's
224
+ * legal and, for bool/HighsInt/double, only if it's of the correct type
225
+ */
226
+
227
+ HighsStatus setOptionValue(const std::string& option, const bool value);
228
+
229
+ HighsStatus setOptionValue(const std::string& option, const HighsInt value);
230
+
231
+ #ifdef HIGHSINT64
232
+ HighsStatus setOptionValue(const std::string& option, const int value) {
233
+ return setOptionValue(option, HighsInt{value});
234
+ }
235
+ #endif
236
+
237
+ HighsStatus setOptionValue(const std::string& option, const double value);
238
+
239
+ HighsStatus setOptionValue(const std::string& option,
240
+ const std::string& value);
241
+
242
+ HighsStatus setOptionValue(const std::string& option, const char* value);
243
+
244
+ /**
245
+ * @brief Read option values from a file
246
+ */
247
+ HighsStatus readOptions(const std::string& filename);
248
+
249
+ /**
250
+ * @brief Pass a HighsOptions instance to Highs
251
+ */
252
+ HighsStatus passOptions(const HighsOptions& options);
253
+
254
+ /**
255
+ * @brief Get a const reference to the internal option values
256
+ */
257
+ const HighsOptions& getOptions() const { return options_; }
258
+
259
+ /**
260
+ * @brief Gets an option value as bool/HighsInt/double/string and, for
261
+ * bool/int/double, only if it's of the correct type.
262
+ *
263
+ * NB Deprecate in v2.0, in order to replace with more general
264
+ * get*OptionValues
265
+ */
266
+ HighsStatus getOptionValue(const std::string& option, bool& value) const {
267
+ return this->getBoolOptionValues(option, &value);
268
+ }
269
+
270
+ HighsStatus getOptionValue(const std::string& option, HighsInt& value) const {
271
+ return this->getIntOptionValues(option, &value);
272
+ }
273
+
274
+ HighsStatus getOptionValue(const std::string& option, double& value) const {
275
+ return this->getDoubleOptionValues(option, &value);
276
+ }
277
+
278
+ HighsStatus getOptionValue(const std::string& option,
279
+ std::string& value) const {
280
+ return this->getStringOptionValues(option, &value);
281
+ }
282
+
283
+ /**
284
+ * @brief Get the type expected by an option
285
+ */
286
+ HighsStatus getOptionType(const std::string& option,
287
+ HighsOptionType& type) const {
288
+ return this->getOptionType(option, &type);
289
+ }
290
+
291
+ /**
292
+ * @brief Reset the options to the default values
293
+ */
294
+ HighsStatus resetOptions();
295
+
296
+ /**
297
+ * @brief Write (deviations from default values of) the options to a
298
+ * file, with the extension ".html" producing HTML, otherwise using
299
+ * the standard format used to read options from a file.
300
+ */
301
+ HighsStatus writeOptions(const std::string& filename, //!< The filename
302
+ const bool report_only_deviations = false) const;
303
+
304
+ /**
305
+ * @brief Returns the number of user-settable options
306
+ */
307
+ HighsInt getNumOptions() const {
308
+ return this->options_.num_user_settable_options_;
309
+ }
310
+
311
+ /**
312
+ * @brief Get the number of user-settable options
313
+ */
314
+ HighsStatus getOptionName(const HighsInt index, std::string* name) const;
315
+
316
+ /**
317
+ * @brief Get the type of an option
318
+ */
319
+ HighsStatus getOptionType(const std::string& option,
320
+ HighsOptionType* type) const;
321
+
322
+ /**
323
+ * @brief Get the current and default values of a bool option
324
+ */
325
+ HighsStatus getBoolOptionValues(const std::string& option,
326
+ bool* current_value = nullptr,
327
+ bool* default_value = nullptr) const;
328
+
329
+ /**
330
+ * @brief Get the current, min, max and default values of an int option
331
+ */
332
+ HighsStatus getIntOptionValues(const std::string& option,
333
+ HighsInt* current_value = nullptr,
334
+ HighsInt* min_value = nullptr,
335
+ HighsInt* max_value = nullptr,
336
+ HighsInt* default_value = nullptr) const;
337
+
338
+ /**
339
+ * @brief Get the current, min, max and default values of a double option
340
+ */
341
+ HighsStatus getDoubleOptionValues(const std::string& option,
342
+ double* current_value = nullptr,
343
+ double* min_value = nullptr,
344
+ double* max_value = nullptr,
345
+ double* default_value = nullptr) const;
346
+
347
+ /**
348
+ * @brief Get the current and default values of a string option
349
+ */
350
+ HighsStatus getStringOptionValues(const std::string& option,
351
+ std::string* current_value = nullptr,
352
+ std::string* default_value = nullptr) const;
353
+
354
+ /**
355
+ * @brief Get a const reference to the internal info values
356
+ * type.
357
+ */
358
+ const HighsInfo& getInfo() const { return info_; }
359
+
360
+ /**
361
+ * @brief Get an info value as HighsInt/int64_t/double, and only if
362
+ * it's of the correct type.
363
+ */
364
+
365
+ HighsStatus getInfoValue(const std::string& info, HighsInt& value) const;
366
+
367
+ #ifndef HIGHSINT64
368
+ HighsStatus getInfoValue(const std::string& info, int64_t& value) const;
369
+ #endif
370
+
371
+ HighsStatus getInfoValue(const std::string& info, double& value) const;
372
+
373
+ HighsStatus getInfoType(const std::string& info, HighsInfoType& type) const;
374
+
375
+ /**
376
+ * @brief Write info values to a file, with the extension ".html"
377
+ * producing HTML, otherwise using the standard format used to read
378
+ * options from a file.
379
+ */
380
+ HighsStatus writeInfo(const std::string& filename = "") const;
381
+
382
+ /**
383
+ * @brief Get the value of infinity used by HiGHS
384
+ */
385
+ double getInfinity() { return kHighsInf; }
386
+
387
+ /**
388
+ * @brief Get the run time of HiGHS
389
+ */
390
+ double getRunTime() { return timer_.readRunHighsClock(); }
391
+
392
+ /**
393
+ * Methods for model output
394
+ */
395
+
396
+ /**
397
+ * @brief Return a const reference to the presolved HighsLp instance in HiGHS
398
+ */
399
+ const HighsLp& getPresolvedLp() const { return presolved_model_.lp_; }
400
+
401
+ /**
402
+ * @brief Return a const reference to the presolved HighsModel instance in
403
+ * HiGHS
404
+ */
405
+ const HighsModel& getPresolvedModel() const { return presolved_model_; }
406
+
407
+ /**
408
+ * @brief Return a const reference to the logging data for presolve
409
+ */
410
+ const HighsPresolveLog& getPresolveLog() const { return presolve_log_; }
411
+
412
+ /**
413
+ * @brief Return a const reference to the incumbent LP
414
+ */
415
+ const HighsLp& getLp() const { return model_.lp_; }
416
+
417
+ /**
418
+ * @brief Return a const reference to the incumbent model
419
+ */
420
+ const HighsModel& getModel() const { return model_; }
421
+
422
+ /**
423
+ * @brief Return a const reference to the internal HighsSolution instance
424
+ */
425
+ const HighsSolution& getSolution() const { return solution_; }
426
+
427
+ /**
428
+ * @brief Zero all clocks in the internal HighsTimer instance
429
+ */
430
+ void zeroAllClocks() { timer_.zeroAllClocks(); };
431
+
432
+ /**
433
+ * @brief Return a const reference to the internal HighsSolution instance
434
+ */
435
+ const std::vector<HighsObjectiveSolution>& getSavedMipSolutions() const {
436
+ return saved_objective_and_solution_;
437
+ }
438
+
439
+ /**
440
+ * @brief Return a const reference to the internal ICrash info instance
441
+ */
442
+ const ICrashInfo& getICrashInfo() const { return icrash_info_; };
443
+
444
+ /**
445
+ * @brief Return a const reference to the internal HighsBasis instance
446
+ */
447
+ const HighsBasis& getBasis() const { return basis_; }
448
+
449
+ /**
450
+ * @brief Return the status for the incumbent model.
451
+ */
452
+ const HighsModelStatus& getModelStatus() const { return model_status_; }
453
+
454
+ /**
455
+ * @brief Returns the current model's presolve status
456
+ */
457
+ const HighsPresolveStatus& getModelPresolveStatus() const {
458
+ return model_presolve_status_;
459
+ }
460
+
461
+ /**
462
+ * @brief Indicate whether a dual unbounded ray exists, and gets
463
+ * it if it does and dual_ray is not nullptr
464
+ */
465
+ HighsStatus getDualRay(bool& has_dual_ray, double* dual_ray_value = nullptr);
466
+
467
+ /**
468
+ * @brief Indicate whether a dual unbounded ray exists, and gets
469
+ * it if it does
470
+ */
471
+ HighsStatus getDualRaySparse(bool& has_dual_ray, HVector& row_ep_buffer);
472
+
473
+ /**
474
+ * @brief Indicate whether a primal unbounded ray exists, and gets
475
+ * it if it does and primal_ray is not nullptr
476
+ */
477
+ HighsStatus getPrimalRay(bool& has_primal_ray,
478
+ double* primal_ray_value = nullptr);
479
+
480
+ /**
481
+ * @brief Get the ranging information for the current LP
482
+ */
483
+ HighsStatus getRanging(HighsRanging& ranging);
484
+
485
+ /**
486
+ * @brief Get the current model objective value
487
+ */
488
+ double getObjectiveValue() const { return info_.objective_function_value; }
489
+
490
+ /**
491
+ * Methods for operations with the invertible representation of the
492
+ * current basis matrix
493
+ */
494
+
495
+ /**
496
+ * @brief Returns true if an invertible representation of the
497
+ * current basis matrix is available
498
+ */
499
+ bool hasInvert() const;
500
+
501
+ /**
502
+ * @brief Gets the basic variables in the order corresponding to
503
+ * calls to getBasisInverseRow, getBasisInverseCol, getBasisSolve,
504
+ * getBasisTransposeSolve, getReducedRow and
505
+ * getReducedColumn. Non-negative entries are indices of columns,
506
+ * and negative entries are -(row_index+1).
507
+ */
508
+ HighsStatus getBasicVariables(HighsInt* basic_variables);
509
+
510
+ /**
511
+ * @brief Form a row of \f$B^{-1}\f$ for basis matrix \f$B\f$,
512
+ * returning the indices of the nonzeros unless row_num_nz is
513
+ * nullptr
514
+ */
515
+ HighsStatus getBasisInverseRow(const HighsInt row, double* row_vector,
516
+ HighsInt* row_num_nz = nullptr,
517
+ HighsInt* row_indices = nullptr);
518
+
519
+ /**
520
+ * @brief Form a column of \f$B^{-1}\f$ for basis matrix \f$B\f$,
521
+ * returning the indices of the nonzeros unless col_num_nz is
522
+ * nullptr
523
+ */
524
+ HighsStatus getBasisInverseCol(const HighsInt col, double* col_vector,
525
+ HighsInt* col_num_nz = nullptr,
526
+ HighsInt* col_indices = nullptr);
527
+
528
+ /**
529
+ * @brief Form \f$\mathbf{x}=B^{-1}\mathbf{b}\f$ for a given vector
530
+ * \f$\mathbf{b}\f$, returning the indices of the nonzeros unless
531
+ * solution_num_nz is nullptr
532
+ */
533
+ HighsStatus getBasisSolve(const double* rhs, double* solution_vector,
534
+ HighsInt* solution_num_nz = nullptr,
535
+ HighsInt* solution_indices = nullptr);
536
+
537
+ /**
538
+ * @brief Form \f$\mathbf{x}=B^{-T}\mathbf{b}\f$ for a given vector
539
+ * \f$\mathbf{b}\f$, returning the indices of the nonzeros unless
540
+ * solution_num_nz is nullptr
541
+ */
542
+ HighsStatus getBasisTransposeSolve(const double* rhs, double* solution_vector,
543
+ HighsInt* solution_num_nz = nullptr,
544
+ HighsInt* solution_indices = nullptr);
545
+
546
+ /**
547
+ * @brief Form a row of \f$B^{-1}A\f$, returning the indices of the
548
+ * nonzeros unless row_num_nz is nullptr, computing the row using
549
+ * pass_basis_inverse_row_vector unless it is nullptr
550
+ */
551
+ HighsStatus getReducedRow(
552
+ const HighsInt row, double* row_vector, HighsInt* row_num_nz = nullptr,
553
+ HighsInt* row_indices = nullptr,
554
+ const double* pass_basis_inverse_row_vector = nullptr);
555
+
556
+ /**
557
+ * @brief Form a column of \f$B^{-1}A\f$, returning the indices of
558
+ * the nonzeros unless col_num_nz is nullptr
559
+ */
560
+ HighsStatus getReducedColumn(const HighsInt col, double* col_vector,
561
+ HighsInt* col_num_nz = nullptr,
562
+ HighsInt* col_indices = nullptr);
563
+
564
+ /**
565
+ * @brief Get the number of columns in the incumbent model
566
+ */
567
+ HighsInt getNumCol() const { return model_.lp_.num_col_; }
568
+
569
+ /**
570
+ * @brief Get the number of rows in the incumbent model
571
+ */
572
+ HighsInt getNumRow() const { return model_.lp_.num_row_; }
573
+
574
+ /**
575
+ * @brief Get the number of (constraint matrix) nonzeros in the incumbent
576
+ * model
577
+ */
578
+ HighsInt getNumNz() const { return model_.lp_.a_matrix_.numNz(); }
579
+
580
+ /**
581
+ * @brief Get the number of Hessian matrix nonzeros in the incumbent model
582
+ */
583
+ HighsInt getHessianNumNz() const { return model_.hessian_.numNz(); }
584
+
585
+ /**
586
+ * @brief Get the objective sense of the incumbent model
587
+ */
588
+ HighsStatus getObjectiveSense(ObjSense& sense) const;
589
+
590
+ /**
591
+ * @brief Get the objective offset of the incumbent model
592
+ */
593
+ HighsStatus getObjectiveOffset(double& offset) const;
594
+
595
+ /**
596
+ * @brief Get multiple columns from the model given by an interval [from_col,
597
+ * to_col]
598
+ */
599
+ HighsStatus getCols(
600
+ const HighsInt
601
+ from_col, //!< The index of the first column to get from the model
602
+ const HighsInt
603
+ to_col, //!< The index of the last column to get from the model
604
+ HighsInt& num_col, //!< Number of columns got from the model
605
+ double* cost, //!< Array of size num_col with costs
606
+ double* lower, //!< Array of size num_col with lower bounds
607
+ double* upper, //!< Array of size num_col with upper bounds
608
+ HighsInt& num_nz, //!< Number of nonzeros got from the model
609
+ HighsInt*
610
+ start, //!< Array of size num_col with start indices of the columns
611
+ HighsInt*
612
+ index, //!< Array of size num_nz with row indices for the columns
613
+ double* value //!< Array of size num_nz with row values for the columns
614
+ );
615
+
616
+ /**
617
+ * @brief Get multiple columns from the model given by a set
618
+ */
619
+ HighsStatus getCols(
620
+ const HighsInt num_set_entries, //!< The number of indides in the set
621
+ const HighsInt* set, //!< Array of size num_set_entries with indices of
622
+ //!< columns to get
623
+ HighsInt& num_col, //!< Number of columns got from the model
624
+ double* cost, //!< Array of size num_col with costs
625
+ double* lower, //!< Array of size num_col with lower bounds
626
+ double* upper, //!< Array of size num_col with upper bounds
627
+ HighsInt& num_nz, //!< Number of nonzeros got from the model
628
+ HighsInt*
629
+ start, //!< Array of size num_col with start indices of the columns
630
+ HighsInt*
631
+ index, //!< Array of size num_nz with row indices for the columns
632
+ double* value //!< Array of size num_nz with row values for the columns
633
+ );
634
+
635
+ /**
636
+ * @brief Get multiple columns from the model given by a mask
637
+ */
638
+ HighsStatus getCols(
639
+ const HighsInt* mask, //!< Full length array with 1 => get; 0 => not
640
+ HighsInt& num_col, //!< Number of columns got from the model
641
+ double* cost, //!< Array of size num_col with cost
642
+ double* lower, //!< Array of size num_col with lower bounds
643
+ double* upper, //!< Array of size num_col with upper bounds
644
+ HighsInt& num_nz, //!< Number of nonzeros got from the model
645
+ HighsInt*
646
+ start, //!< Array of size num_col with start indices of the columns
647
+ HighsInt*
648
+ index, //!< Array of size num_nz with row indices for the columns
649
+ double* value //!< Array of size num_nz with row values for the columns
650
+ );
651
+
652
+ /**
653
+ * @brief Get a column name from the incumbent model
654
+ */
655
+ HighsStatus getColName(const HighsInt col, std::string& name) const;
656
+
657
+ /**
658
+ * @brief Get column index corresponding to name
659
+ */
660
+ HighsStatus getColByName(const std::string& name, HighsInt& col);
661
+
662
+ /**
663
+ * @brief Get a column integrality from the incumbent model
664
+ */
665
+ HighsStatus getColIntegrality(const HighsInt col,
666
+ HighsVarType& integrality) const;
667
+
668
+ /**
669
+ * @brief Get multiple rows from the model given by an interval [from_row,
670
+ * to_row]
671
+ */
672
+ HighsStatus getRows(
673
+ const HighsInt
674
+ from_row, //!< The index of the first row to get from the model
675
+ const HighsInt
676
+ to_row, //!< The index of the last row to get from the model
677
+ HighsInt& num_row, //!< Number of rows got from the model
678
+ double* lower, //!< Array of size num_row with lower bounds
679
+ double* upper, //!< Array of size num_row with upper bounds
680
+ HighsInt& num_nz, //!< Number of nonzeros got from the model
681
+ HighsInt*
682
+ start, //!< Array of size num_row with start indices of the rows
683
+ HighsInt*
684
+ index, //!< Array of size num_nz with column indices for the rows
685
+ double* value //!< Array of size num_nz with column values for the rows
686
+ );
687
+
688
+ /**
689
+ * @brief Get multiple rows from the model given by a set
690
+ */
691
+ HighsStatus getRows(
692
+ const HighsInt num_set_entries, //!< The number of indides in the set
693
+ const HighsInt*
694
+ set, //!< Array of size num_set_entries with indices of rows to get
695
+ HighsInt& num_row, //!< Number of rows got from the model
696
+ double* lower, //!< Array of size num_row with lower bounds
697
+ double* upper, //!< Array of size num_row with upper bounds
698
+ HighsInt& num_nz, //!< Number of nonzeros got from the model
699
+ HighsInt*
700
+ start, //!< Array of size num_row with start indices of the rows
701
+ HighsInt*
702
+ index, //!< Array of size num_nz with column indices for the rows
703
+ double* value //!< Array of size num_nz with column values for the rows
704
+ );
705
+
706
+ /**
707
+ * @brief Get multiple rows from the model given by a mask
708
+ */
709
+ HighsStatus getRows(
710
+ const HighsInt* mask, //!< Full length array with 1 => get; 0 => not
711
+ HighsInt& num_row, //!< Number of rows got from the model
712
+ double* lower, //!< Array of size num_row with lower bounds
713
+ double* upper, //!< Array of size num_row with upper bounds
714
+ HighsInt& num_nz, //!< Number of nonzeros got from the model
715
+ HighsInt*
716
+ start, //!< Array of size num_row with start indices of the rows
717
+ HighsInt*
718
+ index, //!< Array of size num_nz with column indices for the rows
719
+ double* value //!< Array of size num_nz with column values for the rows
720
+ );
721
+
722
+ /**
723
+ * @brief Get a row name from the incumbent model
724
+ */
725
+ HighsStatus getRowName(const HighsInt row, std::string& name) const;
726
+
727
+ /**
728
+ * @brief Get row index corresponding to name
729
+ */
730
+ HighsStatus getRowByName(const std::string& name, HighsInt& row);
731
+
732
+ /**
733
+ * @brief Get a matrix coefficient
734
+ */
735
+ HighsStatus getCoeff(const HighsInt row, const HighsInt col, double& value);
736
+
737
+ /**
738
+ * @brief Write out the incumbent model to a file
739
+ */
740
+ HighsStatus writeModel(const std::string& filename = "");
741
+
742
+ /**
743
+ * @brief Write out the internal HighsBasis instance to a file
744
+ */
745
+ HighsStatus writeBasis(const std::string& filename = "");
746
+
747
+ /**
748
+ * Methods for incumbent model modification
749
+ */
750
+
751
+ /**
752
+ * @brief Change the objective sense of the incumbent model
753
+ */
754
+ HighsStatus changeObjectiveSense(const ObjSense sense);
755
+
756
+ /**
757
+ * @brief Change the objective offset of the incumbent model
758
+ */
759
+ HighsStatus changeObjectiveOffset(const double offset);
760
+
761
+ /**
762
+ * @brief Change the integrality of a column
763
+ */
764
+ HighsStatus changeColIntegrality(const HighsInt col,
765
+ const HighsVarType integrality);
766
+
767
+ /**
768
+ * @brief Change the integrality of multiple columns given by an
769
+ * interval [from_col, to_col]
770
+ */
771
+ HighsStatus changeColsIntegrality(const HighsInt from_col,
772
+ const HighsInt to_col,
773
+ const HighsVarType* integrality);
774
+
775
+ /**
776
+ * @brief Change the integrality of multiple columns given by a set of indices
777
+ */
778
+ HighsStatus changeColsIntegrality(const HighsInt num_set_entries,
779
+ const HighsInt* set,
780
+ const HighsVarType* integrality);
781
+
782
+ /**
783
+ * @brief Change the integrality of multiple columns given by a mask
784
+ * (full length array with 1 => change; 0 => not)
785
+ */
786
+ HighsStatus changeColsIntegrality(const HighsInt* mask,
787
+ const HighsVarType* integrality);
788
+
789
+ /**
790
+ * @brief Change the cost of a column
791
+ */
792
+ HighsStatus changeColCost(const HighsInt col, const double cost);
793
+
794
+ /**
795
+ * @brief Change the cost of multiple columns given by an interval [from_col,
796
+ * to_col]
797
+ */
798
+ HighsStatus changeColsCost(const HighsInt from_col, const HighsInt to_col,
799
+ const double* cost);
800
+
801
+ /**
802
+ * @brief Change the cost of multiple columns given by a set of indices
803
+ */
804
+ HighsStatus changeColsCost(const HighsInt num_set_entries,
805
+ const HighsInt* set, const double* cost);
806
+
807
+ /**
808
+ * @brief Change the cost of multiple columns given by a mask
809
+ * (full length array with 1 => change; 0 => not)
810
+ */
811
+ HighsStatus changeColsCost(const HighsInt* mask, const double* cost);
812
+
813
+ /**
814
+ * @brief Change the bounds of a column
815
+ */
816
+ HighsStatus changeColBounds(const HighsInt col, const double lower,
817
+ const double upper);
818
+
819
+ /**
820
+ * @brief Change the bounds of multiple columns given by an interval
821
+ * [from_col, to_col]
822
+ */
823
+ HighsStatus changeColsBounds(const HighsInt from_col, const HighsInt to_col,
824
+ const double* lower, const double* upper);
825
+
826
+ /**
827
+ * @brief Change the bounds of multiple columns given by a set of indices
828
+ */
829
+ HighsStatus changeColsBounds(const HighsInt num_set_entries,
830
+ const HighsInt* set, const double* lower,
831
+ const double* upper);
832
+
833
+ /**
834
+ * @brief Change the cost of multiple columns given by a mask (full
835
+ * length array with 1 => change; 0 => not)
836
+ */
837
+ HighsStatus changeColsBounds(const HighsInt* mask, const double* lower,
838
+ const double* upper);
839
+
840
+ /**
841
+ * @brief Change the bounds of a row
842
+ */
843
+ HighsStatus changeRowBounds(const HighsInt row, const double lower,
844
+ const double upper);
845
+
846
+ /**
847
+ * @brief Change the bounds of multiple rows given by an interval [from_row,
848
+ * to_row]
849
+ */
850
+ HighsStatus changeRowsBounds(const HighsInt from_row, const HighsInt to_row,
851
+ const double* lower, const double* upper);
852
+
853
+ /**
854
+ * @brief Change the bounds of multiple rows given by a set of indices
855
+ */
856
+ HighsStatus changeRowsBounds(const HighsInt num_set_entries,
857
+ const HighsInt* set, const double* lower,
858
+ const double* upper);
859
+
860
+ /**
861
+ * @brief Change the cost of multiple rows given by a mask (full
862
+ * length array with 1 => change; 0 => not)
863
+ */
864
+ HighsStatus changeRowsBounds(const HighsInt* mask, const double* lower,
865
+ const double* upper);
866
+
867
+ /**
868
+ * @brief Change a matrix coefficient
869
+ */
870
+ HighsStatus changeCoeff(const HighsInt row, const HighsInt col,
871
+ const double value);
872
+ /**
873
+ * @brief Sets the constraint matrix format of the incumbent model
874
+ */
875
+ HighsStatus setMatrixFormat(const MatrixFormat desired_format) {
876
+ this->model_.lp_.setFormat(desired_format);
877
+ return HighsStatus::kOk;
878
+ }
879
+
880
+ /**
881
+ * @brief Adds a variable to the incumbent model, without the matrix
882
+ * coefficients if num_new_nz = 0, in which case indices and values
883
+ * arrays can be nullptr
884
+ */
885
+ HighsStatus addCol(const double cost, const double lower, const double upper,
886
+ const HighsInt num_new_nz, const HighsInt* indices,
887
+ const double* values);
888
+
889
+ /**
890
+ * @brief Adds multiple columns to the incumbent model, without the matrix
891
+ * coefficients if num_new_nz = 0, in which case column-wise starts,
892
+ * indices and values arrays can be nullptr
893
+ */
894
+ HighsStatus addCols(const HighsInt num_new_col, const double* cost,
895
+ const double* lower, const double* upper,
896
+ const HighsInt num_new_nz, const HighsInt* starts,
897
+ const HighsInt* indices, const double* values);
898
+
899
+ /**
900
+ * @brief Adds a variable to the incumbent model, without the cost or matrix
901
+ * coefficients
902
+ */
903
+ HighsStatus addVar(const double lower, const double upper) {
904
+ return this->addVars(1, &lower, &upper);
905
+ }
906
+
907
+ /**
908
+ * @brief Adds multiple variables to the incumbent model, without the costs or
909
+ * matrix coefficients
910
+ */
911
+ HighsStatus addVars(const HighsInt num_new_var, const double* lower,
912
+ const double* upper);
913
+
914
+ /**
915
+ * @brief Add a row to the incumbent model, without the matrix coefficients if
916
+ * num_new_nz = 0, in which case indices and values arrays can be
917
+ * nullptr
918
+ */
919
+ HighsStatus addRow(const double lower, const double upper,
920
+ const HighsInt num_new_nz, const HighsInt* indices,
921
+ const double* values);
922
+
923
+ /**
924
+ * @brief Adds multiple rows to the incumbent model, without the matrix
925
+ * coefficients if num_new_nz = 0, in which case row-wise starts,
926
+ * indices and values arrays can be nullptr
927
+ */
928
+ HighsStatus addRows(const HighsInt num_new_row, const double* lower,
929
+ const double* upper, const HighsInt num_new_nz,
930
+ const HighsInt* starts, const HighsInt* indices,
931
+ const double* values);
932
+
933
+ /**
934
+ * @brief Delete multiple columns from the incumbent model given by an
935
+ * interval [from_col, to_col]
936
+ */
937
+ HighsStatus deleteCols(const HighsInt from_col, const HighsInt to_col);
938
+
939
+ /**
940
+ * @brief Delete multiple columns from the incumbent model given by a set
941
+ */
942
+ HighsStatus deleteCols(const HighsInt num_set_entries, const HighsInt* set);
943
+
944
+ /**
945
+ * @brief Delete multiple columns from the incumbent model given by
946
+ * a mask (full length array with 1 => change; 0 => not). New index
947
+ * of any column not deleted is returned in place of the value 0.
948
+ */
949
+ HighsStatus deleteCols(HighsInt* mask);
950
+
951
+ /**
952
+ * @brief Delete multiple variables from the incumbent model given by an
953
+ * interval [from_var, to_var]
954
+ */
955
+ HighsStatus deleteVars(const HighsInt from_var, const HighsInt to_var) {
956
+ return deleteCols(from_var, to_var);
957
+ }
958
+
959
+ /**
960
+ * @brief Delete multiple variables from the incumbent model given by a set
961
+ */
962
+ HighsStatus deleteVars(const HighsInt num_set_entries, const HighsInt* set) {
963
+ return deleteCols(num_set_entries, set);
964
+ }
965
+
966
+ /**
967
+ * @brief Delete multiple variables from the incumbent model given by
968
+ * a mask (full length array with 1 => change; 0 => not). New index
969
+ * of any variable not deleted is returned in place of the value 0.
970
+ */
971
+ HighsStatus deleteVars(HighsInt* mask) { return deleteCols(mask); }
972
+
973
+ /**
974
+ * @brief Delete multiple rows from the incumbent model given by an interval
975
+ * [from_row, to_row]
976
+ */
977
+ HighsStatus deleteRows(const HighsInt from_row, const HighsInt to_row);
978
+
979
+ /**
980
+ * @brief Delete multiple rows from the incumbent model given by a set
981
+ */
982
+ HighsStatus deleteRows(const HighsInt num_set_entries, const HighsInt* set);
983
+
984
+ /**
985
+ * @brief Delete multiple rows from the incumbent model given by a
986
+ * mask (full length array with 1 => change; 0 => not). New index of
987
+ * any row not deleted is returned in place of the value 0.
988
+ */
989
+ HighsStatus deleteRows(HighsInt* mask);
990
+
991
+ /**
992
+ * @brief Scale a matrix column (and cost) by a constant - flipping bounds if
993
+ * the constant is negative
994
+ */
995
+ HighsStatus scaleCol(const HighsInt col, const double scale_value);
996
+
997
+ /**
998
+ * @brief Scale a matrix row by a constant - flipping bounds if the constant
999
+ * is negative
1000
+ */
1001
+ HighsStatus scaleRow(const HighsInt row, const double scale_value);
1002
+
1003
+ /**
1004
+ * Other methods for specialist applications
1005
+ */
1006
+
1007
+ /**
1008
+ * Methods for setting basis_ and solution_
1009
+ */
1010
+
1011
+ /**
1012
+ * @brief Pass a HighsSolution instance to set the internal
1013
+ * HighsSolution instance. If any of col_value, col_dual and
1014
+ * row_dual is not set, the internal HighsSolution instance is not
1015
+ * updated
1016
+ */
1017
+ HighsStatus setSolution(const HighsSolution& solution);
1018
+
1019
+ /**
1020
+ * @brief Set the callback method to use for HiGHS
1021
+ */
1022
+ HighsStatus setCallback(void (*user_callback)(const int, const char*,
1023
+ const HighsCallbackDataOut*,
1024
+ HighsCallbackDataIn*, void*),
1025
+ void* user_callback_data = nullptr);
1026
+
1027
+ /**
1028
+ * @brief Start callback of given type
1029
+ */
1030
+ HighsStatus startCallback(const int callback_type);
1031
+
1032
+ /**
1033
+ * @brief Stop callback of given type
1034
+ */
1035
+ HighsStatus stopCallback(const int callback_type);
1036
+
1037
+ /**
1038
+ * @brief Use the HighsBasis passed to set the internal HighsBasis
1039
+ * instance. The origin string is used to identify the source of the
1040
+ * HighsBasis instance.
1041
+ */
1042
+ HighsStatus setBasis(const HighsBasis& basis, const std::string& origin = "");
1043
+
1044
+ /**
1045
+ * @brief Clear the internal HighsBasis instance
1046
+ */
1047
+ HighsStatus setBasis();
1048
+
1049
+ /**
1050
+ * @brief Run IPX crossover from a given HighsSolution instance and,
1051
+ * if successful, set the internal HighsBasis and HighsSolution
1052
+ * instance
1053
+ */
1054
+ HighsStatus crossover(const HighsSolution& user_solution);
1055
+
1056
+ /**
1057
+ * @brief Open a named log file
1058
+ */
1059
+ HighsStatus openLogFile(const std::string& log_file = "");
1060
+
1061
+ /**
1062
+ * @brief Interpret common qualifiers to string values
1063
+ */
1064
+ std::string presolveStatusToString(
1065
+ const HighsPresolveStatus presolve_status) const;
1066
+ std::string modelStatusToString(const HighsModelStatus model_status) const;
1067
+ std::string solutionStatusToString(const HighsInt solution_status) const;
1068
+ std::string basisStatusToString(const HighsBasisStatus basis_status) const;
1069
+ std::string basisValidityToString(const HighsInt basis_validity) const;
1070
+ std::string presolveRuleTypeToString(const HighsInt presolve_rule) const;
1071
+
1072
+ /**
1073
+ * @brief Releases all resources held by the global scheduler instance. It is
1074
+ * not thread-safe to call this function while calling run() or presolve() on
1075
+ * any other Highs instance in any thread. After this function has terminated
1076
+ * it is guaranteed that eventually all previously created scheduler threads
1077
+ * will terminate and allocated memory will be released. After this function
1078
+ * has returned the option value for the number of threads may be altered to a
1079
+ * new value before the next call to run() or presolve(). If the given bool
1080
+ * parameter has value true, then the function will not return until all
1081
+ * memory is freed, which might be desirable when debugging heap memory but
1082
+ * requires the calling thread to wait for all scheduler threads to wake-up
1083
+ * which is usually not necessary.
1084
+ */
1085
+ static void resetGlobalScheduler(bool blocking = false);
1086
+
1087
+ // Start of advanced methods for HiGHS MIP solver
1088
+ /**
1089
+ * @brief Get the hot start basis data from the most recent simplex
1090
+ * solve. Advanced method: for HiGHS MIP solver
1091
+ */
1092
+ const HotStart& getHotStart() const { return ekk_instance_.hot_start_; }
1093
+
1094
+ /**
1095
+ * @brief Set up for simplex using the supplied hot start
1096
+ * data. Advanced method: for HiGHS MIP solver
1097
+ */
1098
+ HighsStatus setHotStart(const HotStart& hot_start);
1099
+
1100
+ /**
1101
+ * @brief Freeze the current internal HighsBasis instance and
1102
+ * standard NLA, returning a value to be used to recover this basis
1103
+ * and standard NLA at minimal cost. Advanced method: for HiGHS MIP
1104
+ * solver
1105
+ */
1106
+ HighsStatus freezeBasis(HighsInt& frozen_basis_id);
1107
+
1108
+ /**
1109
+ * @brief Unfreeze a frozen HighsBasis instance and standard NLA (if
1110
+ * possible). Advanced method: for HiGHS MIP solver
1111
+ */
1112
+ HighsStatus unfreezeBasis(const HighsInt frozen_basis_id);
1113
+
1114
+ /**
1115
+ * @brief Check that all frozen basis data has been
1116
+ * cleared. Advanced method: for HiGHS MIP solver
1117
+ */
1118
+ HighsStatus frozenBasisAllDataClear() {
1119
+ return ekk_instance_.frozenBasisAllDataClear();
1120
+ }
1121
+
1122
+ /**
1123
+ * @Brief Put a copy of the current iterate - basis; invertible
1124
+ * representation and dual edge weights - into storage within
1125
+ * HSimplexNla. Advanced method: for HiGHS MIP solver
1126
+ */
1127
+ HighsStatus putIterate();
1128
+
1129
+ /**
1130
+ * @Brief Get a copy of the iterate stored within HSimplexNla and
1131
+ * overwrite the current iterate. Advanced method: for HiGHS MIP
1132
+ * solver
1133
+ */
1134
+ HighsStatus getIterate();
1135
+
1136
+ /**
1137
+ * @brief Get the dual edge weights (steepest/devex) in the order of
1138
+ * the basic indices or nullptr when they are not available.
1139
+ */
1140
+ const double* getDualEdgeWeights() const {
1141
+ return ekk_instance_.status_.has_dual_steepest_edge_weights
1142
+ ? ekk_instance_.dual_edge_weight_.data()
1143
+ : nullptr;
1144
+ }
1145
+
1146
+ /**
1147
+ * @brief Gets the internal basic variable index array in the order
1148
+ * corresponding to calls to getBasisInverseRow, getBasisInverseCol,
1149
+ * getBasisSolve, getBasisTransposeSolve, getReducedRow and getReducedColumn.
1150
+ * Entries are indices of columns if in [0,num_col), and entries in [num_col,
1151
+ * num_col+num_row) are (num_col+row_index).
1152
+ */
1153
+ const HighsInt* getBasicVariablesArray() const;
1154
+
1155
+ /**
1156
+ * @brief Form a row of \f$B^{-1}\f$ for basis matrix \f$B\f$,
1157
+ * returning the result in the given HVector buffer which is
1158
+ * expected to be setup with dimension num_row. The buffers
1159
+ * previous contents will be overwritten.
1160
+ */
1161
+ HighsStatus getBasisInverseRowSparse(const HighsInt row,
1162
+ HVector& row_ep_buffer);
1163
+
1164
+ // Start of deprecated methods
1165
+
1166
+ HighsStatus setLogCallback(void (*user_log_callback)(HighsLogType,
1167
+ const char*, void*),
1168
+ void* user_log_callback_data = nullptr);
1169
+
1170
+ HighsInt getNumCols() const {
1171
+ deprecationMessage("getNumCols", "getNumCol");
1172
+ return getNumCol();
1173
+ }
1174
+ HighsInt getNumRows() const {
1175
+ deprecationMessage("getNumRows", "getNumRow");
1176
+ return getNumRow();
1177
+ }
1178
+ HighsInt getNumEntries() {
1179
+ deprecationMessage("getNumEntries", "getNumNz");
1180
+ return getNumNz();
1181
+ }
1182
+
1183
+ HighsStatus setHighsOptionValue(const std::string& option, const bool value);
1184
+
1185
+ HighsStatus setHighsOptionValue(const std::string& option,
1186
+ const HighsInt value);
1187
+
1188
+ #ifdef HIGHSINT64
1189
+ HighsStatus setHighsOptionValue(const std::string& option,
1190
+ const int value //!< The option value
1191
+ ) {
1192
+ deprecationMessage("setHighsOptionValue", "setOptionValue");
1193
+ return setOptionValue(option, HighsInt{value});
1194
+ }
1195
+ #endif
1196
+
1197
+ HighsStatus setHighsOptionValue(const std::string& option,
1198
+ const double value);
1199
+
1200
+ HighsStatus setHighsOptionValue(
1201
+ const std::string& option,
1202
+ const std::string& value //!< The option value
1203
+ );
1204
+
1205
+ HighsStatus setHighsOptionValue(const std::string& option, const char* value);
1206
+
1207
+ HighsStatus readHighsOptions(const std::string& filename //!< The filename
1208
+ );
1209
+
1210
+ HighsStatus passHighsOptions(const HighsOptions& options //!< The options
1211
+ );
1212
+
1213
+ HighsStatus getHighsOptionValue(const std::string& option, bool& value);
1214
+
1215
+ HighsStatus getHighsOptionValue(const std::string& option, HighsInt& value);
1216
+
1217
+ HighsStatus getHighsOptionValue(const std::string& option, double& value);
1218
+
1219
+ HighsStatus getHighsOptionValue(const std::string& option,
1220
+ std::string& value);
1221
+
1222
+ HighsStatus getHighsOptionType(const std::string& option,
1223
+ HighsOptionType& type //!< The option type
1224
+ );
1225
+
1226
+ const HighsOptions& getHighsOptions() const;
1227
+
1228
+ HighsStatus resetHighsOptions();
1229
+
1230
+ HighsStatus writeHighsOptions(
1231
+ const std::string& filename, //!< The filename
1232
+ const bool report_only_non_default_values = true);
1233
+
1234
+ HighsInt getSimplexIterationCount() {
1235
+ deprecationMessage("getSimplexIterationCount", "None");
1236
+ return info_.simplex_iteration_count;
1237
+ }
1238
+
1239
+ HighsStatus setHighsLogfile(FILE* logfile = nullptr);
1240
+
1241
+ HighsStatus setHighsOutput(FILE* output = nullptr);
1242
+
1243
+ const HighsInfo& getHighsInfo() const;
1244
+
1245
+ HighsStatus getHighsInfoValue(const std::string& info, HighsInt& value);
1246
+
1247
+ HighsStatus getHighsInfoValue(const std::string& info,
1248
+ double& value) const; //!< The info value
1249
+
1250
+ HighsStatus writeHighsInfo(const std::string& filename //!< The filename
1251
+ );
1252
+
1253
+ double getHighsInfinity();
1254
+
1255
+ double getHighsRunTime();
1256
+
1257
+ const HighsModelStatus& getModelStatus(const bool scaled_model) const;
1258
+
1259
+ void logHeader();
1260
+
1261
+ void deprecationMessage(const std::string& method_name,
1262
+ const std::string& alt_method_name) const;
1263
+
1264
+ // End of deprecated methods
1265
+ private:
1266
+ HighsSolution solution_;
1267
+ HighsBasis basis_;
1268
+ ICrashInfo icrash_info_;
1269
+
1270
+ HighsModel model_;
1271
+ HighsModel presolved_model_;
1272
+ HighsTimer timer_;
1273
+
1274
+ HighsCallback callback_;
1275
+ HighsOptions options_;
1276
+ HighsInfo info_;
1277
+ HighsRanging ranging_;
1278
+
1279
+ std::vector<HighsObjectiveSolution> saved_objective_and_solution_;
1280
+
1281
+ HighsPresolveStatus model_presolve_status_ =
1282
+ HighsPresolveStatus::kNotPresolved;
1283
+ HighsModelStatus model_status_ = HighsModelStatus::kNotset;
1284
+
1285
+ HEkk ekk_instance_;
1286
+
1287
+ HighsPresolveLog presolve_log_;
1288
+
1289
+ HighsInt max_threads = 0;
1290
+ // This is strictly for debugging. It's used to check whether
1291
+ // returnFromRun() was called after the previous call to
1292
+ // Highs::run() and, assuming that this is always done, it checks
1293
+ // whether Highs::run() is called recursively.
1294
+ bool called_return_from_run = true;
1295
+ HighsInt debug_run_call_num_ = 0;
1296
+
1297
+ bool written_log_header = false;
1298
+
1299
+ void exactResizeModel() {
1300
+ this->model_.lp_.exactResize();
1301
+ this->model_.hessian_.exactResize();
1302
+ }
1303
+
1304
+ HighsStatus assignContinuousAtDiscreteSolution();
1305
+
1306
+ HighsStatus callSolveLp(HighsLp& lp, const string message);
1307
+ HighsStatus callSolveQp();
1308
+ HighsStatus callSolveMip();
1309
+ HighsStatus callRunPostsolve(const HighsSolution& solution,
1310
+ const HighsBasis& basis);
1311
+
1312
+ PresolveComponent presolve_;
1313
+ HighsPresolveStatus runPresolve(const bool force_lp_presolve,
1314
+ const bool force_presolve = false);
1315
+ HighsPostsolveStatus runPostsolve();
1316
+
1317
+ HighsStatus openWriteFile(const string filename, const string method_name,
1318
+ FILE*& file, HighsFileType& file_type) const;
1319
+
1320
+ void reportModel();
1321
+ void newHighsBasis();
1322
+ void forceHighsSolutionBasisSize();
1323
+ //
1324
+ // For cases where there is no solution data for the model, but its
1325
+ // status is proved otherwise. Sets the model status, then clears any solution
1326
+ // and basis data
1327
+ void setHighsModelStatusAndClearSolutionAndBasis(
1328
+ const HighsModelStatus model_status);
1329
+ //
1330
+ // Sets model status, basis, solution and info from the
1331
+ // highs_model_object
1332
+ void setBasisValidity();
1333
+ //
1334
+ // Clears the presolved model and its status
1335
+ void clearPresolve();
1336
+ //
1337
+ // Methods to clear solver data for users in Highs class members
1338
+ // before (possibly) updating them with data from trying to solve
1339
+ // the inumcumbent model.
1340
+ //
1341
+ // Invalidates all solver data in Highs class members by calling
1342
+ // invalidateModelStatus(), invalidateSolution(), invalidateBasis(),
1343
+ // invalidateInfo() and invalidateEkk()
1344
+ void invalidateUserSolverData();
1345
+ //
1346
+ // Invalidates the model status, solution_ and info_
1347
+ void invalidateModelStatusSolutionAndInfo();
1348
+ //
1349
+ // Sets model status to HighsModelStatus::kNotset
1350
+ void invalidateModelStatus();
1351
+ //
1352
+ // Invalidates primal and dual solution
1353
+ void invalidateSolution();
1354
+ //
1355
+ // Invalidates basis
1356
+ void invalidateBasis();
1357
+ //
1358
+ // Invalidates info_ and resets the values of its members
1359
+ void invalidateInfo();
1360
+ //
1361
+ // Invalidates ranging_
1362
+ void invalidateRanging();
1363
+
1364
+ // Invalidates ekk_instance_
1365
+ void invalidateEkk();
1366
+
1367
+ HighsStatus returnFromWriteSolution(FILE* file,
1368
+ const HighsStatus return_status);
1369
+ HighsStatus returnFromRun(const HighsStatus return_status);
1370
+ HighsStatus returnFromHighs(const HighsStatus return_status);
1371
+ void reportSolvedLpQpStats();
1372
+
1373
+ void underDevelopmentLogMessage(const std::string& method_name);
1374
+
1375
+ // Interface methods
1376
+ HighsStatus basisForSolution();
1377
+ HighsStatus addColsInterface(
1378
+ HighsInt ext_num_new_col, const double* ext_col_cost,
1379
+ const double* ext_col_lower, const double* ext_col_upper,
1380
+ HighsInt ext_num_new_nz, const HighsInt* ext_a_start,
1381
+ const HighsInt* ext_a_index, const double* ext_a_value);
1382
+
1383
+ HighsStatus addRowsInterface(HighsInt ext_num_new_row,
1384
+ const double* ext_row_lower,
1385
+ const double* ext_row_upper,
1386
+ HighsInt ext_num_new_nz,
1387
+ const HighsInt* ext_ar_start,
1388
+ const HighsInt* ext_ar_index,
1389
+ const double* ext_ar_value);
1390
+
1391
+ void deleteColsInterface(HighsIndexCollection& index_collection);
1392
+
1393
+ void deleteRowsInterface(HighsIndexCollection& index_collection);
1394
+
1395
+ void getColsInterface(const HighsIndexCollection& index_collection,
1396
+ HighsInt& num_col, double* col_cost, double* col_lower,
1397
+ double* col_upper, HighsInt& num_nz,
1398
+ HighsInt* col_matrix_start, HighsInt* col_matrix_index,
1399
+ double* col_matrix_value);
1400
+
1401
+ void getRowsInterface(const HighsIndexCollection& index_collection,
1402
+ HighsInt& num_row, double* row_lower, double* row_upper,
1403
+ HighsInt& num_nz, HighsInt* row_matrix_start,
1404
+ HighsInt* row_matrix_index, double* row_matrix_value);
1405
+
1406
+ void getCoefficientInterface(const HighsInt ext_row, const HighsInt ext_col,
1407
+ double& value);
1408
+
1409
+ HighsStatus changeObjectiveSenseInterface(const ObjSense ext_sense);
1410
+ HighsStatus changeObjectiveOffsetInterface(const double ext_offset);
1411
+ HighsStatus changeIntegralityInterface(HighsIndexCollection& index_collection,
1412
+ const HighsVarType* usr_inegrality);
1413
+ HighsStatus changeCostsInterface(HighsIndexCollection& index_collection,
1414
+ const double* usr_col_cost);
1415
+ HighsStatus changeColBoundsInterface(HighsIndexCollection& index_collection,
1416
+ const double* usr_col_lower,
1417
+ const double* usr_col_upper);
1418
+ HighsStatus changeRowBoundsInterface(HighsIndexCollection& index_collection,
1419
+ const double* usr_row_lower,
1420
+ const double* usr_row_upper);
1421
+ void changeCoefficientInterface(const HighsInt ext_row,
1422
+ const HighsInt ext_col,
1423
+ const double ext_new_value);
1424
+ HighsStatus scaleColInterface(const HighsInt col, const double scale_value);
1425
+ HighsStatus scaleRowInterface(const HighsInt row, const double scale_value);
1426
+
1427
+ void setNonbasicStatusInterface(const HighsIndexCollection& index_collection,
1428
+ const bool columns);
1429
+ void appendNonbasicColsToBasisInterface(const HighsInt ext_num_new_col);
1430
+ void appendBasicRowsToBasisInterface(const HighsInt ext_num_new_row);
1431
+
1432
+ HighsStatus getBasicVariablesInterface(HighsInt* basic_variables);
1433
+ HighsStatus basisSolveInterface(const vector<double>& rhs,
1434
+ double* solution_vector,
1435
+ HighsInt* solution_num_nz,
1436
+ HighsInt* solution_indices, bool transpose);
1437
+
1438
+ HighsStatus setHotStartInterface(const HotStart& hot_start);
1439
+
1440
+ void zeroIterationCounts();
1441
+
1442
+ HighsStatus getDualRayInterface(bool& has_dual_ray, double* dual_ray_value);
1443
+
1444
+ HighsStatus getPrimalRayInterface(bool& has_primal_ray,
1445
+ double* primal_ray_value);
1446
+ HighsStatus getRangingInterface();
1447
+ bool aFormatOk(const HighsInt num_nz, const HighsInt format);
1448
+ bool qFormatOk(const HighsInt num_nz, const HighsInt format);
1449
+ void clearZeroHessian();
1450
+ HighsStatus checkOptimality(const std::string& solver_type,
1451
+ HighsStatus return_status);
1452
+ HighsStatus invertRequirementError(std::string method_name);
1453
+ HighsStatus lpInvertRequirementError(std::string method_name);
1454
+
1455
+ HighsStatus handleInfCost();
1456
+ void restoreInfCost(HighsStatus& return_status);
1457
+ };
1458
+
1459
+ #endif