casadi 3.6.3__cp35-none-win_amd64.whl → 3.6.5__cp35-none-win_amd64.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (897) hide show
  1. casadi/_casadi.pyd +0 -0
  2. casadi/bin/libtinyxml2.dll +0 -0
  3. casadi/blasfeo.lib +0 -0
  4. casadi/casadi-cli.exe +0 -0
  5. casadi/casadi.lib +0 -0
  6. casadi/casadi.py +415 -260
  7. casadi/cbc.exe +0 -0
  8. casadi/clp.exe +0 -0
  9. casadi/cmake/alpaqa/alpaqaConfig.cmake +24 -0
  10. casadi/cmake/alpaqa/alpaqaConfigVersion.cmake +67 -0
  11. casadi/cmake/alpaqa/alpaqaTargets-release.cmake +19 -0
  12. casadi/cmake/alpaqa/alpaqaTargets.cmake +108 -0
  13. casadi/cmake/casadi-config-version.cmake +1 -1
  14. casadi/cmake/highs/highs-config.cmake +18 -4
  15. casadi/cmake/sleqp/sleqp-config-version.cmake +67 -0
  16. casadi/cmake/sleqp/sleqp-config.cmake +1 -0
  17. casadi/cmake/sleqp/sleqp-targets-release.cmake +20 -0
  18. casadi/cmake/sleqp/sleqp-targets.cmake +94 -0
  19. casadi/cmake/trlib/trlib-config-release.cmake +19 -0
  20. casadi/cmake/trlib/trlib-config-version.cmake +59 -0
  21. casadi/cmake/trlib/trlib-config.cmake +99 -0
  22. casadi/highs.exe +0 -0
  23. casadi/highs.lib +0 -0
  24. casadi/hpipm.lib +0 -0
  25. casadi/include/alpaqa/accelerators/anderson.hpp +133 -0
  26. casadi/include/alpaqa/accelerators/internal/anderson-helpers.hpp +92 -0
  27. casadi/include/alpaqa/accelerators/internal/limited-memory-qr.hpp +295 -0
  28. casadi/include/alpaqa/accelerators/lbfgs.hpp +244 -0
  29. casadi/include/alpaqa/accelerators/steihaugcg.hpp +143 -0
  30. casadi/include/alpaqa/alpaqa.hpp +3 -0
  31. casadi/include/alpaqa/casadi/CasADiControlProblem.hpp +185 -0
  32. casadi/include/alpaqa/casadi/CasADiFunctionWrapper.hpp +104 -0
  33. casadi/include/alpaqa/casadi/CasADiProblem.hpp +102 -0
  34. casadi/include/alpaqa/casadi-loader-export.hpp +15 -0
  35. casadi/include/alpaqa/casadi-ocp-loader-export.hpp +15 -0
  36. casadi/include/alpaqa/config/config.hpp +165 -0
  37. casadi/include/alpaqa/dl/dl-problem.h +476 -0
  38. casadi/include/alpaqa/dl/dl-problem.hpp +301 -0
  39. casadi/include/alpaqa/export.h +42 -0
  40. casadi/include/alpaqa/export.hpp +30 -0
  41. casadi/include/alpaqa/implementation/accelerators/lbfgs.tpp +240 -0
  42. casadi/include/alpaqa/implementation/casadi/CasADiControlProblem.tpp +594 -0
  43. casadi/include/alpaqa/implementation/casadi/CasADiLoader-util.hpp +50 -0
  44. casadi/include/alpaqa/implementation/casadi/CasADiProblem.tpp +425 -0
  45. casadi/include/alpaqa/implementation/inner/directions/panoc/structured-lbfgs.tpp +164 -0
  46. casadi/include/alpaqa/implementation/inner/panoc-helpers.tpp +389 -0
  47. casadi/include/alpaqa/implementation/inner/panoc-ocp.tpp +798 -0
  48. casadi/include/alpaqa/implementation/inner/panoc.tpp +448 -0
  49. casadi/include/alpaqa/implementation/inner/pantr.tpp +474 -0
  50. casadi/include/alpaqa/implementation/inner/zerofpr.tpp +482 -0
  51. casadi/include/alpaqa/implementation/outer/alm.tpp +228 -0
  52. casadi/include/alpaqa/implementation/outer/internal/alm-helpers.tpp +80 -0
  53. casadi/include/alpaqa/implementation/params/params.tpp +158 -0
  54. casadi/include/alpaqa/implementation/problem/ocproblem.tpp +56 -0
  55. casadi/include/alpaqa/implementation/problem/type-erased-problem.tpp +211 -0
  56. casadi/include/alpaqa/implementation/util/io/csv.tpp +120 -0
  57. casadi/include/alpaqa/implementation/util/print.tpp +151 -0
  58. casadi/include/alpaqa/inner/directions/panoc/anderson.hpp +98 -0
  59. casadi/include/alpaqa/inner/directions/panoc/lbfgs.hpp +94 -0
  60. casadi/include/alpaqa/inner/directions/panoc/structured-lbfgs.hpp +146 -0
  61. casadi/include/alpaqa/inner/directions/panoc/structured-newton.hpp +264 -0
  62. casadi/include/alpaqa/inner/directions/panoc-direction-update.hpp +96 -0
  63. casadi/include/alpaqa/inner/directions/panoc-ocp/lqr.hpp +181 -0
  64. casadi/include/alpaqa/inner/directions/panoc-ocp/ocp-vars.hpp +492 -0
  65. casadi/include/alpaqa/inner/directions/pantr/newton-tr.hpp +192 -0
  66. casadi/include/alpaqa/inner/directions/pantr/pantr-direction.hpp +99 -0
  67. casadi/include/alpaqa/inner/inner-solve-options.hpp +30 -0
  68. casadi/include/alpaqa/inner/internal/lipschitz.hpp +27 -0
  69. casadi/include/alpaqa/inner/internal/panoc-helpers.hpp +10 -0
  70. casadi/include/alpaqa/inner/internal/panoc-stop-crit.hpp +124 -0
  71. casadi/include/alpaqa/inner/internal/solverstatus.hpp +42 -0
  72. casadi/include/alpaqa/inner/panoc-ocp.hpp +302 -0
  73. casadi/include/alpaqa/inner/panoc.hpp +274 -0
  74. casadi/include/alpaqa/inner/pantr.hpp +284 -0
  75. casadi/include/alpaqa/inner/zerofpr.hpp +274 -0
  76. casadi/include/alpaqa/ipopt/ipopt-adapter.hpp +81 -0
  77. casadi/include/alpaqa/ipopt/ipopt-enums.hpp +35 -0
  78. casadi/include/alpaqa/lbfgsb/lbfgsb-adapter.hpp +111 -0
  79. casadi/include/alpaqa/newton-tr-pantr-alm.hpp +27 -0
  80. casadi/include/alpaqa/outer/alm.hpp +190 -0
  81. casadi/include/alpaqa/outer/internal/alm-helpers.hpp +10 -0
  82. casadi/include/alpaqa/panoc-alm.hpp +27 -0
  83. casadi/include/alpaqa/panoc-anderson-alm.hpp +27 -0
  84. casadi/include/alpaqa/params/params.hpp +60 -0
  85. casadi/include/alpaqa/problem/box-constr-problem.hpp +220 -0
  86. casadi/include/alpaqa/problem/box.hpp +82 -0
  87. casadi/include/alpaqa/problem/functional-problem.hpp +73 -0
  88. casadi/include/alpaqa/problem/kkt-error.hpp +43 -0
  89. casadi/include/alpaqa/problem/ocproblem-counters.hpp +116 -0
  90. casadi/include/alpaqa/problem/ocproblem.hpp +662 -0
  91. casadi/include/alpaqa/problem/problem-counters.hpp +116 -0
  92. casadi/include/alpaqa/problem/problem-with-counters.hpp +141 -0
  93. casadi/include/alpaqa/problem/type-erased-problem.hpp +874 -0
  94. casadi/include/alpaqa/problem/unconstr-problem.hpp +37 -0
  95. casadi/include/alpaqa/structured-panoc-alm.hpp +27 -0
  96. casadi/include/alpaqa/structured-zerofpr-alm.hpp +27 -0
  97. casadi/include/alpaqa/util/alloc-check.hpp +23 -0
  98. casadi/include/alpaqa/util/atomic-stop-signal.hpp +24 -0
  99. casadi/include/alpaqa/util/check-dim.hpp +64 -0
  100. casadi/include/alpaqa/util/copyable_unique_ptr.hpp +32 -0
  101. casadi/include/alpaqa/util/demangled-typename.hpp +9 -0
  102. casadi/include/alpaqa/util/enumerate.hpp +70 -0
  103. casadi/include/alpaqa/util/float.hpp +25 -0
  104. casadi/include/alpaqa/util/index-set.hpp +97 -0
  105. casadi/include/alpaqa/util/io/csv.hpp +43 -0
  106. casadi/include/alpaqa/util/iter-adapter.hpp +68 -0
  107. casadi/include/alpaqa/util/max-history.hpp +47 -0
  108. casadi/include/alpaqa/util/noop-delete.hpp +15 -0
  109. casadi/include/alpaqa/util/not-implemented.hpp +12 -0
  110. casadi/include/alpaqa/util/print.hpp +78 -0
  111. casadi/include/alpaqa/util/quadmath/quadmath-print.hpp +20 -0
  112. casadi/include/alpaqa/util/quadmath/quadmath.hpp +137 -0
  113. casadi/include/alpaqa/util/required-method.hpp +29 -0
  114. casadi/include/alpaqa/util/ringbuffer.hpp +212 -0
  115. casadi/include/alpaqa/util/set-intersection.hpp +129 -0
  116. casadi/include/alpaqa/util/sparse-ops.hpp +164 -0
  117. casadi/include/alpaqa/util/timed.hpp +22 -0
  118. casadi/include/alpaqa/util/type-erasure.hpp +568 -0
  119. casadi/include/alpaqa/util/type-traits.hpp +58 -0
  120. casadi/include/alpaqa/zerofpr-alm.hpp +27 -0
  121. casadi/include/alpaqa/zerofpr-anderson-alm.hpp +27 -0
  122. casadi/include/alpaqa-version.h +8 -0
  123. casadi/include/casadi/casadi.i +43 -18
  124. casadi/include/casadi/config.h +8 -8
  125. casadi/include/casadi/core/calculus.hpp +1 -1
  126. casadi/include/casadi/core/code_generator.hpp +29 -1
  127. casadi/include/casadi/core/core.hpp +1 -0
  128. casadi/include/casadi/core/fmu.hpp +29 -1
  129. casadi/include/casadi/core/generic_expression.hpp +1 -1
  130. casadi/include/casadi/core/generic_type.hpp +25 -1
  131. casadi/include/casadi/core/matrix_decl.hpp +15 -0
  132. casadi/include/casadi/core/nlpsol.hpp +0 -2
  133. casadi/include/casadi/core/runtime/casadi_nlp.hpp +131 -6
  134. casadi/include/casadi/core/runtime/casadi_sqpmethod.hpp +11 -1
  135. casadi/include/casadi/core/serializing_stream.hpp +12 -0
  136. casadi/include/casadi/core/sparsity.hpp +5 -3
  137. casadi/include/casadi/core/tools.hpp +67 -0
  138. casadi/include/casadi/doc.i +1457 -825
  139. casadi/include/casadi/doc_merged.i +1089 -570
  140. casadi/include/coin/BonArraysHelpers.hpp +52 -0
  141. casadi/include/coin/BonAuxInfos.hpp +110 -0
  142. casadi/include/coin/BonBabInfos.hpp +57 -0
  143. casadi/include/coin/BonBabSetupBase.hpp +386 -0
  144. casadi/include/coin/BonBonminSetup.hpp +95 -0
  145. casadi/include/coin/BonBranchingTQP.hpp +197 -0
  146. casadi/include/coin/BonCbc.hpp +127 -0
  147. casadi/include/coin/BonCbcLpStrategy.hpp +45 -0
  148. casadi/include/coin/BonCbcNlpStrategy.hpp +98 -0
  149. casadi/include/coin/BonCbcNode.hpp +133 -0
  150. casadi/include/coin/BonChooseVariable.hpp +345 -0
  151. casadi/include/coin/BonCurvBranchingSolver.hpp +77 -0
  152. casadi/include/coin/BonCutStrengthener.hpp +244 -0
  153. casadi/include/coin/BonDiver.hpp +424 -0
  154. casadi/include/coin/BonDummyHeuristic.hpp +53 -0
  155. casadi/include/coin/BonDummyPump.hpp +43 -0
  156. casadi/include/coin/BonEcpCuts.hpp +97 -0
  157. casadi/include/coin/BonExitCodes.hpp +12 -0
  158. casadi/include/coin/BonFixAndSolveHeuristic.hpp +43 -0
  159. casadi/include/coin/BonGuessHeuristic.hpp +46 -0
  160. casadi/include/coin/BonHeuristicDive.hpp +88 -0
  161. casadi/include/coin/BonHeuristicDiveFractional.hpp +67 -0
  162. casadi/include/coin/BonHeuristicDiveMIP.hpp +83 -0
  163. casadi/include/coin/BonHeuristicDiveMIPFractional.hpp +67 -0
  164. casadi/include/coin/BonHeuristicDiveMIPVectorLength.hpp +74 -0
  165. casadi/include/coin/BonHeuristicDiveVectorLength.hpp +74 -0
  166. casadi/include/coin/BonHeuristicFPump.hpp +111 -0
  167. casadi/include/coin/BonHeuristicLocalBranching.hpp +59 -0
  168. casadi/include/coin/BonHeuristicRINS.hpp +55 -0
  169. casadi/include/coin/BonIpoptInteriorWarmStarter.hpp +103 -0
  170. casadi/include/coin/BonIpoptSolver.hpp +188 -0
  171. casadi/include/coin/BonIpoptWarmStart.hpp +148 -0
  172. casadi/include/coin/BonLinearCutsGenerator.hpp +75 -0
  173. casadi/include/coin/BonLocalSolverBasedHeuristic.hpp +102 -0
  174. casadi/include/coin/BonLpBranchingSolver.hpp +80 -0
  175. casadi/include/coin/BonMilpRounding.hpp +74 -0
  176. casadi/include/coin/BonOACutGenerator2.hpp +56 -0
  177. casadi/include/coin/BonOAMessages.hpp +44 -0
  178. casadi/include/coin/BonOaDecBase.hpp +297 -0
  179. casadi/include/coin/BonOaFeasChecker.hpp +73 -0
  180. casadi/include/coin/BonOaNlpOptim.hpp +116 -0
  181. casadi/include/coin/BonOsiTMINLPInterface.hpp +1342 -0
  182. casadi/include/coin/BonOuterApprox.hpp +123 -0
  183. casadi/include/coin/BonPseudoCosts.hpp +91 -0
  184. casadi/include/coin/BonPumpForMinlp.hpp +45 -0
  185. casadi/include/coin/BonQuadCut.hpp +217 -0
  186. casadi/include/coin/BonQuadRow.hpp +122 -0
  187. casadi/include/coin/BonRegisteredOptions.hpp +225 -0
  188. casadi/include/coin/BonStrongBranchingSolver.hpp +69 -0
  189. casadi/include/coin/BonSubMipSolver.hpp +143 -0
  190. casadi/include/coin/BonTMINLP.hpp +420 -0
  191. casadi/include/coin/BonTMINLP2OsiLP.hpp +164 -0
  192. casadi/include/coin/BonTMINLP2Quad.hpp +191 -0
  193. casadi/include/coin/BonTMINLP2TNLP.hpp +509 -0
  194. casadi/include/coin/BonTMINLPLinObj.hpp +216 -0
  195. casadi/include/coin/BonTMatrix.hpp +167 -0
  196. casadi/include/coin/BonTNLP2FPNLP.hpp +264 -0
  197. casadi/include/coin/BonTNLPSolver.hpp +241 -0
  198. casadi/include/coin/BonTypes.hpp +95 -0
  199. casadi/include/coin/BonminConfig.h +19 -0
  200. casadi/include/coin/CbcBranchActual.hpp +26 -0
  201. casadi/include/coin/CbcBranchAllDifferent.hpp +61 -0
  202. casadi/include/coin/CbcBranchBase.hpp +79 -0
  203. casadi/include/coin/CbcBranchCut.hpp +182 -0
  204. casadi/include/coin/CbcBranchDecision.hpp +135 -0
  205. casadi/include/coin/CbcBranchDefaultDecision.hpp +101 -0
  206. casadi/include/coin/CbcBranchDynamic.hpp +210 -0
  207. casadi/include/coin/CbcBranchLotsize.hpp +249 -0
  208. casadi/include/coin/CbcBranchToFixLots.hpp +94 -0
  209. casadi/include/coin/CbcBranchingObject.hpp +245 -0
  210. casadi/include/coin/CbcClique.hpp +309 -0
  211. casadi/include/coin/CbcCompare.hpp +46 -0
  212. casadi/include/coin/CbcCompareActual.hpp +16 -0
  213. casadi/include/coin/CbcCompareBase.hpp +155 -0
  214. casadi/include/coin/CbcCompareDefault.hpp +129 -0
  215. casadi/include/coin/CbcCompareDepth.hpp +48 -0
  216. casadi/include/coin/CbcCompareEstimate.hpp +48 -0
  217. casadi/include/coin/CbcCompareObjective.hpp +50 -0
  218. casadi/include/coin/CbcConfig.h +18 -0
  219. casadi/include/coin/CbcConsequence.hpp +50 -0
  220. casadi/include/coin/CbcCountRowCut.hpp +176 -0
  221. casadi/include/coin/CbcCutGenerator.hpp +550 -0
  222. casadi/include/coin/CbcCutModifier.hpp +59 -0
  223. casadi/include/coin/CbcCutSubsetModifier.hpp +69 -0
  224. casadi/include/coin/CbcDummyBranchingObject.hpp +83 -0
  225. casadi/include/coin/CbcEventHandler.hpp +250 -0
  226. casadi/include/coin/CbcFathom.hpp +136 -0
  227. casadi/include/coin/CbcFathomDynamicProgramming.hpp +177 -0
  228. casadi/include/coin/CbcFeasibilityBase.hpp +60 -0
  229. casadi/include/coin/CbcFixVariable.hpp +68 -0
  230. casadi/include/coin/CbcFollowOn.hpp +207 -0
  231. casadi/include/coin/CbcFullNodeInfo.hpp +171 -0
  232. casadi/include/coin/CbcGeneral.hpp +60 -0
  233. casadi/include/coin/CbcGeneralDepth.hpp +289 -0
  234. casadi/include/coin/CbcHeuristic.hpp +735 -0
  235. casadi/include/coin/CbcHeuristicDINS.hpp +98 -0
  236. casadi/include/coin/CbcHeuristicDW.hpp +374 -0
  237. casadi/include/coin/CbcHeuristicDive.hpp +198 -0
  238. casadi/include/coin/CbcHeuristicDiveCoefficient.hpp +52 -0
  239. casadi/include/coin/CbcHeuristicDiveFractional.hpp +52 -0
  240. casadi/include/coin/CbcHeuristicDiveGuided.hpp +55 -0
  241. casadi/include/coin/CbcHeuristicDiveLineSearch.hpp +52 -0
  242. casadi/include/coin/CbcHeuristicDivePseudoCost.hpp +60 -0
  243. casadi/include/coin/CbcHeuristicDiveVectorLength.hpp +52 -0
  244. casadi/include/coin/CbcHeuristicFPump.hpp +375 -0
  245. casadi/include/coin/CbcHeuristicGreedy.hpp +289 -0
  246. casadi/include/coin/CbcHeuristicLocal.hpp +276 -0
  247. casadi/include/coin/CbcHeuristicPivotAndFix.hpp +58 -0
  248. casadi/include/coin/CbcHeuristicRENS.hpp +79 -0
  249. casadi/include/coin/CbcHeuristicRINS.hpp +106 -0
  250. casadi/include/coin/CbcHeuristicRandRound.hpp +58 -0
  251. casadi/include/coin/CbcHeuristicVND.hpp +95 -0
  252. casadi/include/coin/CbcLinked.hpp +1443 -0
  253. casadi/include/coin/CbcMessage.hpp +94 -0
  254. casadi/include/coin/CbcMipStartIO.hpp +29 -0
  255. casadi/include/coin/CbcModel.hpp +3296 -0
  256. casadi/include/coin/CbcNWay.hpp +171 -0
  257. casadi/include/coin/CbcNode.hpp +380 -0
  258. casadi/include/coin/CbcNodeInfo.hpp +377 -0
  259. casadi/include/coin/CbcObject.hpp +288 -0
  260. casadi/include/coin/CbcObjectUpdateData.hpp +63 -0
  261. casadi/include/coin/CbcOrClpParam.cpp +4321 -0
  262. casadi/include/coin/CbcOrClpParam.hpp +585 -0
  263. casadi/include/coin/CbcParam.hpp +338 -0
  264. casadi/include/coin/CbcPartialNodeInfo.hpp +116 -0
  265. casadi/include/coin/CbcSOS.hpp +290 -0
  266. casadi/include/coin/CbcSimpleInteger.hpp +299 -0
  267. casadi/include/coin/CbcSimpleIntegerDynamicPseudoCost.hpp +619 -0
  268. casadi/include/coin/CbcSimpleIntegerPseudoCost.hpp +122 -0
  269. casadi/include/coin/CbcSolver.hpp +460 -0
  270. casadi/include/coin/CbcStrategy.hpp +269 -0
  271. casadi/include/coin/CbcSubProblem.hpp +84 -0
  272. casadi/include/coin/CbcTree.hpp +493 -0
  273. casadi/include/coin/CbcTreeLocal.hpp +393 -0
  274. casadi/include/coin/Cbc_C_Interface.h +904 -0
  275. casadi/include/coin/Cgl012cut.hpp +464 -0
  276. casadi/include/coin/CglAllDifferent.hpp +115 -0
  277. casadi/include/coin/CglClique.hpp +312 -0
  278. casadi/include/coin/CglConfig.h +19 -0
  279. casadi/include/coin/CglCutGenerator.hpp +133 -0
  280. casadi/include/coin/CglDuplicateRow.hpp +189 -0
  281. casadi/include/coin/CglFlowCover.hpp +371 -0
  282. casadi/include/coin/CglGMI.hpp +364 -0
  283. casadi/include/coin/CglGMIParam.hpp +313 -0
  284. casadi/include/coin/CglGomory.hpp +204 -0
  285. casadi/include/coin/CglKnapsackCover.hpp +310 -0
  286. casadi/include/coin/CglLandP.hpp +306 -0
  287. casadi/include/coin/CglLandPValidator.hpp +130 -0
  288. casadi/include/coin/CglLiftAndProject.hpp +104 -0
  289. casadi/include/coin/CglMessage.hpp +49 -0
  290. casadi/include/coin/CglMixedIntegerRounding.hpp +429 -0
  291. casadi/include/coin/CglMixedIntegerRounding2.hpp +427 -0
  292. casadi/include/coin/CglOddHole.hpp +160 -0
  293. casadi/include/coin/CglParam.hpp +93 -0
  294. casadi/include/coin/CglPreProcess.hpp +600 -0
  295. casadi/include/coin/CglProbing.hpp +543 -0
  296. casadi/include/coin/CglRedSplit.hpp +448 -0
  297. casadi/include/coin/CglRedSplit2.hpp +494 -0
  298. casadi/include/coin/CglRedSplit2Param.hpp +495 -0
  299. casadi/include/coin/CglRedSplitParam.hpp +272 -0
  300. casadi/include/coin/CglResidualCapacity.hpp +240 -0
  301. casadi/include/coin/CglSimpleRounding.hpp +174 -0
  302. casadi/include/coin/CglStored.hpp +140 -0
  303. casadi/include/coin/CglTreeInfo.hpp +216 -0
  304. casadi/include/coin/CglTwomir.hpp +562 -0
  305. casadi/include/coin/CglZeroHalf.hpp +133 -0
  306. casadi/include/coin/ClpAmplObjective.hpp +113 -0
  307. casadi/include/coin/ClpCholeskyBase.hpp +321 -0
  308. casadi/include/coin/ClpCholeskyDense.hpp +157 -0
  309. casadi/include/coin/ClpCholeskyMumps.hpp +65 -0
  310. casadi/include/coin/ClpCholeskyPardiso.hpp +67 -0
  311. casadi/include/coin/ClpConfig.h +17 -0
  312. casadi/include/coin/ClpConstraint.hpp +129 -0
  313. casadi/include/coin/ClpConstraintAmpl.hpp +109 -0
  314. casadi/include/coin/ClpConstraintLinear.hpp +113 -0
  315. casadi/include/coin/ClpConstraintQuadratic.hpp +123 -0
  316. casadi/include/coin/ClpDualRowDantzig.hpp +72 -0
  317. casadi/include/coin/ClpDualRowPivot.hpp +136 -0
  318. casadi/include/coin/ClpDualRowSteepest.hpp +160 -0
  319. casadi/include/coin/ClpDummyMatrix.hpp +186 -0
  320. casadi/include/coin/ClpDynamicExampleMatrix.hpp +199 -0
  321. casadi/include/coin/ClpDynamicMatrix.hpp +420 -0
  322. casadi/include/coin/ClpEventHandler.hpp +193 -0
  323. casadi/include/coin/ClpFactorization.hpp +556 -0
  324. casadi/include/coin/ClpGubDynamicMatrix.hpp +270 -0
  325. casadi/include/coin/ClpGubMatrix.hpp +373 -0
  326. casadi/include/coin/ClpInterior.hpp +622 -0
  327. casadi/include/coin/ClpLinearObjective.hpp +104 -0
  328. casadi/include/coin/ClpMatrixBase.hpp +561 -0
  329. casadi/include/coin/ClpMessage.hpp +131 -0
  330. casadi/include/coin/ClpModel.hpp +1442 -0
  331. casadi/include/coin/ClpNetworkMatrix.hpp +235 -0
  332. casadi/include/coin/ClpNode.hpp +364 -0
  333. casadi/include/coin/ClpNonLinearCost.hpp +432 -0
  334. casadi/include/coin/ClpObjective.hpp +142 -0
  335. casadi/include/coin/ClpPEDualRowDantzig.hpp +84 -0
  336. casadi/include/coin/ClpPEDualRowSteepest.hpp +100 -0
  337. casadi/include/coin/ClpPEPrimalColumnDantzig.hpp +71 -0
  338. casadi/include/coin/ClpPEPrimalColumnSteepest.hpp +107 -0
  339. casadi/include/coin/ClpPESimplex.hpp +231 -0
  340. casadi/include/coin/ClpPackedMatrix.hpp +778 -0
  341. casadi/include/coin/ClpParameters.hpp +132 -0
  342. casadi/include/coin/ClpPdcoBase.hpp +110 -0
  343. casadi/include/coin/ClpPlusMinusOneMatrix.hpp +565 -0
  344. casadi/include/coin/ClpPresolve.hpp +379 -0
  345. casadi/include/coin/ClpPrimalColumnDantzig.hpp +74 -0
  346. casadi/include/coin/ClpPrimalColumnPivot.hpp +163 -0
  347. casadi/include/coin/ClpPrimalColumnSteepest.hpp +281 -0
  348. casadi/include/coin/ClpQuadraticObjective.hpp +161 -0
  349. casadi/include/coin/ClpSimplex.hpp +2137 -0
  350. casadi/include/coin/ClpSimplexDual.hpp +304 -0
  351. casadi/include/coin/ClpSimplexNonlinear.hpp +117 -0
  352. casadi/include/coin/ClpSimplexOther.hpp +282 -0
  353. casadi/include/coin/ClpSimplexPrimal.hpp +244 -0
  354. casadi/include/coin/ClpSolve.hpp +505 -0
  355. casadi/include/coin/Clp_C_Interface.h +554 -0
  356. casadi/include/coin/CoinAlloc.hpp +179 -0
  357. casadi/include/coin/CoinBuild.hpp +159 -0
  358. casadi/include/coin/CoinDenseFactorization.hpp +452 -0
  359. casadi/include/coin/CoinDenseVector.hpp +401 -0
  360. casadi/include/coin/CoinDistance.hpp +51 -0
  361. casadi/include/coin/CoinError.hpp +274 -0
  362. casadi/include/coin/CoinFactorization.hpp +2178 -0
  363. casadi/include/coin/CoinFileIO.hpp +185 -0
  364. casadi/include/coin/CoinFinite.hpp +37 -0
  365. casadi/include/coin/CoinFloatEqual.hpp +204 -0
  366. casadi/include/coin/CoinHelperFunctions.hpp +1270 -0
  367. casadi/include/coin/CoinIndexedVector.hpp +1437 -0
  368. casadi/include/coin/CoinLpIO.hpp +836 -0
  369. casadi/include/coin/CoinMessage.hpp +95 -0
  370. casadi/include/coin/CoinMessageHandler.hpp +717 -0
  371. casadi/include/coin/CoinModel.hpp +1214 -0
  372. casadi/include/coin/CoinModelUseful.hpp +518 -0
  373. casadi/include/coin/CoinMpsIO.hpp +1142 -0
  374. casadi/include/coin/CoinOslFactorization.hpp +287 -0
  375. casadi/include/coin/CoinPackedMatrix.hpp +956 -0
  376. casadi/include/coin/CoinPackedVector.hpp +670 -0
  377. casadi/include/coin/CoinPackedVectorBase.hpp +274 -0
  378. casadi/include/coin/CoinParam.hpp +644 -0
  379. casadi/include/coin/CoinPragma.hpp +29 -0
  380. casadi/include/coin/CoinPresolveDoubleton.hpp +76 -0
  381. casadi/include/coin/CoinPresolveDual.hpp +84 -0
  382. casadi/include/coin/CoinPresolveDupcol.hpp +259 -0
  383. casadi/include/coin/CoinPresolveEmpty.hpp +120 -0
  384. casadi/include/coin/CoinPresolveFixed.hpp +185 -0
  385. casadi/include/coin/CoinPresolveForcing.hpp +69 -0
  386. casadi/include/coin/CoinPresolveImpliedFree.hpp +66 -0
  387. casadi/include/coin/CoinPresolveIsolated.hpp +59 -0
  388. casadi/include/coin/CoinPresolveMatrix.hpp +1996 -0
  389. casadi/include/coin/CoinPresolveMonitor.hpp +105 -0
  390. casadi/include/coin/CoinPresolvePsdebug.hpp +169 -0
  391. casadi/include/coin/CoinPresolveSingleton.hpp +115 -0
  392. casadi/include/coin/CoinPresolveSubst.hpp +103 -0
  393. casadi/include/coin/CoinPresolveTighten.hpp +58 -0
  394. casadi/include/coin/CoinPresolveTripleton.hpp +69 -0
  395. casadi/include/coin/CoinPresolveUseless.hpp +63 -0
  396. casadi/include/coin/CoinPresolveZeros.hpp +65 -0
  397. casadi/include/coin/CoinRational.hpp +43 -0
  398. casadi/include/coin/CoinSearchTree.hpp +523 -0
  399. casadi/include/coin/CoinShallowPackedVector.hpp +149 -0
  400. casadi/include/coin/CoinSignal.hpp +127 -0
  401. casadi/include/coin/CoinSimpFactorization.hpp +432 -0
  402. casadi/include/coin/CoinSmartPtr.hpp +548 -0
  403. casadi/include/coin/CoinSnapshot.hpp +572 -0
  404. casadi/include/coin/CoinSort.hpp +753 -0
  405. casadi/include/coin/CoinStructuredModel.hpp +270 -0
  406. casadi/include/coin/CoinTime.hpp +350 -0
  407. casadi/include/coin/CoinTypes.hpp +67 -0
  408. casadi/include/coin/CoinUtility.hpp +26 -0
  409. casadi/include/coin/CoinUtilsConfig.h +34 -0
  410. casadi/include/coin/CoinWarmStart.hpp +56 -0
  411. casadi/include/coin/CoinWarmStartBasis.hpp +468 -0
  412. casadi/include/coin/CoinWarmStartDual.hpp +180 -0
  413. casadi/include/coin/CoinWarmStartPrimalDual.hpp +233 -0
  414. casadi/include/coin/CoinWarmStartVector.hpp +523 -0
  415. casadi/include/coin/Coin_C_defines.h +149 -0
  416. casadi/include/coin/Idiot.hpp +327 -0
  417. casadi/include/coin/OsiAuxInfo.hpp +261 -0
  418. casadi/include/coin/OsiBranchingObject.hpp +1097 -0
  419. casadi/include/coin/OsiCbcSolverInterface.hpp +791 -0
  420. casadi/include/coin/OsiChooseVariable.hpp +645 -0
  421. casadi/include/coin/OsiClpSolverInterface.hpp +1604 -0
  422. casadi/include/coin/OsiColCut.hpp +322 -0
  423. casadi/include/coin/OsiCollections.hpp +34 -0
  424. casadi/include/coin/OsiConfig.h +19 -0
  425. casadi/include/coin/OsiCut.hpp +251 -0
  426. casadi/include/coin/OsiCuts.hpp +505 -0
  427. casadi/include/coin/OsiPresolve.hpp +272 -0
  428. casadi/include/coin/OsiRowCut.hpp +345 -0
  429. casadi/include/coin/OsiRowCutDebugger.hpp +190 -0
  430. casadi/include/coin/OsiSolverBranch.hpp +169 -0
  431. casadi/include/coin/OsiSolverInterface.hpp +2221 -0
  432. casadi/include/coin/OsiSolverParameters.hpp +144 -0
  433. casadi/include/coin/OsiUnitTests.hpp +390 -0
  434. casadi/include/coin-or/IpAlgBuilder.hpp +417 -0
  435. casadi/include/coin-or/IpAlgStrategy.hpp +201 -0
  436. casadi/include/coin-or/IpAlgTypes.hpp +64 -0
  437. casadi/include/coin-or/IpAugSystemSolver.hpp +212 -0
  438. casadi/include/coin-or/IpBlas.hpp +426 -0
  439. casadi/include/coin-or/IpCachedResults.hpp +897 -0
  440. casadi/include/coin-or/IpCompoundMatrix.hpp +423 -0
  441. casadi/include/coin-or/IpCompoundSymMatrix.hpp +348 -0
  442. casadi/include/coin-or/IpCompoundVector.hpp +395 -0
  443. casadi/include/coin-or/IpConvCheck.hpp +97 -0
  444. casadi/include/coin-or/IpDebug.hpp +167 -0
  445. casadi/include/coin-or/IpDenseVector.hpp +626 -0
  446. casadi/include/coin-or/IpDiagMatrix.hpp +158 -0
  447. casadi/include/coin-or/IpEqMultCalculator.hpp +76 -0
  448. casadi/include/coin-or/IpException.hpp +156 -0
  449. casadi/include/coin-or/IpExpansionMatrix.hpp +245 -0
  450. casadi/include/coin-or/IpGenTMatrix.hpp +290 -0
  451. casadi/include/coin-or/IpHessianUpdater.hpp +73 -0
  452. casadi/include/coin-or/IpIdentityMatrix.hpp +167 -0
  453. casadi/include/coin-or/IpIpoptAlg.hpp +257 -0
  454. casadi/include/coin-or/IpIpoptApplication.hpp +367 -0
  455. casadi/include/coin-or/IpIpoptCalculatedQuantities.hpp +1009 -0
  456. casadi/include/coin-or/IpIpoptData.hpp +966 -0
  457. casadi/include/coin-or/IpIpoptNLP.hpp +328 -0
  458. casadi/include/coin-or/IpIterateInitializer.hpp +68 -0
  459. casadi/include/coin-or/IpIteratesVector.hpp +840 -0
  460. casadi/include/coin-or/IpIterationOutput.hpp +78 -0
  461. casadi/include/coin-or/IpJournalist.hpp +573 -0
  462. casadi/include/coin-or/IpLapack.hpp +227 -0
  463. casadi/include/coin-or/IpLibraryLoader.hpp +76 -0
  464. casadi/include/coin-or/IpLineSearch.hpp +106 -0
  465. casadi/include/coin-or/IpLinearSolvers.h +46 -0
  466. casadi/include/coin-or/IpMatrix.hpp +434 -0
  467. casadi/include/coin-or/IpMuUpdate.hpp +77 -0
  468. casadi/include/coin-or/IpNLP.hpp +306 -0
  469. casadi/include/coin-or/IpNLPScaling.hpp +582 -0
  470. casadi/include/coin-or/IpObserver.hpp +422 -0
  471. casadi/include/coin-or/IpOptionsList.hpp +412 -0
  472. casadi/include/coin-or/IpOrigIpoptNLP.hpp +603 -0
  473. casadi/include/coin-or/IpPDSystemSolver.hpp +137 -0
  474. casadi/include/coin-or/IpReferenced.hpp +262 -0
  475. casadi/include/coin-or/IpRegOptions.hpp +1152 -0
  476. casadi/include/coin-or/IpReturnCodes.h +23 -0
  477. casadi/include/coin-or/IpReturnCodes.hpp +18 -0
  478. casadi/include/coin-or/IpReturnCodes.inc +71 -0
  479. casadi/include/coin-or/IpReturnCodes_inc.h +45 -0
  480. casadi/include/coin-or/IpScaledMatrix.hpp +291 -0
  481. casadi/include/coin-or/IpSearchDirCalculator.hpp +72 -0
  482. casadi/include/coin-or/IpSmartPtr.hpp +865 -0
  483. casadi/include/coin-or/IpSolveStatistics.hpp +210 -0
  484. casadi/include/coin-or/IpSparseSymLinearSolverInterface.hpp +260 -0
  485. casadi/include/coin-or/IpStdAugSystemSolver.cpp +555 -0
  486. casadi/include/coin-or/IpStdCInterface.h +428 -0
  487. casadi/include/coin-or/IpSumSymMatrix.hpp +186 -0
  488. casadi/include/coin-or/IpSymLinearSolver.hpp +141 -0
  489. casadi/include/coin-or/IpSymMatrix.hpp +167 -0
  490. casadi/include/coin-or/IpSymScaledMatrix.hpp +255 -0
  491. casadi/include/coin-or/IpSymTMatrix.hpp +275 -0
  492. casadi/include/coin-or/IpTNLP.hpp +820 -0
  493. casadi/include/coin-or/IpTNLPAdapter.hpp +648 -0
  494. casadi/include/coin-or/IpTNLPReducer.hpp +274 -0
  495. casadi/include/coin-or/IpTaggedObject.hpp +128 -0
  496. casadi/include/coin-or/IpTimedTask.hpp +218 -0
  497. casadi/include/coin-or/IpTimingStatistics.hpp +323 -0
  498. casadi/include/coin-or/IpTripletHelper.hpp +308 -0
  499. casadi/include/coin-or/IpTypes.h +81 -0
  500. casadi/include/coin-or/IpTypes.hpp +30 -0
  501. casadi/include/coin-or/IpUtils.hpp +166 -0
  502. casadi/include/coin-or/IpVector.hpp +892 -0
  503. casadi/include/coin-or/IpZeroSymMatrix.hpp +155 -0
  504. casadi/include/coin-or/IpoptConfig.h +45 -0
  505. casadi/include/coin-or/SensAlgorithm.hpp +114 -0
  506. casadi/include/coin-or/SensApplication.hpp +188 -0
  507. casadi/include/coin-or/SensBacksolver.hpp +36 -0
  508. casadi/include/coin-or/SensMeasurement.hpp +56 -0
  509. casadi/include/coin-or/SensPCalculator.hpp +137 -0
  510. casadi/include/coin-or/SensRegOp.hpp +21 -0
  511. casadi/include/coin-or/SensSchurData.hpp +182 -0
  512. casadi/include/coin-or/SensSchurDriver.hpp +118 -0
  513. casadi/include/coin-or/SensSimpleBacksolver.hpp +49 -0
  514. casadi/include/coin-or/SensStepCalc.hpp +85 -0
  515. casadi/include/coin-or/SensUtils.hpp +63 -0
  516. casadi/include/coin-or/metis/defs.h +161 -0
  517. casadi/include/coin-or/metis/macros.h +143 -0
  518. casadi/include/coin-or/metis/metis.h +37 -0
  519. casadi/include/coin-or/metis/proto.h +505 -0
  520. casadi/include/coin-or/metis/rename.h +418 -0
  521. casadi/include/coin-or/metis/struct.h +251 -0
  522. casadi/include/coin-or/mumps/dmumps_c.h +142 -0
  523. casadi/include/coin-or/mumps/mumps_c_types.h +72 -0
  524. casadi/include/coin-or/mumps/mumps_compat.h +27 -0
  525. casadi/include/coin-or/mumps/mumps_int_def.h +11 -0
  526. casadi/include/coin-or/mumps/mumps_mpi.h +67 -0
  527. casadi/include/d_blas.h +78 -0
  528. casadi/include/d_blas_64.h +73 -0
  529. casadi/include/highs/HConfig.h +4 -7
  530. casadi/include/highs/Highs.h +240 -51
  531. casadi/include/highs/filereaderlp/builder.hpp +12 -13
  532. casadi/include/highs/filereaderlp/model.hpp +32 -35
  533. casadi/include/highs/fortran/highs_fortran_api.mod +0 -0
  534. casadi/include/highs/interfaces/highs_c_api.h +964 -577
  535. casadi/include/highs/io/Filereader.h +2 -4
  536. casadi/include/highs/io/FilereaderEms.h +2 -4
  537. casadi/include/highs/io/FilereaderLp.h +2 -4
  538. casadi/include/highs/io/FilereaderMps.h +2 -4
  539. casadi/include/highs/io/HMPSIO.h +2 -4
  540. casadi/include/highs/io/HMpsFF.h +2 -4
  541. casadi/include/highs/io/HighsIO.h +19 -13
  542. casadi/include/highs/io/LoadOptions.h +7 -6
  543. casadi/include/highs/ipm/IpxWrapper.h +4 -5
  544. casadi/include/highs/lp_data/HConst.h +60 -15
  545. casadi/include/highs/lp_data/HStruct.h +32 -8
  546. casadi/include/highs/lp_data/HighsAnalysis.h +2 -4
  547. casadi/include/highs/lp_data/HighsCallback.h +33 -0
  548. casadi/include/highs/lp_data/HighsCallbackStruct.h +36 -0
  549. casadi/include/highs/lp_data/HighsDebug.h +2 -4
  550. casadi/include/highs/lp_data/HighsInfo.h +22 -23
  551. casadi/include/highs/lp_data/HighsInfoDebug.h +2 -4
  552. casadi/include/highs/lp_data/HighsLp.h +14 -6
  553. casadi/include/highs/lp_data/HighsLpSolverObject.h +6 -5
  554. casadi/include/highs/lp_data/HighsLpUtils.h +23 -12
  555. casadi/include/highs/lp_data/HighsModelUtils.h +22 -8
  556. casadi/include/highs/lp_data/HighsOptions.h +175 -106
  557. casadi/include/highs/lp_data/HighsRanging.h +2 -4
  558. casadi/include/highs/lp_data/HighsRuntimeOptions.h +21 -6
  559. casadi/include/highs/lp_data/HighsSolution.h +4 -4
  560. casadi/include/highs/lp_data/HighsSolutionDebug.h +2 -4
  561. casadi/include/highs/lp_data/HighsSolve.h +2 -4
  562. casadi/include/highs/lp_data/HighsStatus.h +2 -4
  563. casadi/include/highs/mip/HighsCliqueTable.h +18 -20
  564. casadi/include/highs/mip/HighsConflictPool.h +2 -4
  565. casadi/include/highs/mip/HighsCutGeneration.h +2 -4
  566. casadi/include/highs/mip/HighsCutPool.h +2 -4
  567. casadi/include/highs/mip/HighsDebugSol.h +2 -4
  568. casadi/include/highs/mip/HighsDomain.h +5 -5
  569. casadi/include/highs/mip/HighsDomainChange.h +2 -4
  570. casadi/include/highs/mip/HighsDynamicRowMatrix.h +2 -4
  571. casadi/include/highs/mip/HighsGFkSolve.h +2 -4
  572. casadi/include/highs/mip/HighsImplications.h +2 -4
  573. casadi/include/highs/mip/HighsLpAggregator.h +2 -4
  574. casadi/include/highs/mip/HighsLpRelaxation.h +2 -4
  575. casadi/include/highs/mip/HighsMipSolver.h +18 -6
  576. casadi/include/highs/mip/HighsMipSolverData.h +8 -4
  577. casadi/include/highs/mip/HighsModkSeparator.h +2 -4
  578. casadi/include/highs/mip/HighsNodeQueue.h +3 -9
  579. casadi/include/highs/mip/HighsObjectiveFunction.h +2 -4
  580. casadi/include/highs/mip/HighsPathSeparator.h +2 -4
  581. casadi/include/highs/mip/HighsPrimalHeuristics.h +2 -4
  582. casadi/include/highs/mip/HighsPseudocost.h +2 -4
  583. casadi/include/highs/mip/HighsRedcostFixing.h +2 -4
  584. casadi/include/highs/mip/HighsSearch.h +2 -4
  585. casadi/include/highs/mip/HighsSeparation.h +2 -4
  586. casadi/include/highs/mip/HighsSeparator.h +2 -4
  587. casadi/include/highs/mip/HighsTableauSeparator.h +2 -4
  588. casadi/include/highs/mip/HighsTransformedLp.h +2 -4
  589. casadi/include/highs/model/HighsHessian.h +3 -1
  590. casadi/include/highs/model/HighsModel.h +2 -0
  591. casadi/include/highs/parallel/HighsSpinMutex.h +2 -1
  592. casadi/include/highs/parallel/HighsSplitDeque.h +1 -1
  593. casadi/include/highs/parallel/HighsTaskExecutor.h +10 -2
  594. casadi/include/highs/presolve/HPresolve.h +9 -6
  595. casadi/include/highs/presolve/HPresolveAnalysis.h +5 -4
  596. casadi/include/highs/presolve/HighsPostsolveStack.h +50 -13
  597. casadi/include/highs/presolve/HighsSymmetry.h +2 -4
  598. casadi/include/highs/presolve/ICrash.h +4 -3
  599. casadi/include/highs/presolve/ICrashUtil.h +2 -2
  600. casadi/include/highs/presolve/ICrashX.h +4 -6
  601. casadi/include/highs/presolve/PresolveComponent.h +4 -42
  602. casadi/include/highs/qpsolver/a_asm.hpp +56 -0
  603. casadi/include/highs/qpsolver/a_quass.hpp +12 -0
  604. casadi/include/highs/qpsolver/quass.hpp +1 -4
  605. casadi/include/highs/simplex/HApp.h +14 -16
  606. casadi/include/highs/simplex/HEkk.h +12 -11
  607. casadi/include/highs/simplex/HEkkDual.h +2 -4
  608. casadi/include/highs/simplex/HEkkDualRHS.h +5 -6
  609. casadi/include/highs/simplex/HEkkDualRow.h +2 -4
  610. casadi/include/highs/simplex/HEkkPrimal.h +2 -4
  611. casadi/include/highs/simplex/HSimplex.h +2 -4
  612. casadi/include/highs/simplex/HSimplexDebug.h +2 -4
  613. casadi/include/highs/simplex/HSimplexNla.h +2 -4
  614. casadi/include/highs/simplex/HSimplexReport.h +3 -5
  615. casadi/include/highs/simplex/HighsSimplexAnalysis.h +2 -4
  616. casadi/include/highs/simplex/SimplexConst.h +7 -5
  617. casadi/include/highs/simplex/SimplexStruct.h +11 -5
  618. casadi/include/highs/simplex/SimplexTimer.h +2 -4
  619. casadi/include/highs/test/DevKkt.h +2 -4
  620. casadi/include/highs/test/KktCh2.h +2 -4
  621. casadi/include/highs/util/FactorTimer.h +2 -4
  622. casadi/include/highs/util/HFactor.h +2 -4
  623. casadi/include/highs/util/HFactorConst.h +2 -4
  624. casadi/include/highs/util/HFactorDebug.h +2 -4
  625. casadi/include/highs/util/HSet.h +3 -5
  626. casadi/include/highs/util/HVector.h +2 -4
  627. casadi/include/highs/util/HVectorBase.h +2 -4
  628. casadi/include/highs/util/HighsCDouble.h +2 -4
  629. casadi/include/highs/util/HighsComponent.h +2 -4
  630. casadi/include/highs/util/HighsDataStack.h +3 -5
  631. casadi/include/highs/util/HighsDisjointSets.h +8 -10
  632. casadi/include/highs/util/HighsHash.h +22 -7
  633. casadi/include/highs/util/HighsHashTree.h +25 -7
  634. casadi/include/highs/util/HighsInt.h +2 -4
  635. casadi/include/highs/util/HighsIntegers.h +2 -4
  636. casadi/include/highs/util/HighsLinearSumBounds.h +2 -4
  637. casadi/include/highs/util/HighsMatrixPic.h +2 -4
  638. casadi/include/highs/util/HighsMatrixSlice.h +2 -4
  639. casadi/include/highs/util/HighsMatrixUtils.h +2 -4
  640. casadi/include/highs/util/HighsRandom.h +2 -4
  641. casadi/include/highs/util/HighsRbTree.h +2 -4
  642. casadi/include/highs/util/HighsSort.h +2 -4
  643. casadi/include/highs/util/HighsSparseMatrix.h +11 -7
  644. casadi/include/highs/util/HighsSparseVectorSum.h +2 -4
  645. casadi/include/highs/util/HighsSplay.h +2 -4
  646. casadi/include/highs/util/HighsTimer.h +3 -4
  647. casadi/include/highs/util/HighsUtils.h +14 -4
  648. casadi/include/highs/util/stringutil.h +2 -4
  649. casadi/include/licenses/alpaqa-external/LICENSE +165 -0
  650. casadi/include/licenses/highs-external/LICENSE +1 -1
  651. casadi/include/licenses/sleqp-external/LICENSE +165 -0
  652. casadi/include/licenses/trlib-external/LICENSE +21 -0
  653. casadi/include/openblas/cblas.h +411 -0
  654. casadi/include/openblas/f77blas.h +796 -0
  655. casadi/include/openblas/lapack.h +22997 -0
  656. casadi/include/openblas/lapacke.h +12665 -0
  657. casadi/include/openblas/lapacke_config.h +119 -0
  658. casadi/include/openblas/lapacke_example_aux.h +9 -0
  659. casadi/include/openblas/lapacke_mangling.h +17 -0
  660. casadi/include/openblas/lapacke_utils.h +582 -0
  661. casadi/include/openblas/openblas/lapacke_mangling.h +17 -0
  662. casadi/include/openblas/openblas_config.h +140 -0
  663. casadi/include/qdldl/qdldl.h +169 -0
  664. casadi/include/qdldl/qdldl_types.h +23 -0
  665. casadi/include/s_blas.h +78 -0
  666. casadi/include/s_blas_64.h +73 -0
  667. casadi/include/sleqp/defs.h +58 -0
  668. casadi/include/sleqp/export.h +42 -0
  669. casadi/include/sleqp/pub_cmp.h +18 -0
  670. casadi/include/sleqp/pub_dyn.h +140 -0
  671. casadi/include/sleqp/pub_error.h +50 -0
  672. casadi/include/sleqp/pub_func.h +257 -0
  673. casadi/include/sleqp/pub_hess_struct.h +105 -0
  674. casadi/include/sleqp/pub_iterate.h +88 -0
  675. casadi/include/sleqp/pub_log.h +88 -0
  676. casadi/include/sleqp/pub_lsq.h +158 -0
  677. casadi/include/sleqp/pub_mem.h +52 -0
  678. casadi/include/sleqp/pub_problem.h +213 -0
  679. casadi/include/sleqp/pub_scale.h +150 -0
  680. casadi/include/sleqp/pub_settings.h +162 -0
  681. casadi/include/sleqp/pub_solver.h +155 -0
  682. casadi/include/sleqp/pub_types.h +230 -0
  683. casadi/include/sleqp/pub_working_set.h +135 -0
  684. casadi/include/sleqp/sparse/pub_mat.h +153 -0
  685. casadi/include/sleqp/sparse/pub_vec.h +336 -0
  686. casadi/include/sleqp.h +38 -0
  687. casadi/include/spral.h +13 -0
  688. casadi/include/spral_lsmr.h +57 -0
  689. casadi/include/spral_matrix_util.h +40 -0
  690. casadi/include/spral_random.h +26 -0
  691. casadi/include/spral_random_matrix.h +27 -0
  692. casadi/include/spral_rutherford_boeing.h +51 -0
  693. casadi/include/spral_scaling.h +139 -0
  694. casadi/include/spral_ssids.h +121 -0
  695. casadi/include/spral_ssmfe.h +268 -0
  696. casadi/include/trlib/trlib_eigen_inverse.h +118 -0
  697. casadi/include/trlib/trlib_krylov.h +493 -0
  698. casadi/include/trlib/trlib_leftmost.h +181 -0
  699. casadi/include/trlib/trlib_private.h +109 -0
  700. casadi/include/trlib/trlib_quadratic_zero.h +57 -0
  701. casadi/include/trlib/trlib_tri_factor.h +409 -0
  702. casadi/include/trlib/trlib_types.h +36 -0
  703. casadi/include/trlib.h +44 -0
  704. casadi/ipopt.lib +0 -0
  705. casadi/lapack.lib +0 -0
  706. casadi/lib/libtinyxml2.dll.a +0 -0
  707. casadi/libCbc-3.dll +0 -0
  708. casadi/libCbc.dll.a +0 -0
  709. casadi/libCbc.la +1 -1
  710. casadi/libCbcSolver-3.dll +0 -0
  711. casadi/libCbcSolver.dll.a +0 -0
  712. casadi/libCbcSolver.la +1 -1
  713. casadi/libCgl-1.dll +0 -0
  714. casadi/libCgl.dll.a +0 -0
  715. casadi/libCgl.la +1 -1
  716. casadi/libClp-1.dll +0 -0
  717. casadi/libClp.dll.a +0 -0
  718. casadi/libClp.la +1 -1
  719. casadi/libClpSolver-1.dll +0 -0
  720. casadi/libClpSolver.dll.a +0 -0
  721. casadi/libClpSolver.la +1 -1
  722. casadi/libCoinUtils-3.dll +0 -0
  723. casadi/libCoinUtils.dll.a +0 -0
  724. casadi/libCoinUtils.la +1 -1
  725. casadi/libFortranHighs.dll +0 -0
  726. casadi/libFortranHighs.dll.a +0 -0
  727. casadi/libOsi-1.dll +0 -0
  728. casadi/libOsi.dll.a +0 -0
  729. casadi/libOsi.la +1 -1
  730. casadi/libOsiCbc-3.dll +0 -0
  731. casadi/libOsiCbc.dll.a +0 -0
  732. casadi/libOsiCbc.la +1 -1
  733. casadi/libOsiClp-1.dll +0 -0
  734. casadi/libOsiClp.dll.a +0 -0
  735. casadi/libOsiClp.la +1 -1
  736. casadi/libOsiCommonTests-1.dll +0 -0
  737. casadi/libOsiCommonTests.dll.a +0 -0
  738. casadi/libOsiCommonTests.la +1 -1
  739. casadi/libalpaqa.dll +0 -0
  740. casadi/libalpaqa.dll.a +0 -0
  741. casadi/libblasfeo.dll +0 -0
  742. casadi/libblasfeo.dll.a +0 -0
  743. casadi/libbonmin-4.dll +0 -0
  744. casadi/libbonmin.dll.a +0 -0
  745. casadi/libbonmin.la +1 -1
  746. casadi/libcasadi-tp-openblas.dll +0 -0
  747. casadi/libcasadi-tp-openblas.dll.a +0 -0
  748. casadi/libcasadi.dll +0 -0
  749. casadi/libcasadi.dll.a +0 -0
  750. casadi/libcasadi_conic_cbc.dll +0 -0
  751. casadi/libcasadi_conic_cbc.dll.a +0 -0
  752. casadi/libcasadi_conic_clp.dll +0 -0
  753. casadi/libcasadi_conic_clp.dll.a +0 -0
  754. casadi/libcasadi_conic_cplex.dll +0 -0
  755. casadi/libcasadi_conic_cplex.dll.a +0 -0
  756. casadi/libcasadi_conic_gurobi.dll +0 -0
  757. casadi/libcasadi_conic_gurobi.dll.a +0 -0
  758. casadi/libcasadi_conic_highs.dll +0 -0
  759. casadi/libcasadi_conic_highs.dll.a +0 -0
  760. casadi/libcasadi_conic_hpipm.dll +0 -0
  761. casadi/libcasadi_conic_hpipm.dll.a +0 -0
  762. casadi/libcasadi_conic_ipqp.dll +0 -0
  763. casadi/libcasadi_conic_ipqp.dll.a +0 -0
  764. casadi/libcasadi_conic_nlpsol.dll +0 -0
  765. casadi/libcasadi_conic_nlpsol.dll.a +0 -0
  766. casadi/libcasadi_conic_osqp.dll +0 -0
  767. casadi/libcasadi_conic_osqp.dll.a +0 -0
  768. casadi/libcasadi_conic_proxqp.dll +0 -0
  769. casadi/libcasadi_conic_proxqp.dll.a +0 -0
  770. casadi/libcasadi_conic_qpoases.dll +0 -0
  771. casadi/libcasadi_conic_qpoases.dll.a +0 -0
  772. casadi/libcasadi_conic_qrqp.dll +0 -0
  773. casadi/libcasadi_conic_qrqp.dll.a +0 -0
  774. casadi/libcasadi_conic_superscs.dll +0 -0
  775. casadi/libcasadi_conic_superscs.dll.a +0 -0
  776. casadi/libcasadi_importer_shell.dll +0 -0
  777. casadi/libcasadi_importer_shell.dll.a +0 -0
  778. casadi/libcasadi_integrator_collocation.dll +0 -0
  779. casadi/libcasadi_integrator_collocation.dll.a +0 -0
  780. casadi/libcasadi_integrator_cvodes.dll +0 -0
  781. casadi/libcasadi_integrator_cvodes.dll.a +0 -0
  782. casadi/libcasadi_integrator_idas.dll +0 -0
  783. casadi/libcasadi_integrator_idas.dll.a +0 -0
  784. casadi/libcasadi_integrator_rk.dll +0 -0
  785. casadi/libcasadi_integrator_rk.dll.a +0 -0
  786. casadi/libcasadi_interpolant_bspline.dll +0 -0
  787. casadi/libcasadi_interpolant_bspline.dll.a +0 -0
  788. casadi/libcasadi_interpolant_linear.dll +0 -0
  789. casadi/libcasadi_interpolant_linear.dll.a +0 -0
  790. casadi/libcasadi_linsol_csparse.dll +0 -0
  791. casadi/libcasadi_linsol_csparse.dll.a +0 -0
  792. casadi/libcasadi_linsol_csparsecholesky.dll +0 -0
  793. casadi/libcasadi_linsol_csparsecholesky.dll.a +0 -0
  794. casadi/libcasadi_linsol_lapacklu.dll +0 -0
  795. casadi/libcasadi_linsol_lapacklu.dll.a +0 -0
  796. casadi/libcasadi_linsol_lapackqr.dll +0 -0
  797. casadi/libcasadi_linsol_lapackqr.dll.a +0 -0
  798. casadi/libcasadi_linsol_ldl.dll +0 -0
  799. casadi/libcasadi_linsol_ldl.dll.a +0 -0
  800. casadi/libcasadi_linsol_lsqr.dll +0 -0
  801. casadi/libcasadi_linsol_lsqr.dll.a +0 -0
  802. casadi/libcasadi_linsol_ma27.dll +0 -0
  803. casadi/libcasadi_linsol_ma27.dll.a +0 -0
  804. casadi/libcasadi_linsol_mumps.dll +0 -0
  805. casadi/libcasadi_linsol_mumps.dll.a +0 -0
  806. casadi/libcasadi_linsol_qr.dll +0 -0
  807. casadi/libcasadi_linsol_qr.dll.a +0 -0
  808. casadi/libcasadi_linsol_symbolicqr.dll +0 -0
  809. casadi/libcasadi_linsol_symbolicqr.dll.a +0 -0
  810. casadi/libcasadi_linsol_tridiag.dll +0 -0
  811. casadi/libcasadi_linsol_tridiag.dll.a +0 -0
  812. casadi/libcasadi_nlpsol_alpaqa.dll +0 -0
  813. casadi/libcasadi_nlpsol_alpaqa.dll.a +0 -0
  814. casadi/libcasadi_nlpsol_ampl.dll +0 -0
  815. casadi/libcasadi_nlpsol_ampl.dll.a +0 -0
  816. casadi/libcasadi_nlpsol_blocksqp.dll +0 -0
  817. casadi/libcasadi_nlpsol_blocksqp.dll.a +0 -0
  818. casadi/libcasadi_nlpsol_bonmin.dll +0 -0
  819. casadi/libcasadi_nlpsol_bonmin.dll.a +0 -0
  820. casadi/libcasadi_nlpsol_feasiblesqpmethod.dll +0 -0
  821. casadi/libcasadi_nlpsol_feasiblesqpmethod.dll.a +0 -0
  822. casadi/libcasadi_nlpsol_ipopt.dll +0 -0
  823. casadi/libcasadi_nlpsol_ipopt.dll.a +0 -0
  824. casadi/libcasadi_nlpsol_knitro.dll +0 -0
  825. casadi/libcasadi_nlpsol_knitro.dll.a +0 -0
  826. casadi/libcasadi_nlpsol_qrsqp.dll +0 -0
  827. casadi/libcasadi_nlpsol_qrsqp.dll.a +0 -0
  828. casadi/libcasadi_nlpsol_scpgen.dll +0 -0
  829. casadi/libcasadi_nlpsol_scpgen.dll.a +0 -0
  830. casadi/libcasadi_nlpsol_sleqp.dll +0 -0
  831. casadi/libcasadi_nlpsol_sleqp.dll.a +0 -0
  832. casadi/libcasadi_nlpsol_snopt.dll +0 -0
  833. casadi/libcasadi_nlpsol_snopt.dll.a +0 -0
  834. casadi/libcasadi_nlpsol_sqpmethod.dll +0 -0
  835. casadi/libcasadi_nlpsol_sqpmethod.dll.a +0 -0
  836. casadi/libcasadi_nlpsol_worhp.dll +0 -0
  837. casadi/libcasadi_nlpsol_worhp.dll.a +0 -0
  838. casadi/libcasadi_rootfinder_fast_newton.dll +0 -0
  839. casadi/libcasadi_rootfinder_fast_newton.dll.a +0 -0
  840. casadi/libcasadi_rootfinder_kinsol.dll +0 -0
  841. casadi/libcasadi_rootfinder_kinsol.dll.a +0 -0
  842. casadi/libcasadi_rootfinder_newton.dll +0 -0
  843. casadi/libcasadi_rootfinder_newton.dll.a +0 -0
  844. casadi/libcasadi_rootfinder_nlpsol.dll +0 -0
  845. casadi/libcasadi_rootfinder_nlpsol.dll.a +0 -0
  846. casadi/libcasadi_sundials_common.dll +0 -0
  847. casadi/libcasadi_sundials_common.dll.a +0 -0
  848. casadi/libcasadi_xmlfile_tinyxml.dll +0 -0
  849. casadi/libcasadi_xmlfile_tinyxml.dll.a +0 -0
  850. casadi/libcoinmetis-2.dll +0 -0
  851. casadi/libcoinmetis.dll.a +0 -0
  852. casadi/libcoinmumps-3.dll +0 -0
  853. casadi/libcoinmumps.dll.a +0 -0
  854. casadi/libcplex_adaptor.dll +0 -0
  855. casadi/libgurobi_adaptor.dll +0 -0
  856. casadi/libhighs.dll +0 -0
  857. casadi/libhighs.dll.a +0 -0
  858. casadi/libhpipm.dll +0 -0
  859. casadi/libhpipm.dll.a +0 -0
  860. casadi/libipopt-3.dll +0 -0
  861. casadi/libipopt.dll.a +0 -0
  862. casadi/libosqp.dll +0 -0
  863. casadi/libosqp.dll.a +0 -0
  864. casadi/libqdldl.dll +0 -0
  865. casadi/libqdldl.dll.a +0 -0
  866. casadi/libsipopt-3.dll +0 -0
  867. casadi/libsipopt.dll.a +0 -0
  868. casadi/libsleqp.dll +0 -0
  869. casadi/libsleqp.dll.a +0 -0
  870. casadi/libtinyxml2.dll +0 -0
  871. casadi/libtrlib.dll +0 -0
  872. casadi/libtrlib.dll.a +0 -0
  873. casadi/osqp.lib +0 -0
  874. casadi/pkgconfig/blas.pc +11 -0
  875. casadi/pkgconfig/bonmin.pc +1 -1
  876. casadi/pkgconfig/casadi.pc +1 -1
  877. casadi/pkgconfig/cbc.pc +2 -2
  878. casadi/pkgconfig/cgl.pc +2 -2
  879. casadi/pkgconfig/clp.pc +1 -1
  880. casadi/pkgconfig/coinutils.pc +1 -1
  881. casadi/pkgconfig/highs.pc +3 -3
  882. casadi/pkgconfig/lapack.pc +11 -0
  883. casadi/pkgconfig/openblas.pc +1 -1
  884. casadi/pkgconfig/osi-cbc.pc +1 -1
  885. casadi/pkgconfig/osi-clp.pc +1 -1
  886. casadi/pkgconfig/osi-unittests.pc +1 -1
  887. casadi/pkgconfig/osi.pc +1 -1
  888. casadi/pkgconfig/sleqp.pc +10 -0
  889. casadi/sleqp.lib +0 -0
  890. casadi/spral_ssids.exe +0 -0
  891. {casadi-3.6.3.dist-info → casadi-3.6.5.dist-info}/METADATA +11 -3
  892. {casadi-3.6.3.dist-info → casadi-3.6.5.dist-info}/RECORD +893 -325
  893. casadi/include/highs/interfaces/OsiHiGHSSolverInterface.hpp +0 -415
  894. casadi/libOsiHighs.dll +0 -0
  895. casadi/libOsiHighs.dll.a +0 -0
  896. casadi/pkgconfig/osi-highs.pc +0 -11
  897. {casadi-3.6.3.dist-info → casadi-3.6.5.dist-info}/WHEEL +0 -0
@@ -0,0 +1,162 @@
1
+ #ifndef SLEQP_PUB_SETTINGS_H
2
+ #define SLEQP_PUB_SETTINGS_H
3
+
4
+ /**
5
+ * @file pub_settings.h
6
+ * @brief Definition of settings.
7
+ **/
8
+
9
+ #include "sleqp/export.h"
10
+ #include "sleqp/pub_types.h"
11
+
12
+ typedef enum
13
+ {
14
+ SLEQP_SETTINGS_ENUM_DERIV_CHECK = 0,
15
+ SLEQP_SETTINGS_ENUM_HESS_EVAL,
16
+ SLEQP_SETTINGS_ENUM_DUAL_ESTIMATION_TYPE,
17
+ SLEQP_SETTINGS_ENUM_FLOAT_WARNING_FLAGS,
18
+ SLEQP_SETTINGS_ENUM_FLOAT_ERROR_FLAGS,
19
+ SLEQP_SETTINGS_ENUM_BFGS_SIZING,
20
+ SLEQP_SETTINGS_ENUM_TR_SOLVER,
21
+ SLEQP_SETTINGS_ENUM_POLISHING_TYPE,
22
+ SLEQP_SETTINGS_ENUM_STEP_RULE,
23
+ SLEQP_SETTINGS_ENUM_LINESEARCH,
24
+ SLEQP_SETTINGS_ENUM_PARAMETRIC_CAUCHY,
25
+ SLEQP_SETTINGS_ENUM_INITIAL_TR_CHOICE,
26
+ SLEQP_SETTINGS_ENUM_AUG_JAC_METHOD,
27
+ SLEQP_NUM_ENUM_SETTINGS
28
+ } SLEQP_SETTINGS_ENUM;
29
+
30
+ typedef enum
31
+ {
32
+ SLEQP_SETTINGS_INT_NUM_QUASI_NEWTON_ITERATES = 0,
33
+ SLEQP_SETTINGS_INT_MAX_NEWTON_ITERATIONS,
34
+ SLEQP_SETTINGS_INT_NUM_THREADS,
35
+ SLEQP_NUM_INT_SETTINGS
36
+ } SLEQP_SETTINGS_INT;
37
+
38
+ typedef enum
39
+ {
40
+ SLEQP_SETTINGS_BOOL_PERFORM_NEWTON_STEP = 0,
41
+ SLEQP_SETTINGS_BOOL_GLOBAL_PENALTY_RESETS,
42
+ SLEQP_SETTINGS_BOOL_PERFORM_SOC,
43
+ SLEQP_SETTINGS_BOOL_USE_QUADRATIC_MODEL,
44
+ SLEQP_SETTINGS_BOOL_ALWAYS_WARM_START_LP,
45
+ SLEQP_SETTINGS_BOOL_ENABLE_RESTORATION_PHASE,
46
+ SLEQP_SETTINGS_BOOL_ENABLE_PREPROCESSOR,
47
+ SLEQP_SETTINGS_BOOL_LP_RESOLVES,
48
+ SLEQP_NUM_BOOL_SETTINGS
49
+ } SLEQP_SETTINGS_BOOL;
50
+
51
+ typedef enum
52
+ {
53
+ SLEQP_SETTINGS_REAL_ZERO_EPS = 0,
54
+ SLEQP_SETTINGS_REAL_EPS,
55
+ SLEQP_SETTINGS_REAL_OBJ_LOWER,
56
+ SLEQP_SETTINGS_REAL_DERIV_PERTURBATION,
57
+ SLEQP_SETTINGS_REAL_DERIV_TOL,
58
+ SLEQP_SETTINGS_REAL_CAUCHY_TAU,
59
+ SLEQP_SETTINGS_REAL_CAUCHY_ETA,
60
+ SLEQP_SETTINGS_REAL_LINESEARCH_TAU,
61
+ SLEQP_SETTINGS_REAL_LINESEARCH_ETA,
62
+ SLEQP_SETTINGS_REAL_LINESEARCH_CUTOFF,
63
+ SLEQP_SETTINGS_REAL_FEAS_TOL,
64
+ SLEQP_SETTINGS_REAL_SLACK_TOL,
65
+ SLEQP_SETTINGS_REAL_STAT_TOL,
66
+ SLEQP_SETTINGS_REAL_ACCEPTED_REDUCTION,
67
+ SLEQP_SETTINGS_REAL_DEADPOINT_BOUND,
68
+ SLEQP_NUM_REAL_SETTINGS
69
+ } SLEQP_SETTINGS_REAL;
70
+
71
+ typedef struct SleqpSettings SleqpSettings;
72
+
73
+ SLEQP_EXPORT const char*
74
+ sleqp_settings_enum_name(SLEQP_SETTINGS_ENUM settings);
75
+
76
+ SLEQP_EXPORT const char*
77
+ sleqp_settings_enum_desc(SLEQP_SETTINGS_ENUM settings);
78
+
79
+ SLEQP_EXPORT const char*
80
+ sleqp_settings_int_name(SLEQP_SETTINGS_INT settings);
81
+
82
+ SLEQP_EXPORT const char*
83
+ sleqp_settings_int_desc(SLEQP_SETTINGS_INT settings);
84
+
85
+ SLEQP_EXPORT const char*
86
+ sleqp_settings_bool_name(SLEQP_SETTINGS_BOOL settings);
87
+
88
+ SLEQP_EXPORT const char*
89
+ sleqp_settings_bool_desc(SLEQP_SETTINGS_BOOL settings);
90
+
91
+ SLEQP_EXPORT SLEQP_WARNUNUSED SLEQP_RETCODE
92
+ sleqp_settings_create(SleqpSettings** star);
93
+
94
+ SLEQP_EXPORT const char*
95
+ sleqp_settings_real_name(SLEQP_SETTINGS_REAL param);
96
+
97
+ SLEQP_EXPORT const char*
98
+ sleqp_settings_real_desc(SLEQP_SETTINGS_REAL param);
99
+
100
+ SLEQP_EXPORT double
101
+ sleqp_settings_real_value(const SleqpSettings* settings,
102
+ SLEQP_SETTINGS_REAL param);
103
+
104
+ SLEQP_EXPORT SLEQP_WARNUNUSED SLEQP_RETCODE
105
+ sleqp_settings_set_real_value(SleqpSettings* setting,
106
+ SLEQP_SETTINGS_REAL param,
107
+ double value);
108
+
109
+ SLEQP_EXPORT
110
+ int
111
+ sleqp_settings_enum_value(const SleqpSettings* settings,
112
+ SLEQP_SETTINGS_ENUM option);
113
+
114
+ SLEQP_EXPORT SLEQP_WARNUNUSED SLEQP_RETCODE
115
+ sleqp_settings_set_enum_value(SleqpSettings* settings,
116
+ SLEQP_SETTINGS_ENUM option,
117
+ int value);
118
+
119
+ SLEQP_EXPORT SLEQP_WARNUNUSED SLEQP_RETCODE
120
+ sleqp_settings_set_enum_value_from_string(SleqpSettings* settings,
121
+ SLEQP_SETTINGS_ENUM option,
122
+ const char* value);
123
+
124
+ SLEQP_EXPORT
125
+ int
126
+ sleqp_settings_int_value(const SleqpSettings* settings,
127
+ SLEQP_SETTINGS_INT option);
128
+
129
+ SLEQP_EXPORT SLEQP_WARNUNUSED SLEQP_RETCODE
130
+ sleqp_settings_set_int_value(SleqpSettings* settings,
131
+ SLEQP_SETTINGS_INT option,
132
+ int value);
133
+
134
+ SLEQP_EXPORT
135
+ bool
136
+ sleqp_settings_bool_value(const SleqpSettings* settings,
137
+ SLEQP_SETTINGS_BOOL option);
138
+
139
+ SLEQP_EXPORT SLEQP_WARNUNUSED SLEQP_RETCODE
140
+ sleqp_settings_set_bool_value(SleqpSettings* settings,
141
+ SLEQP_SETTINGS_BOOL option,
142
+ bool value);
143
+
144
+ /**
145
+ * Read settings from file on the disk and
146
+ * update relevant parts of the given settings
147
+ *
148
+ * @param[in,out] settings Current settings
149
+ * @param[in] settings_filename Name of settings file
150
+ *
151
+ **/
152
+ SLEQP_EXPORT SLEQP_WARNUNUSED SLEQP_RETCODE
153
+ sleqp_settings_read_file(SleqpSettings* settings,
154
+ const char* settings_filename);
155
+
156
+ SLEQP_EXPORT SLEQP_WARNUNUSED SLEQP_RETCODE
157
+ sleqp_settings_capture(SleqpSettings* settings);
158
+
159
+ SLEQP_EXPORT SLEQP_WARNUNUSED SLEQP_RETCODE
160
+ sleqp_settings_release(SleqpSettings** star);
161
+
162
+ #endif /* SLEQP_PUB_SETTINGS_H */
@@ -0,0 +1,155 @@
1
+ #ifndef SLEQP_PUB_SOLVER_H
2
+ #define SLEQP_PUB_SOLVER_H
3
+
4
+ /**
5
+ * @file pub_solver.h
6
+ * @brief Definition of the solver structure.
7
+ **/
8
+
9
+ #include "sleqp/export.h"
10
+ #include "sleqp/pub_iterate.h"
11
+ #include "sleqp/pub_problem.h"
12
+ #include "sleqp/pub_scale.h"
13
+ #include "sleqp/pub_settings.h"
14
+
15
+ typedef struct SleqpSolver SleqpSolver;
16
+
17
+ typedef SLEQP_RETCODE (*SLEQP_ACCEPTED_ITERATE)(SleqpSolver* solver,
18
+ SleqpIterate* iterate,
19
+ void* callback_data);
20
+
21
+ typedef SLEQP_RETCODE (*SLEQP_PERFORMED_ITERATION)(SleqpSolver* solver,
22
+ void* callback_data);
23
+
24
+ typedef SLEQP_RETCODE (*SLEQP_FINISHED)(SleqpSolver* solver,
25
+ SleqpIterate* iterate,
26
+ void* callback_data);
27
+
28
+ typedef struct SleqpSolver SleqpSolver;
29
+
30
+ /**
31
+ * Creates a solver
32
+ *
33
+ * @param[out] star A pointer to the solver to be created
34
+ * @param[in] problem The underlying problem
35
+ * @param[in] settings The solver settings
36
+ * @param[in] primal The initial solution
37
+ * @param[in] scaling_data The scaling to be used (may be `NULL`)
38
+ **/
39
+ SLEQP_EXPORT SLEQP_WARNUNUSED SLEQP_RETCODE
40
+ sleqp_solver_create(SleqpSolver** star,
41
+ SleqpProblem* problem,
42
+ SleqpVec* primal,
43
+ SleqpScaling* scaling_data);
44
+
45
+ /**
46
+ * Solves the problem by performing iteration starting from the current solution
47
+ *
48
+ * @param[in] solver The solver
49
+ * @param[in] num_iterations The number of iterations to be performed, or
50
+ *@ref SLEQP_NONE
51
+ * @param[in] time_limit A time limit in seconds, or @ref SLEQP_NONE
52
+ **/
53
+ SLEQP_EXPORT SLEQP_WARNUNUSED SLEQP_RETCODE
54
+ sleqp_solver_solve(SleqpSolver* solver,
55
+ int max_num_iterations,
56
+ double time_limit);
57
+
58
+ SLEQP_EXPORT SLEQP_WARNUNUSED SLEQP_RETCODE
59
+ sleqp_solver_real_state(const SleqpSolver* solver,
60
+ SLEQP_SOLVER_STATE_REAL state,
61
+ double* value);
62
+
63
+ SLEQP_EXPORT SLEQP_WARNUNUSED SLEQP_RETCODE
64
+ sleqp_solver_int_state(const SleqpSolver* solver,
65
+ SLEQP_SOLVER_STATE_INT state,
66
+ int* value);
67
+
68
+ SLEQP_EXPORT SLEQP_WARNUNUSED SLEQP_RETCODE
69
+ sleqp_solver_vec_state(const SleqpSolver* solver,
70
+ SLEQP_SOLVER_STATE_VEC value,
71
+ SleqpVec* result);
72
+
73
+ SLEQP_EXPORT
74
+ const char*
75
+ sleqp_solver_info(const SleqpSolver* solver);
76
+
77
+ /**
78
+ * Returns the status of the last call to @ref sleqp_solver_solve
79
+ *
80
+ * @param[in] solver The solver
81
+ *
82
+ **/
83
+ SLEQP_EXPORT SLEQP_STATUS
84
+ sleqp_solver_status(const SleqpSolver* solver);
85
+
86
+ /**
87
+ * Resets the solvers internal state
88
+ **/
89
+ SLEQP_EXPORT SLEQP_WARNUNUSED SLEQP_RETCODE
90
+ sleqp_solver_reset(SleqpSolver* solver);
91
+
92
+ /**
93
+ * Aborts the solver after the next iteration. To be used from callback
94
+ *functions
95
+ **/
96
+ SLEQP_EXPORT SLEQP_WARNUNUSED SLEQP_RETCODE
97
+ sleqp_solver_abort(SleqpSolver* solver);
98
+
99
+ /**
100
+ * Returns the current iterate of the solver
101
+ *
102
+ * @param[in] solver The solver
103
+ * @param[out] iterate A pointer to the current iterate
104
+ *
105
+ **/
106
+ SLEQP_EXPORT SLEQP_WARNUNUSED SLEQP_RETCODE
107
+ sleqp_solver_solution(SleqpSolver* solver, SleqpIterate** iterate);
108
+
109
+ SLEQP_EXPORT SLEQP_WARNUNUSED SLEQP_RETCODE
110
+ sleqp_solver_violated_constraints(SleqpSolver* solver,
111
+ SleqpIterate* iterate,
112
+ int* violated_constraints,
113
+ int* num_violated_constraints);
114
+
115
+ /**
116
+ * Returns the number of iterations performed during the last call to @ref
117
+ *sleqp_solver_solve
118
+ *
119
+ * @param[in] solver The solver
120
+ *
121
+ **/
122
+ SLEQP_EXPORT
123
+ int
124
+ sleqp_solver_iterations(const SleqpSolver* solver);
125
+
126
+ /**
127
+ * Returns the number of seconds elapsed during the last call to @ref
128
+ *sleqp_solver_solve
129
+ *
130
+ * @param[in] solver The solver
131
+ *
132
+ **/
133
+ SLEQP_EXPORT
134
+ double
135
+ sleqp_solver_elapsed_seconds(const SleqpSolver* solver);
136
+
137
+ SLEQP_EXPORT SLEQP_WARNUNUSED SLEQP_RETCODE
138
+ sleqp_solver_add_callback(SleqpSolver* solver,
139
+ SLEQP_SOLVER_EVENT solver_event,
140
+ void* callback_func,
141
+ void* callback_data);
142
+
143
+ SLEQP_EXPORT SLEQP_WARNUNUSED SLEQP_RETCODE
144
+ sleqp_solver_remove_callback(SleqpSolver* solver,
145
+ SLEQP_SOLVER_EVENT solver_event,
146
+ void* callback_func,
147
+ void* callback_data);
148
+
149
+ SLEQP_EXPORT SLEQP_WARNUNUSED SLEQP_RETCODE
150
+ sleqp_solver_capture(SleqpSolver* solver);
151
+
152
+ SLEQP_EXPORT SLEQP_WARNUNUSED SLEQP_RETCODE
153
+ sleqp_solver_release(SleqpSolver** star);
154
+
155
+ #endif /* SLEQP_PUB_SOLVER_H */
@@ -0,0 +1,230 @@
1
+ #ifndef SLEQP_PUB_TYPES_H
2
+ #define SLEQP_PUB_TYPES_H
3
+
4
+ /**
5
+ * @file pub_types.h
6
+ * @brief Definition of basic types.
7
+ **/
8
+
9
+ #include <stdbool.h>
10
+ #include <stddef.h>
11
+ #include <stdio.h>
12
+
13
+ #include "sleqp/pub_log.h"
14
+
15
+ #ifdef SLEQP_HAVE_ATTRIBUTE_WARN_UNUSED_RESULT
16
+ #define SLEQP_WARNUNUSED __attribute__((warn_unused_result))
17
+ #else
18
+ #define SLEQP_WARNUNUSED
19
+ #endif
20
+
21
+ #ifdef SLEQP_HAVE_ATTRIBUTE_NODISCARD
22
+ #define SLEQP_NODISCARD(x) [[nodiscard(x)]]
23
+ #else
24
+ #define SLEQP_NODISCARD(x)
25
+ #endif
26
+
27
+ typedef enum SLEQP_NODISCARD("error indicator")
28
+ {
29
+ SLEQP_ERROR = -1,
30
+ SLEQP_OKAY = 0,
31
+ SLEQP_ABORT_TIME = 1,
32
+ } SLEQP_RETCODE;
33
+
34
+ typedef enum
35
+ {
36
+ SLEQP_FAILED_ASSERTION,
37
+ SLEQP_NOMEM,
38
+ SLEQP_INTERNAL_ERROR,
39
+ SLEQP_FUNC_EVAL_ERROR,
40
+ SLEQP_CALLBACK_ERROR,
41
+ SLEQP_MATH_ERROR,
42
+ SLEQP_INVALID_DERIV,
43
+ SLEQP_ILLEGAL_ARGUMENT
44
+ } SLEQP_ERROR_TYPE;
45
+
46
+ /**
47
+ * The state of a variable or constraint with respect
48
+ * to an active set
49
+ **/
50
+ typedef enum
51
+ {
52
+ /** The variable / constraint is inactive **/
53
+ SLEQP_INACTIVE = 0,
54
+ /** The variable / constraint is active at its lower bound **/
55
+ SLEQP_ACTIVE_LOWER = (1 << 0),
56
+ /** The variable / constraint is active at its upper bound **/
57
+ SLEQP_ACTIVE_UPPER = (1 << 1),
58
+ /** The variable / constraint is active at both of its bounds **/
59
+ SLEQP_ACTIVE_BOTH = (SLEQP_ACTIVE_LOWER | SLEQP_ACTIVE_UPPER),
60
+ } SLEQP_ACTIVE_STATE;
61
+
62
+ typedef enum
63
+ {
64
+ SLEQP_STATUS_UNKNOWN = 0,
65
+ SLEQP_STATUS_RUNNING,
66
+ SLEQP_STATUS_OPTIMAL,
67
+ SLEQP_STATUS_INFEASIBLE,
68
+ SLEQP_STATUS_UNBOUNDED,
69
+ SLEQP_STATUS_ABORT_DEADPOINT,
70
+ SLEQP_STATUS_ABORT_ITER,
71
+ SLEQP_STATUS_ABORT_MANUAL,
72
+ SLEQP_STATUS_ABORT_TIME
73
+ } SLEQP_STATUS;
74
+
75
+ #define SLEQP_CALL(x) \
76
+ do \
77
+ { \
78
+ const SLEQP_RETCODE _status = (x); \
79
+ if (_status < SLEQP_OKAY) \
80
+ { \
81
+ sleqp_log_error("Error in function %s", __PRETTY_FUNCTION__); \
82
+ return _status; \
83
+ } \
84
+ else if (_status != SLEQP_OKAY) \
85
+ { \
86
+ return _status; \
87
+ } \
88
+ } while (0)
89
+
90
+ typedef enum
91
+ {
92
+ SLEQP_DERIV_CHECK_SKIP = 0,
93
+ SLEQP_DERIV_CHECK_FIRST_OBJ = (1 << 0),
94
+ SLEQP_DERIV_CHECK_FIRST_CONS = (1 << 1),
95
+ SLEQP_DERIV_CHECK_FIRST
96
+ = (SLEQP_DERIV_CHECK_FIRST_OBJ | SLEQP_DERIV_CHECK_FIRST_CONS),
97
+ SLEQP_DERIV_CHECK_SECOND_SIMPLE = (1 << 2),
98
+ SLEQP_DERIV_CHECK_SECOND_OBJ = (1 << 3),
99
+ SLEQP_DERIV_CHECK_SECOND_CONS = (1 << 4),
100
+ SLEQP_DERIV_CHECK_SECOND_EXHAUSTIVE
101
+ = (SLEQP_DERIV_CHECK_SECOND_OBJ | SLEQP_DERIV_CHECK_SECOND_CONS),
102
+ } SLEQP_DERIV_CHECK;
103
+
104
+ typedef enum
105
+ {
106
+ SLEQP_HESS_EVAL_EXACT = 0,
107
+ SLEQP_HESS_EVAL_SR1,
108
+ SLEQP_HESS_EVAL_SIMPLE_BFGS,
109
+ SLEQP_HESS_EVAL_DAMPED_BFGS,
110
+ } SLEQP_HESS_EVAL;
111
+
112
+ typedef enum
113
+ {
114
+ SLEQP_BFGS_SIZING_NONE = 0, // No sizing
115
+ SLEQP_BFGS_SIZING_CENTERED_OL, // Centered Oren–Luenberger
116
+ } SLEQP_BFGS_SIZING;
117
+
118
+ typedef enum
119
+ {
120
+ SLEQP_STEPTYPE_NONE = 0,
121
+ SLEQP_STEPTYPE_ACCEPTED,
122
+ SLEQP_STEPTYPE_ACCEPTED_FULL,
123
+ SLEQP_STEPTYPE_ACCEPTED_SOC,
124
+ SLEQP_STEPTYPE_REJECTED
125
+ } SLEQP_STEPTYPE;
126
+
127
+ typedef enum
128
+ {
129
+ SLEQP_DUAL_ESTIMATION_TYPE_LP,
130
+ SLEQP_DUAL_ESTIMATION_TYPE_LSQ,
131
+ SLEQP_DUAL_ESTIMATION_TYPE_MIXED,
132
+ } SLEQP_DUAL_ESTIMATION_TYPE;
133
+
134
+ typedef enum
135
+ {
136
+ SLEQP_TR_SOLVER_TRLIB = 0,
137
+ SLEQP_TR_SOLVER_CG,
138
+ SLEQP_TR_SOLVER_LSQR,
139
+ SLEQP_TR_SOLVER_AUTO
140
+ } SLEQP_TR_SOLVER;
141
+
142
+ typedef enum
143
+ {
144
+ SLEQP_POLISHING_NONE = 0,
145
+ SLEQP_POLISHING_ZERO_DUAL,
146
+ SLEQP_POLISHING_INACTIVE
147
+ } SLEQP_POLISHING_TYPE;
148
+
149
+ typedef enum
150
+ {
151
+ SLEQP_PARAMETRIC_CAUCHY_DISABLED = 0,
152
+ SLEQP_PARAMETRIC_CAUCHY_COARSE,
153
+ SLEQP_PARAMETRIC_CAUCHY_FINE
154
+ } SLEQP_PARAMETRIC_CAUCHY;
155
+
156
+ typedef enum
157
+ {
158
+ SLEQP_INITIAL_TR_CHOICE_NARROW,
159
+ SLEQP_INITIAL_TR_CHOICE_WIDE
160
+ } SLEQP_INITIAL_TR_CHOICE;
161
+
162
+ typedef enum
163
+ {
164
+ SLEQP_LINESEARCH_EXACT,
165
+ SLEQP_LINESEARCH_APPROX,
166
+ } SLEQP_LINESEARCH;
167
+
168
+ typedef enum
169
+ {
170
+ SLEQP_SOLVER_EVENT_ACCEPTED_ITERATE = 0,
171
+ SLEQP_SOLVER_EVENT_PERFORMED_ITERATION,
172
+ SLEQP_SOLVER_EVENT_FINISHED,
173
+ SLEQP_SOLVER_NUM_EVENTS
174
+ } SLEQP_SOLVER_EVENT;
175
+
176
+ typedef enum
177
+ {
178
+ SLEQP_PREPROCESSING_RESULT_SUCCESS,
179
+ SLEQP_PREPROCESSING_RESULT_FAILURE,
180
+ SLEQP_PREPROCESSING_RESULT_INFEASIBLE
181
+ } SLEQP_PREPROCESSING_RESULT;
182
+
183
+ typedef enum
184
+ {
185
+ SLEQP_STEP_RULE_DIRECT,
186
+ SLEQP_STEP_RULE_WINDOW,
187
+ SLEQP_STEP_RULE_MINSTEP
188
+ } SLEQP_STEP_RULE;
189
+
190
+ typedef enum
191
+ {
192
+ SLEQP_AUG_JAC_AUTO,
193
+ SLEQP_AUG_JAC_STANDARD,
194
+ SLEQP_AUG_JAC_REDUCED,
195
+ SLEQP_AUG_JAC_DIRECT
196
+ } SLEQP_AUG_JAC_METHOD;
197
+
198
+ typedef enum
199
+ {
200
+ SLEQP_SOLVER_STATE_REAL_TRUST_RADIUS,
201
+ SLEQP_SOLVER_STATE_REAL_LP_TRUST_RADIUS,
202
+ SLEQP_SOLVER_STATE_REAL_SCALED_OBJ_VAL,
203
+ SLEQP_SOLVER_STATE_REAL_SCALED_MERIT_VAL,
204
+ SLEQP_SOLVER_STATE_REAL_SCALED_FEAS_RES,
205
+ SLEQP_SOLVER_STATE_REAL_SCALED_STAT_RES,
206
+ SLEQP_SOLVER_STATE_REAL_SCALED_SLACK_RES,
207
+ SLEQP_SOLVER_STATE_REAL_PENALTY_PARAM,
208
+ SLEQP_SOLVER_STATE_REAL_MIN_RAYLEIGH,
209
+ SLEQP_SOLVER_STATE_REAL_MAX_RAYLEIGH,
210
+ } SLEQP_SOLVER_STATE_REAL;
211
+
212
+ typedef enum
213
+ {
214
+ SLEQP_SOLVER_STATE_INT_LAST_STEP_ON_BDRY,
215
+ SLEQP_SOLVER_STATE_INT_ITERATION,
216
+ SLEQP_SOLVER_STATE_INT_LAST_STEP_TYPE,
217
+ } SLEQP_SOLVER_STATE_INT;
218
+
219
+ typedef enum
220
+ {
221
+ SLEQP_SOLVER_STATE_VEC_SCALED_STAT_RESIDUALS,
222
+ SLEQP_SOLVER_STATE_VEC_SCALED_FEAS_RESIDUALS,
223
+ SLEQP_SOLVER_STATE_VEC_SCALED_CONS_SLACK_RESIDUALS,
224
+ SLEQP_SOLVER_STATE_VEC_SCALED_VAR_SLACK_RESIDUALS,
225
+ } SLEQP_SOLVER_STATE_VEC;
226
+
227
+ /**None value to be used in place of integer parameters **/
228
+ #define SLEQP_NONE (-1)
229
+
230
+ #endif /* SLEQP_PUB_TYPES_H */
@@ -0,0 +1,135 @@
1
+ #ifndef SLEQP_PUB_WORKING_SET_H
2
+ #define SLEQP_PUB_WORKING_SET_H
3
+
4
+ /**
5
+ * @file pub_working_set.h
6
+ * @brief Definition of working sets.
7
+ **/
8
+
9
+ /**
10
+ * @defgroup working_set Working sets
11
+ *
12
+ * The working set \f$ \workingSet \f$ is a subset of at most
13
+ * \f$ n \f$ variables / constraints which are active
14
+ * with respect to the primal point \f$ x \in R^n \f$
15
+ * and a primal direction \f$ d \in \R^n \f$. The
16
+ * set of active variables is given as
17
+ *
18
+ * \f[
19
+ * \{ j \in [n] \mid x_j + d_j \in \{(l_x)_j, (u_x)_j\} \},
20
+ * \f]
21
+ *
22
+ * where a variable \f$ j \f$ can be active at its
23
+ * lower bound \f$ l_j \f$, it upper bound \f$ u_j \f$,
24
+ * or at both bounds (if their values coincide).
25
+ * Activity with respect to constraints is defined
26
+ * analogously.
27
+ *
28
+ * In term of the constraints, each variable
29
+ * \f$ j \f$ corresponds to the row
30
+ *
31
+ * \f[
32
+ * (l_x)_j \leq \langle e_j, x \rangle \leq (u_x)_j,
33
+ * \f]
34
+ *
35
+ * whereas each constraint \f$ i \in [m] \f$
36
+ * has the associated row
37
+ *
38
+ * \f[
39
+ * l_i \leq c_i(x) + \langle \nabla c_i(x), x \rangle \leq u_i,
40
+ * \f]
41
+ *
42
+ * The rows corresponding of variables / constraints
43
+ * in \f$ \workingSet \f$
44
+ * are guaranteed to be linearly independent.
45
+ *
46
+ **/
47
+
48
+ #include "sleqp/export.h"
49
+
50
+ #include "sleqp/pub_problem.h"
51
+
52
+ typedef struct SleqpWorkingSet SleqpWorkingSet;
53
+
54
+ /**
55
+ * Creates a new working set corresponding to the given problem
56
+ *
57
+ * @param[out] star A pointer to the working set to be created
58
+ * @param[int] problem The underlying problem
59
+ **/
60
+ SLEQP_EXPORT SLEQP_WARNUNUSED SLEQP_RETCODE
61
+ sleqp_working_set_create(SleqpWorkingSet** star, SleqpProblem* problem);
62
+
63
+ /**
64
+ * Returns the state of the given variable with respect to the given working set
65
+ *
66
+ * @param[in] working_set The working set
67
+ * @param[in] index The variable index
68
+ **/
69
+ SLEQP_EXPORT SLEQP_ACTIVE_STATE
70
+ sleqp_working_set_var_state(const SleqpWorkingSet* working_set, int index);
71
+
72
+ /**
73
+ * Returns the state of the given constraint with respect to the given working
74
+ * set
75
+ *
76
+ * @param[in] working_set The working set
77
+ * @param[in] index The constraint index
78
+ **/
79
+ SLEQP_EXPORT SLEQP_ACTIVE_STATE
80
+ sleqp_working_set_cons_state(const SleqpWorkingSet* working_set, int index);
81
+
82
+ /**
83
+ * Returns an array containing the states of all variables with respect to the
84
+ * given working set
85
+ **/
86
+ SLEQP_EXPORT const SLEQP_ACTIVE_STATE*
87
+ sleqp_working_set_var_states(const SleqpWorkingSet* working_set);
88
+
89
+ /**
90
+ * Returns an array containing the states of all constraints with respect to the
91
+ * given working set
92
+ **/
93
+ SLEQP_EXPORT const SLEQP_ACTIVE_STATE*
94
+ sleqp_working_set_cons_states(const SleqpWorkingSet* working_set);
95
+
96
+ /**
97
+ * Returns the problem underling the given working set
98
+ *
99
+ * @param[in] working_set The working set
100
+ **/
101
+ SLEQP_EXPORT SleqpProblem*
102
+ sleqp_working_set_problem(const SleqpWorkingSet* working_set);
103
+
104
+ /**
105
+ * Returns the number of variables contained in the given working set
106
+ *
107
+ * @param[in] working_set The working set
108
+ **/
109
+ SLEQP_EXPORT int
110
+ sleqp_working_set_num_active_vars(const SleqpWorkingSet* working_set);
111
+
112
+ /**
113
+ * Returns the number of constraints contained in the given working set
114
+ *
115
+ * @param[in] working_set The working set
116
+ **/
117
+ SLEQP_EXPORT int
118
+ sleqp_working_set_num_active_cons(const SleqpWorkingSet* working_set);
119
+
120
+ /**
121
+ * Returns the size of the given set, i.e. the number of contained variables
122
+ *plus the number of contained constraints
123
+ *
124
+ * @param[in] working_set The working set
125
+ **/
126
+ SLEQP_EXPORT int
127
+ sleqp_working_set_size(const SleqpWorkingSet* working_set);
128
+
129
+ SLEQP_EXPORT SLEQP_WARNUNUSED SLEQP_RETCODE
130
+ sleqp_working_set_capture(SleqpWorkingSet* working_set);
131
+
132
+ SLEQP_EXPORT SLEQP_WARNUNUSED SLEQP_RETCODE
133
+ sleqp_working_set_release(SleqpWorkingSet** star);
134
+
135
+ #endif /* SLEQP_PUB_WORKING_SET_H */