casadi 3.6.5__cp39-none-macosx_11_0_arm64.whl → 3.6.7__cp39-none-macosx_11_0_arm64.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 (649) hide show
  1. casadi/_casadi.so +0 -0
  2. casadi/casadi-cli +0 -0
  3. casadi/casadi.py +739 -308
  4. casadi/cbc +0 -0
  5. casadi/clp +0 -0
  6. casadi/cmake/casadi-config-version.cmake +1 -1
  7. casadi/cmake/casadi-targets.cmake +10 -6
  8. casadi/cmake/highs/highs-config.cmake +6 -13
  9. casadi/cmake/highs/highs-targets-release.cmake +13 -13
  10. casadi/cmake/highs/highs-targets.cmake +25 -22
  11. casadi/cmake/osqp/osqp-targets.cmake +10 -6
  12. casadi/cmake/proxsuite/proxsuiteConfigVersion.cmake +0 -5
  13. casadi/cmake/proxsuite/proxsuiteTargets.cmake +12 -12
  14. casadi/cmake/qdldl/qdldl-targets.cmake +10 -6
  15. casadi/cmake/sleqp/sleqp-config-version.cmake +0 -5
  16. casadi/cmake/sleqp/sleqp-targets.cmake +10 -6
  17. casadi/cmake/trlib/trlib-config-release.cmake +1 -1
  18. casadi/cmake/trlib/trlib-config-version.cmake +0 -5
  19. casadi/cmake/trlib/trlib-config.cmake +12 -12
  20. casadi/highs +0 -0
  21. casadi/include/casadi/casadi.i +3 -0
  22. casadi/include/casadi/casadi_c.h +2 -0
  23. casadi/include/casadi/config.h +9 -9
  24. casadi/include/casadi/core/casadi_common.hpp +1 -0
  25. casadi/include/casadi/core/casadi_export.h +1 -0
  26. casadi/include/casadi/core/casadi_misc.hpp +52 -0
  27. casadi/include/casadi/core/casadi_types.hpp +3 -2
  28. casadi/include/casadi/core/code_generator.hpp +30 -1
  29. casadi/include/casadi/core/global_options.hpp +2 -0
  30. casadi/include/casadi/core/mx.hpp +18 -3
  31. casadi/include/casadi/core/optistack.hpp +23 -0
  32. casadi/include/casadi/core/runtime/casadi_nlp.hpp +19 -4
  33. casadi/include/casadi/core/runtime/casadi_ocp_block.hpp +55 -0
  34. casadi/include/casadi/core/runtime/casadi_oracle.hpp +44 -0
  35. casadi/include/casadi/core/runtime/casadi_oracle_callback.hpp +39 -0
  36. casadi/include/casadi/core/runtime/casadi_runtime.hpp +4 -1
  37. casadi/include/casadi/core/runtime/casadi_scaled_copy.hpp +31 -0
  38. casadi/include/casadi/core/serializing_stream.hpp +2 -2
  39. casadi/include/casadi/core/sparsity.hpp +7 -0
  40. casadi/include/casadi/doc.i +1513 -1016
  41. casadi/include/casadi/doc_merged.i +965 -719
  42. casadi/include/casadi/mem.h +1 -0
  43. casadi/include/daqp/api.h +46 -0
  44. casadi/include/daqp/auxiliary.h +29 -0
  45. casadi/include/daqp/bnb.h +32 -0
  46. casadi/include/daqp/codegen.h +18 -0
  47. casadi/include/daqp/constants.h +92 -0
  48. casadi/include/daqp/daqp.h +22 -0
  49. casadi/include/daqp/daqp_prox.h +18 -0
  50. casadi/include/daqp/factorization.h +18 -0
  51. casadi/include/daqp/types.h +161 -0
  52. casadi/include/daqp/utils.h +44 -0
  53. casadi/include/fatrop/auxiliary/Common.hpp +34 -0
  54. casadi/include/fatrop/auxiliary/DynamicLib.hpp +34 -0
  55. casadi/include/fatrop/auxiliary/FatropOptions.hpp +68 -0
  56. casadi/include/fatrop/auxiliary/FatropVector.hpp +143 -0
  57. casadi/include/fatrop/auxiliary/LinearAlgebra.hpp +88 -0
  58. casadi/include/fatrop/auxiliary/VectorUtils.hpp +54 -0
  59. casadi/include/fatrop/blasfeo_wrapper/LinearAlgebraBlasfeo.hpp +493 -0
  60. casadi/include/fatrop/fatrop.hpp +39 -0
  61. casadi/include/fatrop/function_evaluation/CasadiCodegen.hpp +104 -0
  62. casadi/include/fatrop/function_evaluation/FunctionEvaluation.hpp +60 -0
  63. casadi/include/fatrop/json/json.h +946 -0
  64. casadi/include/fatrop/ocp/CasadiCApiUserdataWrap.hpp +87 -0
  65. casadi/include/fatrop/ocp/DuInfEvaluator.hpp +38 -0
  66. casadi/include/fatrop/ocp/FatropOCP.hpp +161 -0
  67. casadi/include/fatrop/ocp/FatropOCPBuilder.hpp +52 -0
  68. casadi/include/fatrop/ocp/FatropOCPResto.hpp +299 -0
  69. casadi/include/fatrop/ocp/OCP.hpp +82 -0
  70. casadi/include/fatrop/ocp/OCPAbstract.hpp +254 -0
  71. casadi/include/fatrop/ocp/OCPAdapter.hpp +197 -0
  72. casadi/include/fatrop/ocp/OCPCInterface.h +289 -0
  73. casadi/include/fatrop/ocp/OCPDims.hpp +60 -0
  74. casadi/include/fatrop/ocp/OCPInitializer.hpp +41 -0
  75. casadi/include/fatrop/ocp/OCPKKT.hpp +69 -0
  76. casadi/include/fatrop/ocp/OCPLSRiccati.hpp +198 -0
  77. casadi/include/fatrop/ocp/OCPLSScaler.hpp +66 -0
  78. casadi/include/fatrop/ocp/OCPLinearSolver.hpp +75 -0
  79. casadi/include/fatrop/ocp/OCPNoScaling.hpp +42 -0
  80. casadi/include/fatrop/ocp/OCPScalingMethod.hpp +42 -0
  81. casadi/include/fatrop/ocp/StageOCP.hpp +592 -0
  82. casadi/include/fatrop/ocp/StageOCPApplication.hpp +242 -0
  83. casadi/include/fatrop/ocp/StageOCPExpressions.hpp +182 -0
  84. casadi/include/fatrop/ocp/UStageEvalAbstract.hpp +168 -0
  85. casadi/include/fatrop/ocp/UStageOCPImpl.hpp +152 -0
  86. casadi/include/fatrop/quasi_newton/bfgs.hpp +159 -0
  87. casadi/include/fatrop/solver/AlgBuilder.hpp +76 -0
  88. casadi/include/fatrop/solver/AlgStrategy.hpp +33 -0
  89. casadi/include/fatrop/solver/FatropAlg.hpp +121 -0
  90. casadi/include/fatrop/solver/FatropData.hpp +188 -0
  91. casadi/include/fatrop/solver/FatropOptions.hpp +95 -0
  92. casadi/include/fatrop/solver/FatropPrinter.hpp +65 -0
  93. casadi/include/fatrop/solver/FatropStats.hpp +63 -0
  94. casadi/include/fatrop/solver/Filter.hpp +54 -0
  95. casadi/include/fatrop/solver/IterationData.hpp +56 -0
  96. casadi/include/fatrop/solver/LineSearch.hpp +86 -0
  97. casadi/include/fatrop/solver/NLPL1.hpp +263 -0
  98. casadi/include/fatrop/templates/NLPAlg.hpp +104 -0
  99. casadi/include/highs/HConfig.h +8 -7
  100. casadi/include/highs/Highs.h +93 -23
  101. casadi/include/highs/filereaderlp/def.hpp +19 -0
  102. casadi/include/highs/interfaces/highs_c_api.h +200 -24
  103. casadi/include/highs/io/Filereader.h +1 -1
  104. casadi/include/highs/io/FilereaderEms.h +1 -1
  105. casadi/include/highs/io/FilereaderLp.h +1 -1
  106. casadi/include/highs/io/FilereaderMps.h +1 -1
  107. casadi/include/highs/io/HMPSIO.h +1 -1
  108. casadi/include/highs/io/HMpsFF.h +5 -3
  109. casadi/include/highs/io/HighsIO.h +18 -8
  110. casadi/include/highs/io/LoadOptions.h +1 -1
  111. casadi/include/highs/ipm/IpxSolution.h +35 -0
  112. casadi/include/highs/ipm/IpxWrapper.h +1 -1
  113. casadi/include/highs/ipm/basiclu/basiclu.h +161 -0
  114. casadi/include/highs/ipm/basiclu/basiclu_factorize.h +247 -0
  115. casadi/include/highs/ipm/basiclu/basiclu_get_factors.h +108 -0
  116. casadi/include/highs/ipm/basiclu/basiclu_initialize.h +119 -0
  117. casadi/include/highs/ipm/basiclu/basiclu_obj_factorize.h +34 -0
  118. casadi/include/highs/ipm/basiclu/basiclu_obj_free.h +19 -0
  119. casadi/include/highs/ipm/basiclu/basiclu_obj_get_factors.h +34 -0
  120. casadi/include/highs/ipm/basiclu/basiclu_obj_initialize.h +46 -0
  121. casadi/include/highs/ipm/basiclu/basiclu_obj_solve_dense.h +29 -0
  122. casadi/include/highs/ipm/basiclu/basiclu_obj_solve_for_update.h +42 -0
  123. casadi/include/highs/ipm/basiclu/basiclu_obj_solve_sparse.h +32 -0
  124. casadi/include/highs/ipm/basiclu/basiclu_obj_update.h +31 -0
  125. casadi/include/highs/ipm/basiclu/basiclu_object.h +30 -0
  126. casadi/include/highs/ipm/basiclu/basiclu_solve_dense.h +75 -0
  127. casadi/include/highs/ipm/basiclu/basiclu_solve_for_update.h +169 -0
  128. casadi/include/highs/ipm/basiclu/basiclu_solve_sparse.h +112 -0
  129. casadi/include/highs/ipm/basiclu/basiclu_update.h +125 -0
  130. casadi/include/highs/ipm/basiclu/lu_def.h +39 -0
  131. casadi/include/highs/ipm/basiclu/lu_file.h +21 -0
  132. casadi/include/highs/ipm/basiclu/lu_internal.h +220 -0
  133. casadi/include/highs/ipm/basiclu/lu_list.h +168 -0
  134. casadi/include/highs/ipm/ipx/basiclu_kernel.h +20 -0
  135. casadi/include/highs/ipm/ipx/basiclu_wrapper.h +47 -0
  136. casadi/include/highs/ipm/ipx/basis.h +351 -0
  137. casadi/include/highs/ipm/ipx/conjugate_residuals.h +74 -0
  138. casadi/include/highs/ipm/ipx/control.h +163 -0
  139. casadi/include/highs/ipm/ipx/crossover.h +157 -0
  140. casadi/include/highs/ipm/ipx/diagonal_precond.h +45 -0
  141. casadi/include/highs/ipm/ipx/forrest_tomlin.h +102 -0
  142. casadi/include/highs/ipm/ipx/guess_basis.h +21 -0
  143. casadi/include/highs/ipm/ipx/indexed_vector.h +113 -0
  144. casadi/include/highs/ipm/ipx/info.h +27 -0
  145. casadi/include/highs/ipm/ipx/ipm.h +94 -0
  146. casadi/include/highs/ipm/ipx/ipx_c.h +47 -0
  147. casadi/include/highs/ipm/ipx/ipx_config.h +9 -0
  148. casadi/include/highs/ipm/ipx/ipx_info.h +111 -0
  149. casadi/include/highs/ipm/ipx/ipx_internal.h +88 -0
  150. casadi/include/highs/ipm/ipx/ipx_parameters.h +75 -0
  151. casadi/include/highs/ipm/ipx/ipx_status.h +57 -0
  152. casadi/include/highs/ipm/ipx/iterate.h +328 -0
  153. casadi/include/highs/ipm/ipx/kkt_solver.h +70 -0
  154. casadi/include/highs/ipm/ipx/kkt_solver_basis.h +66 -0
  155. casadi/include/highs/ipm/ipx/kkt_solver_diag.h +48 -0
  156. casadi/include/highs/ipm/ipx/linear_operator.h +26 -0
  157. casadi/include/highs/ipm/ipx/lp_solver.h +201 -0
  158. casadi/include/highs/ipm/ipx/lu_factorization.h +79 -0
  159. casadi/include/highs/ipm/ipx/lu_update.h +129 -0
  160. casadi/include/highs/ipm/ipx/maxvolume.h +54 -0
  161. casadi/include/highs/ipm/ipx/model.h +409 -0
  162. casadi/include/highs/ipm/ipx/multistream.h +52 -0
  163. casadi/include/highs/ipm/ipx/normal_matrix.h +44 -0
  164. casadi/include/highs/ipm/ipx/power_method.h +44 -0
  165. casadi/include/highs/ipm/ipx/sparse_matrix.h +195 -0
  166. casadi/include/highs/ipm/ipx/sparse_utils.h +58 -0
  167. casadi/include/highs/ipm/ipx/splitted_normal_matrix.h +63 -0
  168. casadi/include/highs/ipm/ipx/starting_basis.h +39 -0
  169. casadi/include/highs/ipm/ipx/symbolic_invert.h +29 -0
  170. casadi/include/highs/ipm/ipx/timer.h +24 -0
  171. casadi/include/highs/ipm/ipx/utils.h +39 -0
  172. casadi/include/highs/lp_data/HConst.h +20 -10
  173. casadi/include/highs/lp_data/HStruct.h +23 -1
  174. casadi/include/highs/lp_data/HighsAnalysis.h +1 -1
  175. casadi/include/highs/lp_data/HighsCallback.h +10 -3
  176. casadi/include/highs/lp_data/HighsCallbackStruct.h +31 -5
  177. casadi/include/highs/lp_data/HighsDebug.h +1 -1
  178. casadi/include/highs/lp_data/HighsInfo.h +20 -2
  179. casadi/include/highs/lp_data/HighsInfoDebug.h +1 -1
  180. casadi/include/highs/lp_data/HighsLp.h +17 -1
  181. casadi/include/highs/lp_data/HighsLpSolverObject.h +1 -1
  182. casadi/include/highs/lp_data/HighsLpUtils.h +19 -19
  183. casadi/include/highs/lp_data/HighsModelUtils.h +1 -1
  184. casadi/include/highs/lp_data/HighsOptions.h +237 -10
  185. casadi/include/highs/lp_data/HighsRanging.h +1 -1
  186. casadi/include/highs/lp_data/HighsRuntimeOptions.h +2 -2
  187. casadi/include/highs/lp_data/HighsSolution.h +2 -2
  188. casadi/include/highs/lp_data/HighsSolutionDebug.h +1 -1
  189. casadi/include/highs/lp_data/HighsSolve.h +3 -1
  190. casadi/include/highs/lp_data/HighsStatus.h +1 -1
  191. casadi/include/highs/mip/HighsCliqueTable.h +4 -4
  192. casadi/include/highs/mip/HighsConflictPool.h +1 -1
  193. casadi/include/highs/mip/HighsCutGeneration.h +1 -1
  194. casadi/include/highs/mip/HighsCutPool.h +2 -2
  195. casadi/include/highs/mip/HighsDebugSol.h +22 -29
  196. casadi/include/highs/mip/HighsDomain.h +10 -2
  197. casadi/include/highs/mip/HighsDomainChange.h +1 -1
  198. casadi/include/highs/mip/HighsDynamicRowMatrix.h +5 -3
  199. casadi/include/highs/mip/HighsGFkSolve.h +3 -3
  200. casadi/include/highs/mip/HighsImplications.h +3 -3
  201. casadi/include/highs/mip/HighsLpAggregator.h +1 -1
  202. casadi/include/highs/mip/HighsLpRelaxation.h +6 -1
  203. casadi/include/highs/mip/HighsMipSolver.h +4 -2
  204. casadi/include/highs/mip/HighsMipSolverData.h +47 -4
  205. casadi/include/highs/mip/HighsModkSeparator.h +2 -2
  206. casadi/include/highs/mip/HighsNodeQueue.h +5 -3
  207. casadi/include/highs/mip/HighsObjectiveFunction.h +1 -1
  208. casadi/include/highs/mip/HighsPathSeparator.h +2 -2
  209. casadi/include/highs/mip/HighsPrimalHeuristics.h +1 -1
  210. casadi/include/highs/mip/HighsPseudocost.h +35 -23
  211. casadi/include/highs/mip/HighsRedcostFixing.h +1 -1
  212. casadi/include/highs/mip/HighsSearch.h +2 -1
  213. casadi/include/highs/mip/HighsSeparation.h +1 -1
  214. casadi/include/highs/mip/HighsSeparator.h +1 -1
  215. casadi/include/highs/mip/HighsTableauSeparator.h +1 -1
  216. casadi/include/highs/mip/HighsTransformedLp.h +1 -1
  217. casadi/include/highs/model/HighsHessian.h +5 -0
  218. casadi/include/highs/model/HighsHessianUtils.h +2 -0
  219. casadi/include/highs/model/HighsModel.h +10 -1
  220. casadi/include/highs/parallel/HighsMutex.h +2 -1
  221. casadi/include/highs/parallel/HighsParallel.h +7 -2
  222. casadi/include/highs/parallel/HighsTask.h +1 -2
  223. casadi/include/highs/pdlp/CupdlpWrapper.h +93 -0
  224. casadi/include/highs/pdlp/cupdlp/cupdlp_cs.h +41 -0
  225. casadi/include/highs/pdlp/cupdlp/cupdlp_defs.h +423 -0
  226. casadi/include/highs/pdlp/cupdlp/cupdlp_linalg.h +183 -0
  227. casadi/include/highs/pdlp/cupdlp/cupdlp_proj.h +19 -0
  228. casadi/include/highs/pdlp/cupdlp/cupdlp_restart.h +31 -0
  229. casadi/include/highs/pdlp/cupdlp/cupdlp_scaling_cuda.h +28 -0
  230. casadi/include/highs/pdlp/cupdlp/cupdlp_solver.h +98 -0
  231. casadi/include/highs/pdlp/cupdlp/cupdlp_step.h +33 -0
  232. casadi/include/highs/pdlp/cupdlp/cupdlp_utils.c +1726 -0
  233. casadi/include/highs/pdqsort/pdqsort.h +532 -0
  234. casadi/include/highs/presolve/HPresolve.h +27 -14
  235. casadi/include/highs/presolve/HPresolveAnalysis.h +1 -1
  236. casadi/include/highs/presolve/HighsPostsolveStack.h +92 -68
  237. casadi/include/highs/presolve/HighsSymmetry.h +6 -5
  238. casadi/include/highs/presolve/ICrash.h +8 -2
  239. casadi/include/highs/presolve/ICrashUtil.h +1 -1
  240. casadi/include/highs/presolve/ICrashX.h +1 -1
  241. casadi/include/highs/presolve/PresolveComponent.h +1 -1
  242. casadi/include/highs/qpsolver/a_asm.hpp +23 -12
  243. casadi/include/highs/qpsolver/a_quass.hpp +8 -1
  244. casadi/include/highs/qpsolver/basis.hpp +150 -0
  245. casadi/include/highs/qpsolver/crashsolution.hpp +12 -0
  246. casadi/include/highs/qpsolver/dantzigpricing.hpp +72 -0
  247. casadi/include/highs/qpsolver/devexpricing.hpp +99 -0
  248. casadi/include/highs/qpsolver/eventhandler.hpp +23 -0
  249. casadi/include/highs/qpsolver/factor.hpp +400 -0
  250. casadi/include/highs/qpsolver/feasibility_bounded.hpp +105 -0
  251. casadi/include/highs/qpsolver/feasibility_highs.hpp +270 -0
  252. casadi/include/highs/qpsolver/gradient.hpp +39 -0
  253. casadi/include/highs/qpsolver/instance.hpp +63 -0
  254. casadi/include/highs/qpsolver/matrix.hpp +335 -0
  255. casadi/include/highs/qpsolver/pricing.hpp +15 -0
  256. casadi/include/highs/qpsolver/qpconst.hpp +27 -0
  257. casadi/include/highs/qpsolver/{vector.hpp → qpvector.hpp} +25 -25
  258. casadi/include/highs/qpsolver/quass.hpp +1 -1
  259. casadi/include/highs/qpsolver/ratiotest.hpp +19 -0
  260. casadi/include/highs/qpsolver/runtime.hpp +38 -0
  261. casadi/include/highs/qpsolver/settings.hpp +57 -0
  262. casadi/include/highs/qpsolver/snippets.hpp +29 -0
  263. casadi/include/highs/qpsolver/statistics.hpp +23 -0
  264. casadi/include/highs/qpsolver/steepestedgepricing.hpp +167 -0
  265. casadi/include/highs/simplex/HApp.h +1 -1
  266. casadi/include/highs/simplex/HEkk.h +52 -18
  267. casadi/include/highs/simplex/HEkkDual.h +1 -1
  268. casadi/include/highs/simplex/HEkkDualRHS.h +6 -7
  269. casadi/include/highs/simplex/HEkkDualRow.h +2 -2
  270. casadi/include/highs/simplex/HEkkPrimal.h +6 -1
  271. casadi/include/highs/simplex/HSimplex.h +1 -3
  272. casadi/include/highs/simplex/HSimplexDebug.h +1 -1
  273. casadi/include/highs/simplex/HSimplexNla.h +1 -1
  274. casadi/include/highs/simplex/HSimplexReport.h +1 -1
  275. casadi/include/highs/simplex/HighsSimplexAnalysis.h +228 -100
  276. casadi/include/highs/simplex/SimplexConst.h +1 -1
  277. casadi/include/highs/simplex/SimplexStruct.h +2 -2
  278. casadi/include/highs/simplex/SimplexTimer.h +1 -1
  279. casadi/include/highs/test/DevKkt.h +1 -1
  280. casadi/include/highs/test/KktCh2.h +1 -1
  281. casadi/include/highs/util/FactorTimer.h +1 -1
  282. casadi/include/highs/util/HFactor.h +35 -6
  283. casadi/include/highs/util/HFactorConst.h +1 -1
  284. casadi/include/highs/util/HFactorDebug.h +1 -1
  285. casadi/include/highs/util/HSet.h +1 -1
  286. casadi/include/highs/util/HVector.h +1 -1
  287. casadi/include/highs/util/HVectorBase.h +1 -1
  288. casadi/include/highs/util/HighsCDouble.h +3 -3
  289. casadi/include/highs/util/HighsComponent.h +1 -1
  290. casadi/include/highs/util/HighsDataStack.h +4 -4
  291. casadi/include/highs/util/HighsDisjointSets.h +1 -1
  292. casadi/include/highs/util/HighsHash.h +28 -21
  293. casadi/include/highs/util/HighsHashTree.h +63 -63
  294. casadi/include/highs/util/HighsInt.h +1 -1
  295. casadi/include/highs/util/HighsIntegers.h +8 -9
  296. casadi/include/highs/util/HighsLinearSumBounds.h +1 -1
  297. casadi/include/highs/util/HighsMatrixPic.h +1 -1
  298. casadi/include/highs/util/HighsMatrixSlice.h +9 -6
  299. casadi/include/highs/util/HighsMatrixUtils.h +1 -1
  300. casadi/include/highs/util/HighsMemoryAllocation.h +55 -0
  301. casadi/include/highs/util/HighsRandom.h +27 -15
  302. casadi/include/highs/util/HighsRbTree.h +2 -2
  303. casadi/include/highs/util/HighsSort.h +7 -7
  304. casadi/include/highs/util/HighsSparseMatrix.h +5 -2
  305. casadi/include/highs/util/HighsSparseVectorSum.h +2 -2
  306. casadi/include/highs/util/HighsSplay.h +1 -1
  307. casadi/include/highs/util/HighsTimer.h +18 -9
  308. casadi/include/highs/util/HighsUtils.h +15 -8
  309. casadi/include/highs/util/stringutil.h +9 -4
  310. casadi/include/highs/zstr/strict_fstream.hpp +237 -0
  311. casadi/include/highs/zstr/zstr.hpp +472 -0
  312. casadi/include/highs_export.h +43 -0
  313. casadi/include/licenses/daqp-external/LICENSE +21 -0
  314. casadi/include/licenses/{alpaqa-external/LICENSE → fatrop-external/LICENSE.txt} +2 -2
  315. casadi/include/licenses/fatrop-external/external/blasfeo/LICENSE.txt +26 -0
  316. casadi/include/licenses/fatrop-external/external/pybind11/LICENSE +29 -0
  317. casadi/include/licenses/fatrop-external/misc/license_header.txt +17 -0
  318. casadi/include/licenses/highs-external/{LICENSE → LICENSE.txt} +1 -1
  319. casadi/include/osqp/constants.h +2 -3
  320. casadi/include/osqp/version.h +9 -0
  321. casadi/include/sleqp/defs.h +4 -4
  322. casadi/include/sleqp/export.h +1 -0
  323. casadi/lib/cmake/tinyxml2/tinyxml2-config-version.cmake +0 -5
  324. casadi/lib/cmake/tinyxml2/tinyxml2-static-targets.cmake +10 -6
  325. casadi/lib/libtinyxml2.a +0 -0
  326. casadi/lib/pkgconfig/tinyxml2.pc +1 -1
  327. casadi/libCbc.3.10.11.dylib +0 -0
  328. casadi/libCbc.3.dylib +0 -0
  329. casadi/libCbc.dylib +0 -0
  330. casadi/libCbc.la +2 -2
  331. casadi/libCbcSolver.3.10.11.dylib +0 -0
  332. casadi/libCbcSolver.3.dylib +0 -0
  333. casadi/libCbcSolver.dylib +0 -0
  334. casadi/libCbcSolver.la +2 -2
  335. casadi/libCgl.1.10.8.dylib +0 -0
  336. casadi/libCgl.1.dylib +0 -0
  337. casadi/libCgl.dylib +0 -0
  338. casadi/libCgl.la +2 -2
  339. casadi/libClp.1.14.9.dylib +0 -0
  340. casadi/libClp.1.dylib +0 -0
  341. casadi/libClp.dylib +0 -0
  342. casadi/libClp.la +2 -2
  343. casadi/libClpSolver.1.14.9.dylib +0 -0
  344. casadi/libClpSolver.1.dylib +0 -0
  345. casadi/libClpSolver.dylib +0 -0
  346. casadi/libClpSolver.la +2 -2
  347. casadi/libCoinUtils.3.11.10.dylib +0 -0
  348. casadi/libCoinUtils.3.dylib +0 -0
  349. casadi/libCoinUtils.dylib +0 -0
  350. casadi/libCoinUtils.la +1 -1
  351. casadi/libOsi.1.13.9.dylib +0 -0
  352. casadi/libOsi.1.dylib +0 -0
  353. casadi/libOsi.dylib +0 -0
  354. casadi/libOsi.la +2 -2
  355. casadi/libOsiCbc.3.10.11.dylib +0 -0
  356. casadi/libOsiCbc.3.dylib +0 -0
  357. casadi/libOsiCbc.dylib +0 -0
  358. casadi/libOsiCbc.la +2 -2
  359. casadi/libOsiClp.1.14.9.dylib +0 -0
  360. casadi/libOsiClp.1.dylib +0 -0
  361. casadi/libOsiClp.dylib +0 -0
  362. casadi/libOsiClp.la +2 -2
  363. casadi/libOsiCommonTests.1.13.9.dylib +0 -0
  364. casadi/libOsiCommonTests.1.dylib +0 -0
  365. casadi/libOsiCommonTests.dylib +0 -0
  366. casadi/libOsiCommonTests.la +2 -2
  367. casadi/libblasfeo.dylib +0 -0
  368. casadi/libbonmin.4.8.9.dylib +0 -0
  369. casadi/libbonmin.4.dylib +0 -0
  370. casadi/libbonmin.dylib +0 -0
  371. casadi/libbonmin.la +2 -2
  372. casadi/libc++.1.0.dylib +0 -0
  373. casadi/libcasadi.3.7.dylib +0 -0
  374. casadi/libcasadi.dylib +0 -0
  375. casadi/libcasadi_conic_cbc.3.7.dylib +0 -0
  376. casadi/libcasadi_conic_cbc.dylib +0 -0
  377. casadi/libcasadi_conic_clp.3.7.dylib +0 -0
  378. casadi/libcasadi_conic_clp.dylib +0 -0
  379. casadi/libcasadi_conic_cplex.3.7.dylib +0 -0
  380. casadi/libcasadi_conic_cplex.dylib +0 -0
  381. casadi/libcasadi_conic_daqp.3.7.dylib +0 -0
  382. casadi/libcasadi_conic_daqp.dylib +0 -0
  383. casadi/libcasadi_conic_fatrop.3.7.dylib +0 -0
  384. casadi/libcasadi_conic_fatrop.dylib +0 -0
  385. casadi/libcasadi_conic_gurobi.3.7.dylib +0 -0
  386. casadi/libcasadi_conic_gurobi.dylib +0 -0
  387. casadi/libcasadi_conic_highs.3.7.dylib +0 -0
  388. casadi/libcasadi_conic_highs.dylib +0 -0
  389. casadi/libcasadi_conic_ipqp.3.7.dylib +0 -0
  390. casadi/libcasadi_conic_ipqp.dylib +0 -0
  391. casadi/libcasadi_conic_nlpsol.3.7.dylib +0 -0
  392. casadi/libcasadi_conic_nlpsol.dylib +0 -0
  393. casadi/libcasadi_conic_osqp.3.7.dylib +0 -0
  394. casadi/libcasadi_conic_osqp.dylib +0 -0
  395. casadi/libcasadi_conic_proxqp.3.7.dylib +0 -0
  396. casadi/libcasadi_conic_proxqp.dylib +0 -0
  397. casadi/libcasadi_conic_qpoases.3.7.dylib +0 -0
  398. casadi/libcasadi_conic_qpoases.dylib +0 -0
  399. casadi/libcasadi_conic_qrqp.3.7.dylib +0 -0
  400. casadi/libcasadi_conic_qrqp.dylib +0 -0
  401. casadi/libcasadi_conic_superscs.3.7.dylib +0 -0
  402. casadi/libcasadi_conic_superscs.dylib +0 -0
  403. casadi/libcasadi_importer_shell.3.7.dylib +0 -0
  404. casadi/libcasadi_importer_shell.dylib +0 -0
  405. casadi/libcasadi_integrator_collocation.3.7.dylib +0 -0
  406. casadi/libcasadi_integrator_collocation.dylib +0 -0
  407. casadi/libcasadi_integrator_cvodes.3.7.dylib +0 -0
  408. casadi/libcasadi_integrator_cvodes.dylib +0 -0
  409. casadi/libcasadi_integrator_idas.3.7.dylib +0 -0
  410. casadi/libcasadi_integrator_idas.dylib +0 -0
  411. casadi/libcasadi_integrator_rk.3.7.dylib +0 -0
  412. casadi/libcasadi_integrator_rk.dylib +0 -0
  413. casadi/libcasadi_interpolant_bspline.3.7.dylib +0 -0
  414. casadi/libcasadi_interpolant_bspline.dylib +0 -0
  415. casadi/libcasadi_interpolant_linear.3.7.dylib +0 -0
  416. casadi/libcasadi_interpolant_linear.dylib +0 -0
  417. casadi/libcasadi_linsol_csparse.3.7.dylib +0 -0
  418. casadi/libcasadi_linsol_csparse.dylib +0 -0
  419. casadi/libcasadi_linsol_csparsecholesky.3.7.dylib +0 -0
  420. casadi/libcasadi_linsol_csparsecholesky.dylib +0 -0
  421. casadi/libcasadi_linsol_lapacklu.3.7.dylib +0 -0
  422. casadi/libcasadi_linsol_lapacklu.dylib +0 -0
  423. casadi/libcasadi_linsol_lapackqr.3.7.dylib +0 -0
  424. casadi/libcasadi_linsol_lapackqr.dylib +0 -0
  425. casadi/libcasadi_linsol_ldl.3.7.dylib +0 -0
  426. casadi/libcasadi_linsol_ldl.dylib +0 -0
  427. casadi/libcasadi_linsol_lsqr.3.7.dylib +0 -0
  428. casadi/libcasadi_linsol_lsqr.dylib +0 -0
  429. casadi/libcasadi_linsol_ma27.3.7.dylib +0 -0
  430. casadi/libcasadi_linsol_ma27.dylib +0 -0
  431. casadi/libcasadi_linsol_mumps.3.7.dylib +0 -0
  432. casadi/libcasadi_linsol_mumps.dylib +0 -0
  433. casadi/libcasadi_linsol_qr.3.7.dylib +0 -0
  434. casadi/libcasadi_linsol_qr.dylib +0 -0
  435. casadi/libcasadi_linsol_symbolicqr.3.7.dylib +0 -0
  436. casadi/libcasadi_linsol_symbolicqr.dylib +0 -0
  437. casadi/libcasadi_linsol_tridiag.3.7.dylib +0 -0
  438. casadi/libcasadi_linsol_tridiag.dylib +0 -0
  439. casadi/libcasadi_nlpsol_ampl.3.7.dylib +0 -0
  440. casadi/libcasadi_nlpsol_ampl.dylib +0 -0
  441. casadi/libcasadi_nlpsol_blocksqp.3.7.dylib +0 -0
  442. casadi/libcasadi_nlpsol_blocksqp.dylib +0 -0
  443. casadi/libcasadi_nlpsol_bonmin.3.7.dylib +0 -0
  444. casadi/libcasadi_nlpsol_bonmin.dylib +0 -0
  445. casadi/libcasadi_nlpsol_fatrop.3.7.dylib +0 -0
  446. casadi/libcasadi_nlpsol_fatrop.dylib +0 -0
  447. casadi/libcasadi_nlpsol_feasiblesqpmethod.3.7.dylib +0 -0
  448. casadi/libcasadi_nlpsol_feasiblesqpmethod.dylib +0 -0
  449. casadi/libcasadi_nlpsol_ipopt.3.7.dylib +0 -0
  450. casadi/libcasadi_nlpsol_ipopt.dylib +0 -0
  451. casadi/libcasadi_nlpsol_knitro.3.7.dylib +0 -0
  452. casadi/libcasadi_nlpsol_knitro.dylib +0 -0
  453. casadi/libcasadi_nlpsol_madnlp.3.7.dylib +0 -0
  454. casadi/libcasadi_nlpsol_madnlp.dylib +0 -0
  455. casadi/libcasadi_nlpsol_qrsqp.3.7.dylib +0 -0
  456. casadi/libcasadi_nlpsol_qrsqp.dylib +0 -0
  457. casadi/libcasadi_nlpsol_scpgen.3.7.dylib +0 -0
  458. casadi/libcasadi_nlpsol_scpgen.dylib +0 -0
  459. casadi/libcasadi_nlpsol_sleqp.3.7.dylib +0 -0
  460. casadi/libcasadi_nlpsol_sleqp.dylib +0 -0
  461. casadi/libcasadi_nlpsol_snopt.3.7.dylib +0 -0
  462. casadi/libcasadi_nlpsol_snopt.dylib +0 -0
  463. casadi/libcasadi_nlpsol_sqpmethod.3.7.dylib +0 -0
  464. casadi/libcasadi_nlpsol_sqpmethod.dylib +0 -0
  465. casadi/libcasadi_rootfinder_fast_newton.3.7.dylib +0 -0
  466. casadi/libcasadi_rootfinder_fast_newton.dylib +0 -0
  467. casadi/libcasadi_rootfinder_kinsol.3.7.dylib +0 -0
  468. casadi/libcasadi_rootfinder_kinsol.dylib +0 -0
  469. casadi/libcasadi_rootfinder_newton.3.7.dylib +0 -0
  470. casadi/libcasadi_rootfinder_newton.dylib +0 -0
  471. casadi/libcasadi_rootfinder_nlpsol.3.7.dylib +0 -0
  472. casadi/libcasadi_rootfinder_nlpsol.dylib +0 -0
  473. casadi/libcasadi_sundials_common.3.7.dylib +0 -0
  474. casadi/libcasadi_sundials_common.dylib +0 -0
  475. casadi/libcasadi_xmlfile_tinyxml.3.7.dylib +0 -0
  476. casadi/libcasadi_xmlfile_tinyxml.dylib +0 -0
  477. casadi/libcoinmetis.2.dylib +0 -0
  478. casadi/libcoinmetis.dylib +0 -0
  479. casadi/libcoinmetis.la +1 -1
  480. casadi/libcoinmumps.3.dylib +0 -0
  481. casadi/libcoinmumps.dylib +0 -0
  482. casadi/libcoinmumps.la +2 -2
  483. casadi/libcplex_adaptor.dylib +0 -0
  484. casadi/{libamd.3.0.3.dylib → libdaqp.dylib} +0 -0
  485. casadi/libdaqpstat.a +0 -0
  486. casadi/libfatrop.dylib +0 -0
  487. casadi/libgcc_s.1.1.dylib +0 -0
  488. casadi/libgfortran.5.dylib +0 -0
  489. casadi/libgurobi_adaptor.dylib +0 -0
  490. casadi/libhighs.1.7.dylib +0 -0
  491. casadi/libhighs.1.dylib +0 -0
  492. casadi/libhighs.dylib +0 -0
  493. casadi/libindirect.a +0 -0
  494. casadi/libipopt.3.dylib +0 -0
  495. casadi/libipopt.dylib +0 -0
  496. casadi/libipopt.la +2 -2
  497. casadi/liblinsys.a +0 -0
  498. casadi/{libsuitesparseconfig.7.0.1.dylib → libmatlab_ipc.dylib} +0 -0
  499. casadi/libosqp.a +0 -0
  500. casadi/libosqp.dylib +0 -0
  501. casadi/libqdldl.a +0 -0
  502. casadi/libqdldl.dylib +0 -0
  503. casadi/libquadmath.0.dylib +0 -0
  504. casadi/libsipopt.3.dylib +0 -0
  505. casadi/libsipopt.dylib +0 -0
  506. casadi/libsipopt.la +2 -2
  507. casadi/libsleqp.1.0.1.dylib +0 -0
  508. casadi/libsleqp.dylib +0 -0
  509. casadi/libsuperscs.a +0 -0
  510. casadi/libtrlib.0.4.dylib +0 -0
  511. casadi/libtrlib.dylib +0 -0
  512. casadi/libz.1.2.13.dylib +0 -0
  513. casadi/pkgconfig/bonmin.pc +1 -1
  514. casadi/pkgconfig/casadi.pc +5 -5
  515. casadi/pkgconfig/cbc.pc +1 -1
  516. casadi/pkgconfig/cgl.pc +1 -1
  517. casadi/pkgconfig/clp.pc +1 -1
  518. casadi/pkgconfig/coinmetis.pc +1 -1
  519. casadi/pkgconfig/coinmumps.pc +2 -2
  520. casadi/pkgconfig/coinutils.pc +2 -2
  521. casadi/pkgconfig/highs.pc +4 -4
  522. casadi/pkgconfig/ipopt.pc +2 -2
  523. casadi/pkgconfig/osi-cbc.pc +1 -1
  524. casadi/pkgconfig/osi-clp.pc +1 -1
  525. casadi/pkgconfig/osi-unittests.pc +1 -1
  526. casadi/pkgconfig/osi.pc +1 -1
  527. casadi/pkgconfig/sleqp.pc +1 -1
  528. casadi/tools/__init__.py +4 -0
  529. casadi/tools/bounds.py +3 -3
  530. {casadi-3.6.5.dist-info → casadi-3.6.7.dist-info}/METADATA +2 -2
  531. {casadi-3.6.5.dist-info → casadi-3.6.7.dist-info}/RECORD +532 -477
  532. casadi/cmake/alpaqa/alpaqaConfig.cmake +0 -24
  533. casadi/cmake/alpaqa/alpaqaConfigVersion.cmake +0 -70
  534. casadi/cmake/alpaqa/alpaqaTargets-release.cmake +0 -19
  535. casadi/cmake/alpaqa/alpaqaTargets.cmake +0 -116
  536. casadi/include/alpaqa/accelerators/anderson.hpp +0 -133
  537. casadi/include/alpaqa/accelerators/internal/anderson-helpers.hpp +0 -92
  538. casadi/include/alpaqa/accelerators/internal/limited-memory-qr.hpp +0 -295
  539. casadi/include/alpaqa/accelerators/lbfgs.hpp +0 -244
  540. casadi/include/alpaqa/accelerators/steihaugcg.hpp +0 -143
  541. casadi/include/alpaqa/alpaqa.hpp +0 -3
  542. casadi/include/alpaqa/casadi/CasADiControlProblem.hpp +0 -185
  543. casadi/include/alpaqa/casadi/CasADiFunctionWrapper.hpp +0 -104
  544. casadi/include/alpaqa/casadi/CasADiProblem.hpp +0 -102
  545. casadi/include/alpaqa/casadi-loader-export.hpp +0 -15
  546. casadi/include/alpaqa/casadi-ocp-loader-export.hpp +0 -15
  547. casadi/include/alpaqa/config/config.hpp +0 -165
  548. casadi/include/alpaqa/dl/dl-problem.h +0 -476
  549. casadi/include/alpaqa/dl/dl-problem.hpp +0 -301
  550. casadi/include/alpaqa/export.h +0 -42
  551. casadi/include/alpaqa/export.hpp +0 -30
  552. casadi/include/alpaqa/implementation/accelerators/lbfgs.tpp +0 -240
  553. casadi/include/alpaqa/implementation/casadi/CasADiControlProblem.tpp +0 -594
  554. casadi/include/alpaqa/implementation/casadi/CasADiLoader-util.hpp +0 -50
  555. casadi/include/alpaqa/implementation/casadi/CasADiProblem.tpp +0 -425
  556. casadi/include/alpaqa/implementation/inner/directions/panoc/structured-lbfgs.tpp +0 -164
  557. casadi/include/alpaqa/implementation/inner/panoc-helpers.tpp +0 -389
  558. casadi/include/alpaqa/implementation/inner/panoc-ocp.tpp +0 -798
  559. casadi/include/alpaqa/implementation/inner/panoc.tpp +0 -448
  560. casadi/include/alpaqa/implementation/inner/pantr.tpp +0 -474
  561. casadi/include/alpaqa/implementation/inner/zerofpr.tpp +0 -482
  562. casadi/include/alpaqa/implementation/outer/alm.tpp +0 -228
  563. casadi/include/alpaqa/implementation/outer/internal/alm-helpers.tpp +0 -80
  564. casadi/include/alpaqa/implementation/params/params.tpp +0 -158
  565. casadi/include/alpaqa/implementation/problem/ocproblem.tpp +0 -56
  566. casadi/include/alpaqa/implementation/problem/type-erased-problem.tpp +0 -211
  567. casadi/include/alpaqa/implementation/util/io/csv.tpp +0 -120
  568. casadi/include/alpaqa/implementation/util/print.tpp +0 -151
  569. casadi/include/alpaqa/inner/directions/panoc/anderson.hpp +0 -98
  570. casadi/include/alpaqa/inner/directions/panoc/lbfgs.hpp +0 -94
  571. casadi/include/alpaqa/inner/directions/panoc/structured-lbfgs.hpp +0 -146
  572. casadi/include/alpaqa/inner/directions/panoc/structured-newton.hpp +0 -264
  573. casadi/include/alpaqa/inner/directions/panoc-direction-update.hpp +0 -96
  574. casadi/include/alpaqa/inner/directions/panoc-ocp/lqr.hpp +0 -181
  575. casadi/include/alpaqa/inner/directions/panoc-ocp/ocp-vars.hpp +0 -492
  576. casadi/include/alpaqa/inner/directions/pantr/newton-tr.hpp +0 -192
  577. casadi/include/alpaqa/inner/directions/pantr/pantr-direction.hpp +0 -99
  578. casadi/include/alpaqa/inner/inner-solve-options.hpp +0 -30
  579. casadi/include/alpaqa/inner/internal/lipschitz.hpp +0 -27
  580. casadi/include/alpaqa/inner/internal/panoc-helpers.hpp +0 -10
  581. casadi/include/alpaqa/inner/internal/panoc-stop-crit.hpp +0 -124
  582. casadi/include/alpaqa/inner/internal/solverstatus.hpp +0 -42
  583. casadi/include/alpaqa/inner/panoc-ocp.hpp +0 -302
  584. casadi/include/alpaqa/inner/panoc.hpp +0 -274
  585. casadi/include/alpaqa/inner/pantr.hpp +0 -284
  586. casadi/include/alpaqa/inner/zerofpr.hpp +0 -274
  587. casadi/include/alpaqa/ipopt/ipopt-adapter.hpp +0 -81
  588. casadi/include/alpaqa/ipopt/ipopt-enums.hpp +0 -35
  589. casadi/include/alpaqa/lbfgsb/lbfgsb-adapter.hpp +0 -111
  590. casadi/include/alpaqa/newton-tr-pantr-alm.hpp +0 -27
  591. casadi/include/alpaqa/outer/alm.hpp +0 -190
  592. casadi/include/alpaqa/outer/internal/alm-helpers.hpp +0 -10
  593. casadi/include/alpaqa/panoc-alm.hpp +0 -27
  594. casadi/include/alpaqa/panoc-anderson-alm.hpp +0 -27
  595. casadi/include/alpaqa/params/params.hpp +0 -60
  596. casadi/include/alpaqa/problem/box-constr-problem.hpp +0 -220
  597. casadi/include/alpaqa/problem/box.hpp +0 -82
  598. casadi/include/alpaqa/problem/functional-problem.hpp +0 -73
  599. casadi/include/alpaqa/problem/kkt-error.hpp +0 -43
  600. casadi/include/alpaqa/problem/ocproblem-counters.hpp +0 -116
  601. casadi/include/alpaqa/problem/ocproblem.hpp +0 -662
  602. casadi/include/alpaqa/problem/problem-counters.hpp +0 -116
  603. casadi/include/alpaqa/problem/problem-with-counters.hpp +0 -141
  604. casadi/include/alpaqa/problem/type-erased-problem.hpp +0 -874
  605. casadi/include/alpaqa/problem/unconstr-problem.hpp +0 -37
  606. casadi/include/alpaqa/structured-panoc-alm.hpp +0 -27
  607. casadi/include/alpaqa/structured-zerofpr-alm.hpp +0 -27
  608. casadi/include/alpaqa/util/alloc-check.hpp +0 -23
  609. casadi/include/alpaqa/util/atomic-stop-signal.hpp +0 -24
  610. casadi/include/alpaqa/util/check-dim.hpp +0 -64
  611. casadi/include/alpaqa/util/copyable_unique_ptr.hpp +0 -32
  612. casadi/include/alpaqa/util/demangled-typename.hpp +0 -9
  613. casadi/include/alpaqa/util/enumerate.hpp +0 -70
  614. casadi/include/alpaqa/util/float.hpp +0 -25
  615. casadi/include/alpaqa/util/index-set.hpp +0 -97
  616. casadi/include/alpaqa/util/io/csv.hpp +0 -43
  617. casadi/include/alpaqa/util/iter-adapter.hpp +0 -68
  618. casadi/include/alpaqa/util/max-history.hpp +0 -47
  619. casadi/include/alpaqa/util/noop-delete.hpp +0 -15
  620. casadi/include/alpaqa/util/not-implemented.hpp +0 -12
  621. casadi/include/alpaqa/util/print.hpp +0 -78
  622. casadi/include/alpaqa/util/quadmath/quadmath-print.hpp +0 -20
  623. casadi/include/alpaqa/util/quadmath/quadmath.hpp +0 -137
  624. casadi/include/alpaqa/util/required-method.hpp +0 -29
  625. casadi/include/alpaqa/util/ringbuffer.hpp +0 -212
  626. casadi/include/alpaqa/util/set-intersection.hpp +0 -129
  627. casadi/include/alpaqa/util/sparse-ops.hpp +0 -164
  628. casadi/include/alpaqa/util/timed.hpp +0 -22
  629. casadi/include/alpaqa/util/type-erasure.hpp +0 -568
  630. casadi/include/alpaqa/util/type-traits.hpp +0 -58
  631. casadi/include/alpaqa/zerofpr-alm.hpp +0 -27
  632. casadi/include/alpaqa/zerofpr-anderson-alm.hpp +0 -27
  633. casadi/include/alpaqa-version.h +0 -8
  634. casadi/include/highs/fortran/highs_fortran_api.mod +0 -0
  635. casadi/include/licenses/alpaqa-external/src/thirdparty/lbfgsb/Lbfgsb.3.0/License.txt +0 -71
  636. casadi/libFortranHighs.dylib +0 -0
  637. casadi/libalpaqa.1.0.0.dylib +0 -0
  638. casadi/libalpaqa.dylib +0 -0
  639. casadi/libcamd.3.0.3.dylib +0 -0
  640. casadi/libcasadi_nlpsol_alpaqa.3.7.dylib +0 -0
  641. casadi/libcasadi_nlpsol_alpaqa.dylib +0 -0
  642. casadi/libccolamd.3.0.3.dylib +0 -0
  643. casadi/libcholmod.4.0.3.dylib +0 -0
  644. casadi/libcholmod_cuda.4.0.3.dylib +0 -0
  645. casadi/libcolamd.3.0.3.dylib +0 -0
  646. casadi/libhighs.1.6.0.dylib +0 -0
  647. casadi/libhighs.1.6.dylib +0 -0
  648. casadi/libumfpack.6.1.0.dylib +0 -0
  649. {casadi-3.6.5.dist-info → casadi-3.6.7.dist-info}/WHEEL +0 -0
@@ -1,228 +0,0 @@
1
- #pragma once
2
-
3
- #include <alpaqa/outer/alm.hpp>
4
-
5
- #include <algorithm>
6
- #include <iomanip>
7
- #include <iostream>
8
- #include <utility>
9
-
10
- #include <alpaqa/config/config.hpp>
11
- #include <alpaqa/implementation/outer/internal/alm-helpers.tpp>
12
- #include <alpaqa/implementation/util/print.tpp>
13
- #include <alpaqa/inner/inner-solve-options.hpp>
14
- #include <alpaqa/inner/internal/solverstatus.hpp>
15
- #include <alpaqa/util/quadmath/quadmath-print.hpp>
16
-
17
- namespace alpaqa {
18
-
19
- template <class InnerSolverT>
20
- typename ALMSolver<InnerSolverT>::Stats
21
- ALMSolver<InnerSolverT>::operator()(const Problem &p, rvec x, rvec y) {
22
- using std::chrono::duration_cast;
23
- using std::chrono::nanoseconds;
24
- auto start_time = std::chrono::steady_clock::now();
25
-
26
- // Check the problem dimensions etc.
27
- p.check();
28
-
29
- auto m = p.get_m();
30
- if (m == 0) { // No general constraints, only box constraints
31
- Stats s;
32
- vec Σ(0), error(0);
33
- InnerSolveOptions<config_t> opts{
34
- .always_overwrite_results = true,
35
- .max_time = params.max_time,
36
- .tolerance = params.tolerance,
37
- .os = os,
38
- .check = false,
39
- };
40
- auto ps = inner_solver(p, opts, x, y, Σ, error);
41
- bool inner_converged = ps.status == SolverStatus::Converged;
42
- auto time_elapsed = std::chrono::steady_clock::now() - start_time;
43
- s.inner_convergence_failures = not inner_converged;
44
- s.inner += ps;
45
- s.ε = ps.ε;
46
- s.δ = 0;
47
- s.norm_penalty = 0;
48
- s.outer_iterations = 1;
49
- s.elapsed_time = duration_cast<nanoseconds>(time_elapsed);
50
- s.status = ps.status;
51
- return s;
52
- }
53
-
54
- constexpr auto NaN = alpaqa::NaN<config_t>;
55
- vec Σ = vec::Constant(m, NaN);
56
- vec Σ_old = vec::Constant(m, NaN);
57
- vec error_1 = vec::Constant(m, NaN);
58
- vec error_2 = vec::Constant(m, NaN);
59
- [[maybe_unused]] real_t norm_e_1 = NaN;
60
- [[maybe_unused]] real_t norm_e_2 = NaN;
61
-
62
- std::array<char, 64> printbuf;
63
- auto print_real = [&](real_t x) {
64
- return float_to_str_vw(printbuf, x, params.print_precision);
65
- };
66
-
67
- Stats s;
68
-
69
- // Initialize the penalty weights
70
- if (params.initial_penalty > 0) {
71
- Σ.fill(params.initial_penalty);
72
- }
73
- // Initial penalty weights from problem
74
- else {
75
- Helpers::initialize_penalty(p, params, x, Σ);
76
- }
77
-
78
- real_t ε = params.initial_tolerance;
79
- [[maybe_unused]] real_t ε_old = NaN;
80
- real_t Δ = params.penalty_update_factor;
81
- real_t ρ = params.tolerance_update_factor;
82
-
83
- unsigned num_successful_iters = 0;
84
-
85
- for (unsigned i = 0; i < params.max_iter; ++i) {
86
- // TODO: this is unnecessary when the previous iteration lowered the
87
- // penalty update factor.
88
- p.eval_proj_multipliers(y, params.max_multiplier);
89
- // Check if we're allowed to lower the penalty factor even further.
90
- bool out_of_penalty_factor_updates =
91
- (num_successful_iters == 0
92
- ? s.initial_penalty_reduced == params.max_num_initial_retries
93
- : s.penalty_reduced == params.max_num_retries) ||
94
- (s.initial_penalty_reduced + s.penalty_reduced ==
95
- params.max_total_num_retries);
96
- bool out_of_iter = i + 1 == params.max_iter;
97
- // If this is the final iteration, or the final chance to reduce the
98
- // penalty update factor, the inner solver can just return its results,
99
- // even if it doesn't converge.
100
- bool overwrite_results = out_of_iter || out_of_penalty_factor_updates;
101
-
102
- // Inner solver
103
- // ------------
104
-
105
- auto time_elapsed = std::chrono::steady_clock::now() - start_time;
106
- InnerSolveOptions<config_t> opts{
107
- .always_overwrite_results = overwrite_results,
108
- .max_time = params.max_time - time_elapsed,
109
- .tolerance = ε,
110
- .os = os,
111
- .outer_iter = i,
112
- .check = false,
113
- };
114
- // Call the inner solver to minimize the augmented lagrangian for fixed
115
- // Lagrange multipliers y.
116
- auto ps = inner_solver(p, opts, x, y, Σ, error_2);
117
- // Check if the inner solver converged
118
- bool inner_converged = ps.status == SolverStatus::Converged;
119
- // Accumulate the inner solver statistics
120
- s.inner_convergence_failures += not inner_converged;
121
- s.inner += ps;
122
-
123
- time_elapsed = std::chrono::steady_clock::now() - start_time;
124
- bool out_of_time = time_elapsed > params.max_time;
125
- bool backtrack =
126
- not inner_converged && not overwrite_results && not out_of_time;
127
-
128
- // Print statistics of current iteration
129
- if (params.print_interval != 0 && i % params.print_interval == 0) {
130
- real_t δ = backtrack ? NaN : vec_util::norm_inf(error_2);
131
- const char *color = inner_converged ? "\x1b[0;32m" : "\x1b[0;31m";
132
- const char *color_end = "\x1b[0m";
133
- *os << "[\x1b[0;34mALM\x1b[0m] " << std::setw(5) << i
134
- << ": ‖Σ‖ = " << print_real(Σ.norm())
135
- << ", ‖y‖ = " << print_real(y.norm())
136
- << ", δ = " << print_real(δ) << ", ε = " << print_real(ps.ε)
137
- << ", Δ = " << print_real(Δ) << ", status = " << color
138
- << std::setw(13) << ps.status << color_end
139
- << ", iter = " << std::setw(13) << ps.iterations
140
- << std::endl; // Flush for Python buffering
141
- }
142
-
143
- // TODO: check penalty size?
144
- if (ps.status == SolverStatus::Interrupted) {
145
- s.ε = ps.ε;
146
- s.δ = vec_util::norm_inf(error_2);
147
- s.norm_penalty = Σ.norm();
148
- s.outer_iterations = i + 1;
149
- s.elapsed_time = duration_cast<nanoseconds>(time_elapsed);
150
- s.status = ps.status;
151
- return s;
152
- }
153
-
154
- // Backtrack and lower penalty if inner solver did not converge
155
- if (backtrack) {
156
- // This means the inner solver didn't produce a solution that
157
- // satisfies the required tolerance.
158
- // The best thing we can do now is to restore the penalty to its
159
- // previous value (when the inner solver did converge), then lower
160
- // the penalty update factor Δ, and update the penalty with this
161
- // smaller factor.
162
- // On convergence failure, error_2 is not overwritten by the inner
163
- // solver, so it still contains the error from the iteration before
164
- // the previous successful iteration. error_1 contains the error of
165
- // the last successful iteration. (Unless, of course, there hasn't
166
- // been a successful iteration yet, which is covered by the second
167
- // branch of the following if statement.)
168
- if (num_successful_iters > 0) {
169
- // We have a previous Σ and error
170
- // Recompute penalty with smaller Δ
171
- Δ = std::fmax(params.min_penalty_update_factor,
172
- Δ * params.penalty_update_factor_lower);
173
- Helpers::update_penalty_weights(params, Δ, false, error_1,
174
- error_2, norm_e_1, norm_e_2,
175
- Σ_old, Σ, true);
176
- // Recompute the primal tolerance with larger ρ
177
- ρ = std::fmin(params.ρ_max, ρ * params.ρ_increase);
178
- ε = std::fmax(ρ * ε_old, params.tolerance);
179
- ++s.penalty_reduced;
180
- } else {
181
- // We don't have a previous Σ, simply lower the current Σ and
182
- // increase ε
183
- Σ *= params.initial_penalty_lower;
184
- ε *= params.initial_tolerance_increase;
185
- ++s.initial_penalty_reduced;
186
- }
187
- }
188
-
189
- // If the inner solver did converge, increase penalty
190
- else {
191
- // After this line, error_1 contains the error of the current
192
- // (successful) iteration, and error_2 contains the error of the
193
- // previous successful iteration.
194
- error_2.swap(error_1);
195
- norm_e_2 = std::exchange(norm_e_1, vec_util::norm_inf(error_1));
196
-
197
- // Check the termination criteria
198
- bool alm_converged = ps.ε <= params.tolerance && inner_converged &&
199
- norm_e_1 <= params.dual_tolerance;
200
- bool exit = alm_converged || out_of_iter || out_of_time;
201
- if (exit) {
202
- s.ε = ps.ε;
203
- s.δ = norm_e_1;
204
- s.norm_penalty = Σ.norm();
205
- s.outer_iterations = i + 1;
206
- s.elapsed_time = duration_cast<nanoseconds>(time_elapsed);
207
- s.status = alm_converged ? SolverStatus::Converged
208
- : out_of_time ? SolverStatus::MaxTime
209
- : out_of_iter ? SolverStatus::MaxIter
210
- : SolverStatus::Busy;
211
- return s;
212
- }
213
- // After this line, Σ_old contains the penalty used in the current
214
- // (successful) iteration.
215
- Σ_old.swap(Σ);
216
- // Update Σ to contain the penalty to use on the next iteration.
217
- Helpers::update_penalty_weights(
218
- params, Δ, num_successful_iters == 0, error_1, error_2,
219
- norm_e_1, norm_e_2, Σ_old, Σ, true);
220
- // Lower the primal tolerance for the inner solver.
221
- ε_old = std::exchange(ε, std::fmax(ρ * ε, params.tolerance));
222
- ++num_successful_iters;
223
- }
224
- }
225
- throw std::logic_error("[ALM] loop error");
226
- }
227
-
228
- } // namespace alpaqa
@@ -1,80 +0,0 @@
1
- #pragma once
2
-
3
- #include <alpaqa/outer/alm.hpp>
4
- #if ALPAQA_WITH_OCP
5
- #include <alpaqa/problem/ocproblem.hpp>
6
- #endif
7
-
8
- #include <algorithm>
9
-
10
- namespace alpaqa::detail {
11
-
12
- template <Config Conf>
13
- struct ALMHelpers {
14
- USING_ALPAQA_CONFIG(Conf);
15
-
16
- static void update_penalty_weights(const ALMParams<config_t> &params,
17
- real_t Δ, bool first_iter, rvec e,
18
- rvec old_e, real_t norm_e,
19
- real_t old_norm_e, crvec Σ_old, rvec Σ,
20
- bool monotone) {
21
- const real_t θ = params.rel_penalty_increase_threshold;
22
- if (norm_e <= params.dual_tolerance) {
23
- Σ = Σ_old;
24
- return;
25
- }
26
- if (params.single_penalty_factor) {
27
- if (first_iter || norm_e > θ * old_norm_e) {
28
- real_t new_Σ = std::fmin(params.max_penalty, Δ * Σ_old(0));
29
- Σ.setConstant(new_Σ);
30
- } else {
31
- Σ = Σ_old;
32
- }
33
- } else {
34
- for (index_t i = 0; i < e.rows(); ++i) {
35
- if (first_iter || std::abs(e(i)) > θ * std::abs(old_e(i))) {
36
- Σ(i) = std::fmin(params.max_penalty,
37
- std::fmax(Δ * std::abs(e(i)) / norm_e,
38
- real_t(1) * monotone) *
39
- Σ_old(i));
40
- } else {
41
- Σ(i) = Σ_old(i);
42
- }
43
- }
44
- }
45
- }
46
-
47
- static void initialize_penalty(const TypeErasedProblem<config_t> &p,
48
- const ALMParams<config_t> &params, crvec x0,
49
- rvec Σ) {
50
- real_t f0 = p.eval_f(x0);
51
- vec g0(p.get_m());
52
- p.eval_g(x0, g0);
53
- // TODO: reuse evaluations of f ang g in PANOC?
54
- real_t σ = params.initial_penalty_factor *
55
- std::max(real_t(1), std::abs(f0)) /
56
- std::max(real_t(1), real_t(0.5) * g0.squaredNorm());
57
- σ = std::clamp(σ, params.min_penalty, params.max_penalty);
58
- Σ.fill(σ);
59
- }
60
-
61
- #if ALPAQA_WITH_OCP
62
- static void initialize_penalty(
63
- [[maybe_unused]] const TypeErasedControlProblem<config_t> &p,
64
- const ALMParams<config_t> &params, [[maybe_unused]] crvec x0, rvec Σ) {
65
- real_t σ = 1;
66
- σ = std::clamp(σ, params.min_penalty, params.max_penalty);
67
- Σ.fill(σ);
68
- }
69
- #endif
70
- };
71
-
72
- ALPAQA_EXPORT_EXTERN_TEMPLATE(struct, ALMHelpers, DefaultConfig);
73
- ALPAQA_EXPORT_EXTERN_TEMPLATE(struct, ALMHelpers, EigenConfigf);
74
- ALPAQA_EXPORT_EXTERN_TEMPLATE(struct, ALMHelpers, EigenConfigd);
75
- ALPAQA_EXPORT_EXTERN_TEMPLATE(struct, ALMHelpers, EigenConfigl);
76
- #ifdef ALPAQA_WITH_QUAD_PRECISION
77
- ALPAQA_EXPORT_EXTERN_TEMPLATE(struct, ALMHelpers, EigenConfigq);
78
- #endif
79
-
80
- } // namespace alpaqa::detail
@@ -1,158 +0,0 @@
1
- #include <alpaqa/params/params.hpp>
2
-
3
- #include <alpaqa/config/config.hpp>
4
- #include <alpaqa/util/demangled-typename.hpp>
5
-
6
- #include <charconv>
7
- #include <chrono>
8
- #include <concepts>
9
- #include <map>
10
- #include <numeric>
11
- #include <stdexcept>
12
- #include <string_view>
13
- #include <system_error>
14
- #include <tuple>
15
- #include <type_traits>
16
-
17
- namespace alpaqa::params {
18
-
19
- using config_t = DefaultConfig;
20
-
21
- /// Throw a meaningful error when `s.key` is not empty, to indicate that
22
- /// the given type @p T is not of struct type and cannot be indexed into.
23
- template <class T>
24
- void assert_key_empty(ParamString s) {
25
- if (!s.key.empty())
26
- throw invalid_param("Type '" + demangled_typename(typeid(T)) +
27
- "' cannot be indexed in '" +
28
- std::string(s.full_key) + "'");
29
- }
30
-
31
- /// Throw a meaningful error to indicate that parameters of type @p T are not
32
- /// supported or implemented.
33
- template <class T>
34
- void unsupported_type(T &, [[maybe_unused]] ParamString s) {
35
- throw invalid_param("Unknown parameter type '" +
36
- demangled_typename(typeid(T)) + "' in '" +
37
- std::string(s.full_key) + "'");
38
- }
39
-
40
- template <>
41
- void set_param(bool &b, ParamString s);
42
-
43
- template <>
44
- void set_param(std::string_view &v, ParamString s);
45
-
46
- template <>
47
- void set_param(std::string &v, ParamString s);
48
-
49
- template <class T>
50
- requires((std::floating_point<T> || std::integral<T>) && !std::is_enum_v<T>)
51
- void set_param(T &f, ParamString s);
52
-
53
- template <>
54
- void set_param(vec<config_t> &v, ParamString s);
55
-
56
- template <>
57
- void set_param(vec_from_file<config_t> &v, ParamString s);
58
-
59
- template <class Rep, class Period>
60
- void set_param(std::chrono::duration<Rep, Period> &t, ParamString s);
61
-
62
- /// Return a function that applies @ref set_param to the given attribute of a
63
- /// value of type @p T.
64
- template <class T, class A>
65
- auto param_setter(A T::*attr) {
66
- return [attr](T &t, ParamString s) { return set_param(t.*attr, s); };
67
- }
68
-
69
- /// Function wrapper to set attributes of a struct, type-erasing the type of the
70
- /// attribute.
71
- template <class T>
72
- struct param_setter_fun_t {
73
- template <class A>
74
- param_setter_fun_t(A T::*attr) : set(param_setter(attr)) {}
75
- std::function<void(T &, ParamString)> set;
76
- void operator()(T &t, ParamString s) const { return set(t, s); }
77
- };
78
-
79
- /// Dictionary that maps struct attribute names to type-erased functions that
80
- /// set those attributes.
81
- template <class T>
82
- using dict_to_struct_table_t =
83
- std::map<std::string_view, param_setter_fun_t<T>>;
84
-
85
- /// Specialize this type to define the attribute name to attribute setters
86
- /// dictionaries for a struct type @p T.
87
- template <class T>
88
- struct dict_to_struct_table {};
89
-
90
- /// Return a string enumerating the possible attribute names for the struct type
91
- /// @p T.
92
- template <class T>
93
- auto possible_keys() {
94
- const auto &tbl = dict_to_struct_table<T>::table;
95
- if (tbl.empty())
96
- return std::string{};
97
- auto penult = std::prev(tbl.end());
98
- auto quote_concat = [](std::string &&a, auto b) {
99
- return a + "'" + std::string(b.first) + "', ";
100
- };
101
- return std::accumulate(tbl.begin(), penult, std::string{}, quote_concat) +
102
- "'" + std::string(penult->first) + "'";
103
- }
104
-
105
- /// Use @p s to index into the struct type @p T and overwrite the attribute
106
- /// given by @p s.key.
107
- template <class T>
108
- requires requires { dict_to_struct_table<T>::table; }
109
- void set_param(T &t, ParamString s) {
110
- const auto &m = dict_to_struct_table<T>::table;
111
- auto [key, remainder] = split_key(s.key);
112
- auto it = m.find(key);
113
- if (it == m.end())
114
- throw invalid_param("Invalid key '" + std::string(key) +
115
- "' for type '" + demangled_typename(typeid(T)) +
116
- "' in '" + std::string(s.full_key) +
117
- "',\n possible keys are: " + possible_keys<T>());
118
- s.key = remainder;
119
- it->second.set(t, s);
120
- }
121
-
122
- /// Overwrites @p t based on the @p options that start with @p prefix.
123
- /// If @p used is not `nullopt`, sets corresponding flag of the options that
124
- /// were used.
125
- template <class T>
126
- void set_params(
127
- T &t, std::string_view prefix, std::span<const std::string_view> options,
128
- std::optional<std::span<bool>> used) {
129
-
130
- size_t index = 0;
131
- for (const auto &kv : options) {
132
- auto [key, value] = split_key(kv, '=');
133
- auto [pfx, remainder] = split_key(key);
134
- auto curr_index = index++;
135
- if (pfx != prefix)
136
- continue;
137
- if (used)
138
- (*used)[curr_index] = true;
139
- set_param(t, {.full_key = kv, .key = remainder, .value = value});
140
- }
141
- }
142
-
143
- /// Helper macro to easily specialize @ref alpaqa::params::dict_to_struct_table.
144
- #define PARAMS_TABLE(type_, ...) \
145
- template <> \
146
- struct dict_to_struct_table<type_> { \
147
- using type = type_; \
148
- inline static const dict_to_struct_table_t<type> table{__VA_ARGS__}; \
149
- }
150
-
151
- /// Helper macro to easily initialize a
152
- /// @ref alpaqa::params::dict_to_struct_table_t.
153
- #define PARAMS_MEMBER(name) \
154
- { \
155
- #name, &type::name \
156
- }
157
-
158
- } // namespace alpaqa::params
@@ -1,56 +0,0 @@
1
- #pragma once
2
-
3
- #include <alpaqa/problem/ocproblem.hpp>
4
-
5
- namespace alpaqa {
6
-
7
- template <Config Conf>
8
- void ControlProblemVTable<Conf>::default_get_D_N(const void *self, Box &D,
9
- const ControlProblemVTable &vtable) {
10
- vtable.get_D(self, D, vtable);
11
- }
12
- template <Config Conf>
13
- void ControlProblemVTable<Conf>::default_eval_add_Q_N(const void *self, crvec x, crvec h, rmat Q,
14
- const ControlProblemVTable &vtable) {
15
- vtable.eval_add_Q(self, vtable.N, x, h, Q);
16
- }
17
- template <Config Conf>
18
- void ControlProblemVTable<Conf>::default_eval_add_R_prod_masked(const void *, index_t, crvec, crvec,
19
- crindexvec, crindexvec, crvec, rvec,
20
- rvec,
21
- const ControlProblemVTable &) {
22
- throw not_implemented_error("default_eval_add_R_prod_masked");
23
- }
24
- template <Config Conf>
25
- void ControlProblemVTable<Conf>::default_eval_add_S_prod_masked(const void *, index_t, crvec, crvec,
26
- crindexvec, crvec, rvec, rvec,
27
- const ControlProblemVTable &) {
28
- throw not_implemented_error("default_eval_add_S_prod_masked");
29
- }
30
- template <Config Conf>
31
- auto ControlProblemVTable<Conf>::default_get_R_work_size(const void *, const ControlProblemVTable &)
32
- -> length_t {
33
- return 0;
34
- }
35
- template <Config Conf>
36
- auto ControlProblemVTable<Conf>::default_get_S_work_size(const void *, const ControlProblemVTable &)
37
- -> length_t {
38
- return 0;
39
- }
40
- template <Config Conf>
41
- void ControlProblemVTable<Conf>::default_eval_constr_N(const void *self, crvec x, rvec c,
42
- const ControlProblemVTable &vtable) {
43
- vtable.eval_constr(self, vtable.N, x, c, vtable);
44
- }
45
- template <Config Conf>
46
- void ControlProblemVTable<Conf>::default_eval_grad_constr_prod_N(
47
- const void *self, crvec x, crvec p, rvec grad_cx_p, const ControlProblemVTable &vtable) {
48
- vtable.eval_grad_constr_prod(self, vtable.N, x, p, grad_cx_p, vtable);
49
- }
50
- template <Config Conf>
51
- void ControlProblemVTable<Conf>::default_eval_add_gn_hess_constr_N(
52
- const void *self, crvec x, crvec M, rmat out, const ControlProblemVTable &vtable) {
53
- vtable.eval_add_gn_hess_constr(self, vtable.N, x, M, out, vtable);
54
- }
55
-
56
- } // namespace alpaqa