casadi 3.6.5__cp39-none-win_amd64.whl → 3.6.6__cp39-none-win_amd64.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (502) 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 +663 -257
  7. casadi/cbc.exe +0 -0
  8. casadi/clp.exe +0 -0
  9. casadi/cmake/casadi-config-version.cmake +1 -1
  10. casadi/cmake/highs/highs-config.cmake +7 -14
  11. casadi/cmake/highs/highs-targets-release.cmake +13 -13
  12. casadi/cmake/highs/highs-targets.cmake +11 -9
  13. casadi/daqp.lib +0 -0
  14. casadi/fatrop.lib +0 -0
  15. casadi/highs.exe +0 -0
  16. casadi/highs.lib +0 -0
  17. casadi/hpipm.lib +0 -0
  18. casadi/include/casadi/casadi.i +3 -0
  19. casadi/include/casadi/casadi_c.h +2 -0
  20. casadi/include/casadi/config.h +8 -8
  21. casadi/include/casadi/core/casadi_common.hpp +1 -0
  22. casadi/include/casadi/core/casadi_misc.hpp +13 -0
  23. casadi/include/casadi/core/casadi_types.hpp +3 -2
  24. casadi/include/casadi/core/code_generator.hpp +30 -1
  25. casadi/include/casadi/core/global_options.hpp +2 -0
  26. casadi/include/casadi/core/mx.hpp +13 -3
  27. casadi/include/casadi/core/optistack.hpp +23 -0
  28. casadi/include/casadi/core/runtime/casadi_nlp.hpp +2 -0
  29. casadi/include/casadi/core/runtime/casadi_ocp_block.hpp +55 -0
  30. casadi/include/casadi/core/runtime/casadi_oracle.hpp +44 -0
  31. casadi/include/casadi/core/runtime/casadi_oracle_callback.hpp +39 -0
  32. casadi/include/casadi/core/runtime/casadi_runtime.hpp +4 -1
  33. casadi/include/casadi/core/runtime/casadi_scaled_copy.hpp +31 -0
  34. casadi/include/casadi/core/serializing_stream.hpp +2 -2
  35. casadi/include/casadi/core/sparsity.hpp +7 -0
  36. casadi/include/casadi/doc.i +1397 -955
  37. casadi/include/casadi/doc_merged.i +867 -675
  38. casadi/include/casadi/mem.h +1 -0
  39. casadi/include/daqp/api.h +46 -0
  40. casadi/include/daqp/auxiliary.h +29 -0
  41. casadi/include/daqp/bnb.h +32 -0
  42. casadi/include/daqp/codegen.h +18 -0
  43. casadi/include/daqp/constants.h +92 -0
  44. casadi/include/daqp/daqp.h +22 -0
  45. casadi/include/daqp/daqp_prox.h +18 -0
  46. casadi/include/daqp/factorization.h +18 -0
  47. casadi/include/daqp/types.h +161 -0
  48. casadi/include/daqp/utils.h +44 -0
  49. casadi/include/dlfcn.h +94 -0
  50. casadi/include/fatrop/auxiliary/Common.hpp +33 -0
  51. casadi/include/fatrop/auxiliary/DynamicLib.hpp +34 -0
  52. casadi/include/fatrop/auxiliary/FatropOptions.hpp +68 -0
  53. casadi/include/fatrop/auxiliary/FatropVector.hpp +143 -0
  54. casadi/include/fatrop/auxiliary/LinearAlgebra.hpp +88 -0
  55. casadi/include/fatrop/auxiliary/VectorUtils.hpp +54 -0
  56. casadi/include/fatrop/blasfeo_wrapper/LinearAlgebraBlasfeo.hpp +492 -0
  57. casadi/include/fatrop/function_evaluation/CasadiCodegen.hpp +104 -0
  58. casadi/include/fatrop/function_evaluation/FunctionEvaluation.hpp +60 -0
  59. casadi/include/fatrop/json/json.h +946 -0
  60. casadi/include/fatrop/ocp/CasadiCApiUserdataWrap.hpp +87 -0
  61. casadi/include/fatrop/ocp/DuInfEvaluator.hpp +38 -0
  62. casadi/include/fatrop/ocp/FatropOCP.hpp +161 -0
  63. casadi/include/fatrop/ocp/FatropOCPBuilder.hpp +52 -0
  64. casadi/include/fatrop/ocp/OCP.hpp +82 -0
  65. casadi/include/fatrop/ocp/OCPAbstract.hpp +254 -0
  66. casadi/include/fatrop/ocp/OCPAdapter.hpp +197 -0
  67. casadi/include/fatrop/ocp/OCPCInterface.h +289 -0
  68. casadi/include/fatrop/ocp/OCPDims.hpp +60 -0
  69. casadi/include/fatrop/ocp/OCPInitializer.hpp +41 -0
  70. casadi/include/fatrop/ocp/OCPKKT.hpp +69 -0
  71. casadi/include/fatrop/ocp/OCPLSRiccati.hpp +191 -0
  72. casadi/include/fatrop/ocp/OCPLSScaler.hpp +66 -0
  73. casadi/include/fatrop/ocp/OCPLinearSolver.hpp +75 -0
  74. casadi/include/fatrop/ocp/OCPNoScaling.hpp +42 -0
  75. casadi/include/fatrop/ocp/OCPScalingMethod.hpp +42 -0
  76. casadi/include/fatrop/ocp/StageOCP.hpp +592 -0
  77. casadi/include/fatrop/ocp/StageOCPApplication.hpp +242 -0
  78. casadi/include/fatrop/ocp/StageOCPExpressions.hpp +182 -0
  79. casadi/include/fatrop/ocp/UStageEvalAbstract.hpp +168 -0
  80. casadi/include/fatrop/ocp/UStageOCPImpl.hpp +152 -0
  81. casadi/include/fatrop/quasi_newton/bfgs.hpp +159 -0
  82. casadi/include/fatrop/solver/AlgBuilder.hpp +66 -0
  83. casadi/include/fatrop/solver/AlgStrategy.hpp +33 -0
  84. casadi/include/fatrop/solver/FatropAlg.hpp +108 -0
  85. casadi/include/fatrop/solver/FatropData.hpp +188 -0
  86. casadi/include/fatrop/solver/FatropOptions.hpp +94 -0
  87. casadi/include/fatrop/solver/FatropPrinter.hpp +65 -0
  88. casadi/include/fatrop/solver/FatropStats.hpp +63 -0
  89. casadi/include/fatrop/solver/Filter.hpp +54 -0
  90. casadi/include/fatrop/solver/IterationData.hpp +55 -0
  91. casadi/include/fatrop/solver/LineSearch.hpp +86 -0
  92. casadi/include/fatrop/solver/NLPL1.hpp +263 -0
  93. casadi/include/fatrop/templates/NLPAlg.hpp +102 -0
  94. casadi/include/highs/HConfig.h +6 -5
  95. casadi/include/highs/Highs.h +93 -23
  96. casadi/include/highs/filereaderlp/def.hpp +19 -0
  97. casadi/include/highs/interfaces/highs_c_api.h +200 -24
  98. casadi/include/highs/io/Filereader.h +1 -1
  99. casadi/include/highs/io/FilereaderEms.h +1 -1
  100. casadi/include/highs/io/FilereaderLp.h +1 -1
  101. casadi/include/highs/io/FilereaderMps.h +1 -1
  102. casadi/include/highs/io/HMPSIO.h +1 -1
  103. casadi/include/highs/io/HMpsFF.h +5 -3
  104. casadi/include/highs/io/HighsIO.h +18 -8
  105. casadi/include/highs/io/LoadOptions.h +1 -1
  106. casadi/include/highs/ipm/IpxSolution.h +35 -0
  107. casadi/include/highs/ipm/IpxWrapper.h +1 -1
  108. casadi/include/highs/ipm/basiclu/basiclu.h +161 -0
  109. casadi/include/highs/ipm/basiclu/basiclu_factorize.h +247 -0
  110. casadi/include/highs/ipm/basiclu/basiclu_get_factors.h +108 -0
  111. casadi/include/highs/ipm/basiclu/basiclu_initialize.h +119 -0
  112. casadi/include/highs/ipm/basiclu/basiclu_obj_factorize.h +34 -0
  113. casadi/include/highs/ipm/basiclu/basiclu_obj_free.h +19 -0
  114. casadi/include/highs/ipm/basiclu/basiclu_obj_get_factors.h +34 -0
  115. casadi/include/highs/ipm/basiclu/basiclu_obj_initialize.h +46 -0
  116. casadi/include/highs/ipm/basiclu/basiclu_obj_solve_dense.h +29 -0
  117. casadi/include/highs/ipm/basiclu/basiclu_obj_solve_for_update.h +42 -0
  118. casadi/include/highs/ipm/basiclu/basiclu_obj_solve_sparse.h +32 -0
  119. casadi/include/highs/ipm/basiclu/basiclu_obj_update.h +31 -0
  120. casadi/include/highs/ipm/basiclu/basiclu_object.h +30 -0
  121. casadi/include/highs/ipm/basiclu/basiclu_solve_dense.h +75 -0
  122. casadi/include/highs/ipm/basiclu/basiclu_solve_for_update.h +169 -0
  123. casadi/include/highs/ipm/basiclu/basiclu_solve_sparse.h +112 -0
  124. casadi/include/highs/ipm/basiclu/basiclu_update.h +125 -0
  125. casadi/include/highs/ipm/basiclu/lu_def.h +39 -0
  126. casadi/include/highs/ipm/basiclu/lu_file.h +21 -0
  127. casadi/include/highs/ipm/basiclu/lu_internal.h +220 -0
  128. casadi/include/highs/ipm/basiclu/lu_list.h +168 -0
  129. casadi/include/highs/ipm/ipx/basiclu_kernel.h +20 -0
  130. casadi/include/highs/ipm/ipx/basiclu_wrapper.h +47 -0
  131. casadi/include/highs/ipm/ipx/basis.h +351 -0
  132. casadi/include/highs/ipm/ipx/conjugate_residuals.h +74 -0
  133. casadi/include/highs/ipm/ipx/control.h +163 -0
  134. casadi/include/highs/ipm/ipx/crossover.h +157 -0
  135. casadi/include/highs/ipm/ipx/diagonal_precond.h +45 -0
  136. casadi/include/highs/ipm/ipx/forrest_tomlin.h +102 -0
  137. casadi/include/highs/ipm/ipx/guess_basis.h +21 -0
  138. casadi/include/highs/ipm/ipx/indexed_vector.h +113 -0
  139. casadi/include/highs/ipm/ipx/info.h +27 -0
  140. casadi/include/highs/ipm/ipx/ipm.h +94 -0
  141. casadi/include/highs/ipm/ipx/ipx_c.h +47 -0
  142. casadi/include/highs/ipm/ipx/ipx_config.h +9 -0
  143. casadi/include/highs/ipm/ipx/ipx_info.h +111 -0
  144. casadi/include/highs/ipm/ipx/ipx_internal.h +88 -0
  145. casadi/include/highs/ipm/ipx/ipx_parameters.h +75 -0
  146. casadi/include/highs/ipm/ipx/ipx_status.h +57 -0
  147. casadi/include/highs/ipm/ipx/iterate.h +328 -0
  148. casadi/include/highs/ipm/ipx/kkt_solver.h +70 -0
  149. casadi/include/highs/ipm/ipx/kkt_solver_basis.h +66 -0
  150. casadi/include/highs/ipm/ipx/kkt_solver_diag.h +48 -0
  151. casadi/include/highs/ipm/ipx/linear_operator.h +26 -0
  152. casadi/include/highs/ipm/ipx/lp_solver.h +201 -0
  153. casadi/include/highs/ipm/ipx/lu_factorization.h +79 -0
  154. casadi/include/highs/ipm/ipx/lu_update.h +129 -0
  155. casadi/include/highs/ipm/ipx/maxvolume.h +54 -0
  156. casadi/include/highs/ipm/ipx/model.h +409 -0
  157. casadi/include/highs/ipm/ipx/multistream.h +52 -0
  158. casadi/include/highs/ipm/ipx/normal_matrix.h +44 -0
  159. casadi/include/highs/ipm/ipx/power_method.h +44 -0
  160. casadi/include/highs/ipm/ipx/sparse_matrix.h +195 -0
  161. casadi/include/highs/ipm/ipx/sparse_utils.h +58 -0
  162. casadi/include/highs/ipm/ipx/splitted_normal_matrix.h +63 -0
  163. casadi/include/highs/ipm/ipx/starting_basis.h +39 -0
  164. casadi/include/highs/ipm/ipx/symbolic_invert.h +29 -0
  165. casadi/include/highs/ipm/ipx/timer.h +24 -0
  166. casadi/include/highs/ipm/ipx/utils.h +39 -0
  167. casadi/include/highs/lp_data/HConst.h +20 -10
  168. casadi/include/highs/lp_data/HStruct.h +23 -1
  169. casadi/include/highs/lp_data/HighsAnalysis.h +1 -1
  170. casadi/include/highs/lp_data/HighsCallback.h +10 -3
  171. casadi/include/highs/lp_data/HighsCallbackStruct.h +31 -5
  172. casadi/include/highs/lp_data/HighsDebug.h +1 -1
  173. casadi/include/highs/lp_data/HighsInfo.h +20 -2
  174. casadi/include/highs/lp_data/HighsInfoDebug.h +1 -1
  175. casadi/include/highs/lp_data/HighsLp.h +17 -1
  176. casadi/include/highs/lp_data/HighsLpSolverObject.h +1 -1
  177. casadi/include/highs/lp_data/HighsLpUtils.h +19 -19
  178. casadi/include/highs/lp_data/HighsModelUtils.h +1 -1
  179. casadi/include/highs/lp_data/HighsOptions.h +237 -10
  180. casadi/include/highs/lp_data/HighsRanging.h +1 -1
  181. casadi/include/highs/lp_data/HighsRuntimeOptions.h +2 -2
  182. casadi/include/highs/lp_data/HighsSolution.h +2 -2
  183. casadi/include/highs/lp_data/HighsSolutionDebug.h +1 -1
  184. casadi/include/highs/lp_data/HighsSolve.h +3 -1
  185. casadi/include/highs/lp_data/HighsStatus.h +1 -1
  186. casadi/include/highs/mip/HighsCliqueTable.h +4 -4
  187. casadi/include/highs/mip/HighsConflictPool.h +1 -1
  188. casadi/include/highs/mip/HighsCutGeneration.h +1 -1
  189. casadi/include/highs/mip/HighsCutPool.h +2 -2
  190. casadi/include/highs/mip/HighsDebugSol.h +22 -29
  191. casadi/include/highs/mip/HighsDomain.h +10 -2
  192. casadi/include/highs/mip/HighsDomainChange.h +1 -1
  193. casadi/include/highs/mip/HighsDynamicRowMatrix.h +5 -3
  194. casadi/include/highs/mip/HighsGFkSolve.h +3 -3
  195. casadi/include/highs/mip/HighsImplications.h +3 -3
  196. casadi/include/highs/mip/HighsLpAggregator.h +1 -1
  197. casadi/include/highs/mip/HighsLpRelaxation.h +6 -1
  198. casadi/include/highs/mip/HighsMipSolver.h +4 -2
  199. casadi/include/highs/mip/HighsMipSolverData.h +47 -4
  200. casadi/include/highs/mip/HighsModkSeparator.h +2 -2
  201. casadi/include/highs/mip/HighsNodeQueue.h +5 -3
  202. casadi/include/highs/mip/HighsObjectiveFunction.h +1 -1
  203. casadi/include/highs/mip/HighsPathSeparator.h +2 -2
  204. casadi/include/highs/mip/HighsPrimalHeuristics.h +1 -1
  205. casadi/include/highs/mip/HighsPseudocost.h +35 -23
  206. casadi/include/highs/mip/HighsRedcostFixing.h +1 -1
  207. casadi/include/highs/mip/HighsSearch.h +2 -1
  208. casadi/include/highs/mip/HighsSeparation.h +1 -1
  209. casadi/include/highs/mip/HighsSeparator.h +1 -1
  210. casadi/include/highs/mip/HighsTableauSeparator.h +1 -1
  211. casadi/include/highs/mip/HighsTransformedLp.h +1 -1
  212. casadi/include/highs/model/HighsHessian.h +5 -0
  213. casadi/include/highs/model/HighsHessianUtils.h +2 -0
  214. casadi/include/highs/model/HighsModel.h +10 -1
  215. casadi/include/highs/parallel/HighsMutex.h +2 -1
  216. casadi/include/highs/parallel/HighsParallel.h +7 -2
  217. casadi/include/highs/parallel/HighsTask.h +1 -2
  218. casadi/include/highs/pdlp/CupdlpWrapper.h +93 -0
  219. casadi/include/highs/pdlp/cupdlp/cupdlp_cs.h +41 -0
  220. casadi/include/highs/pdlp/cupdlp/cupdlp_defs.h +423 -0
  221. casadi/include/highs/pdlp/cupdlp/cupdlp_linalg.h +183 -0
  222. casadi/include/highs/pdlp/cupdlp/cupdlp_proj.h +19 -0
  223. casadi/include/highs/pdlp/cupdlp/cupdlp_restart.h +31 -0
  224. casadi/include/highs/pdlp/cupdlp/cupdlp_scaling_cuda.h +28 -0
  225. casadi/include/highs/pdlp/cupdlp/cupdlp_solver.h +98 -0
  226. casadi/include/highs/pdlp/cupdlp/cupdlp_step.h +33 -0
  227. casadi/include/highs/pdlp/cupdlp/cupdlp_utils.c +1726 -0
  228. casadi/include/highs/pdqsort/pdqsort.h +532 -0
  229. casadi/include/highs/presolve/HPresolve.h +27 -14
  230. casadi/include/highs/presolve/HPresolveAnalysis.h +1 -1
  231. casadi/include/highs/presolve/HighsPostsolveStack.h +92 -68
  232. casadi/include/highs/presolve/HighsSymmetry.h +6 -5
  233. casadi/include/highs/presolve/ICrash.h +8 -2
  234. casadi/include/highs/presolve/ICrashUtil.h +1 -1
  235. casadi/include/highs/presolve/ICrashX.h +1 -1
  236. casadi/include/highs/presolve/PresolveComponent.h +1 -1
  237. casadi/include/highs/qpsolver/a_asm.hpp +23 -12
  238. casadi/include/highs/qpsolver/a_quass.hpp +8 -1
  239. casadi/include/highs/qpsolver/basis.hpp +150 -0
  240. casadi/include/highs/qpsolver/crashsolution.hpp +12 -0
  241. casadi/include/highs/qpsolver/dantzigpricing.hpp +72 -0
  242. casadi/include/highs/qpsolver/devexpricing.hpp +99 -0
  243. casadi/include/highs/qpsolver/eventhandler.hpp +23 -0
  244. casadi/include/highs/qpsolver/factor.hpp +400 -0
  245. casadi/include/highs/qpsolver/feasibility_bounded.hpp +105 -0
  246. casadi/include/highs/qpsolver/feasibility_highs.hpp +270 -0
  247. casadi/include/highs/qpsolver/gradient.hpp +39 -0
  248. casadi/include/highs/qpsolver/instance.hpp +63 -0
  249. casadi/include/highs/qpsolver/matrix.hpp +335 -0
  250. casadi/include/highs/qpsolver/pricing.hpp +15 -0
  251. casadi/include/highs/qpsolver/qpconst.hpp +27 -0
  252. casadi/include/highs/qpsolver/{vector.hpp → qpvector.hpp} +25 -25
  253. casadi/include/highs/qpsolver/quass.hpp +1 -1
  254. casadi/include/highs/qpsolver/ratiotest.hpp +19 -0
  255. casadi/include/highs/qpsolver/runtime.hpp +38 -0
  256. casadi/include/highs/qpsolver/settings.hpp +57 -0
  257. casadi/include/highs/qpsolver/snippets.hpp +29 -0
  258. casadi/include/highs/qpsolver/statistics.hpp +23 -0
  259. casadi/include/highs/qpsolver/steepestedgepricing.hpp +167 -0
  260. casadi/include/highs/simplex/HApp.h +1 -1
  261. casadi/include/highs/simplex/HEkk.h +52 -18
  262. casadi/include/highs/simplex/HEkkDual.h +1 -1
  263. casadi/include/highs/simplex/HEkkDualRHS.h +6 -7
  264. casadi/include/highs/simplex/HEkkDualRow.h +2 -2
  265. casadi/include/highs/simplex/HEkkPrimal.h +6 -1
  266. casadi/include/highs/simplex/HSimplex.h +1 -3
  267. casadi/include/highs/simplex/HSimplexDebug.h +1 -1
  268. casadi/include/highs/simplex/HSimplexNla.h +1 -1
  269. casadi/include/highs/simplex/HSimplexReport.h +1 -1
  270. casadi/include/highs/simplex/HighsSimplexAnalysis.h +228 -100
  271. casadi/include/highs/simplex/SimplexConst.h +1 -1
  272. casadi/include/highs/simplex/SimplexStruct.h +2 -2
  273. casadi/include/highs/simplex/SimplexTimer.h +1 -1
  274. casadi/include/highs/test/DevKkt.h +1 -1
  275. casadi/include/highs/test/KktCh2.h +1 -1
  276. casadi/include/highs/util/FactorTimer.h +1 -1
  277. casadi/include/highs/util/HFactor.h +35 -6
  278. casadi/include/highs/util/HFactorConst.h +1 -1
  279. casadi/include/highs/util/HFactorDebug.h +1 -1
  280. casadi/include/highs/util/HSet.h +1 -1
  281. casadi/include/highs/util/HVector.h +1 -1
  282. casadi/include/highs/util/HVectorBase.h +1 -1
  283. casadi/include/highs/util/HighsCDouble.h +3 -3
  284. casadi/include/highs/util/HighsComponent.h +1 -1
  285. casadi/include/highs/util/HighsDataStack.h +4 -4
  286. casadi/include/highs/util/HighsDisjointSets.h +1 -1
  287. casadi/include/highs/util/HighsHash.h +28 -21
  288. casadi/include/highs/util/HighsHashTree.h +63 -63
  289. casadi/include/highs/util/HighsInt.h +1 -1
  290. casadi/include/highs/util/HighsIntegers.h +8 -9
  291. casadi/include/highs/util/HighsLinearSumBounds.h +1 -1
  292. casadi/include/highs/util/HighsMatrixPic.h +1 -1
  293. casadi/include/highs/util/HighsMatrixSlice.h +9 -6
  294. casadi/include/highs/util/HighsMatrixUtils.h +1 -1
  295. casadi/include/highs/util/HighsMemoryAllocation.h +55 -0
  296. casadi/include/highs/util/HighsRandom.h +27 -15
  297. casadi/include/highs/util/HighsRbTree.h +2 -2
  298. casadi/include/highs/util/HighsSort.h +7 -7
  299. casadi/include/highs/util/HighsSparseMatrix.h +5 -2
  300. casadi/include/highs/util/HighsSparseVectorSum.h +2 -2
  301. casadi/include/highs/util/HighsSplay.h +1 -1
  302. casadi/include/highs/util/HighsTimer.h +18 -9
  303. casadi/include/highs/util/HighsUtils.h +15 -8
  304. casadi/include/highs/util/stringutil.h +9 -4
  305. casadi/include/highs/zstr/strict_fstream.hpp +237 -0
  306. casadi/include/highs/zstr/zstr.hpp +472 -0
  307. casadi/include/highs_export.h +42 -0
  308. casadi/include/licenses/daqp-external/LICENSE +21 -0
  309. casadi/include/licenses/fatrop-external/LICENSE.txt +165 -0
  310. casadi/include/licenses/fatrop-external/external/blasfeo/LICENSE.txt +26 -0
  311. casadi/include/licenses/fatrop-external/external/pybind11/LICENSE +29 -0
  312. casadi/include/licenses/highs-external/{LICENSE → LICENSE.txt} +1 -1
  313. casadi/include/osqp/constants.h +2 -3
  314. casadi/include/osqp/version.h +9 -0
  315. casadi/include/sleqp/defs.h +2 -2
  316. casadi/ipopt.lib +0 -0
  317. casadi/lapack.lib +0 -0
  318. casadi/lib/libtinyxml2.dll.a +0 -0
  319. casadi/libCbc-3.dll +0 -0
  320. casadi/libCbc.dll.a +0 -0
  321. casadi/libCbcSolver-3.dll +0 -0
  322. casadi/libCbcSolver.dll.a +0 -0
  323. casadi/libCgl-1.dll +0 -0
  324. casadi/libCgl.dll.a +0 -0
  325. casadi/libClp-1.dll +0 -0
  326. casadi/libClp.dll.a +0 -0
  327. casadi/libClpSolver-1.dll +0 -0
  328. casadi/libClpSolver.dll.a +0 -0
  329. casadi/libCoinUtils-3.dll +0 -0
  330. casadi/libCoinUtils.dll.a +0 -0
  331. casadi/libOsi-1.dll +0 -0
  332. casadi/libOsi.dll.a +0 -0
  333. casadi/libOsiCbc-3.dll +0 -0
  334. casadi/libOsiCbc.dll.a +0 -0
  335. casadi/libOsiClp-1.dll +0 -0
  336. casadi/libOsiClp.dll.a +0 -0
  337. casadi/libOsiCommonTests-1.dll +0 -0
  338. casadi/libOsiCommonTests.dll.a +0 -0
  339. casadi/libalpaqa.dll +0 -0
  340. casadi/libalpaqa.dll.a +0 -0
  341. casadi/libblasfeo.dll +0 -0
  342. casadi/libblasfeo.dll.a +0 -0
  343. casadi/libbonmin-4.dll +0 -0
  344. casadi/libbonmin.dll.a +0 -0
  345. casadi/libcasadi-tp-openblas.dll +0 -0
  346. casadi/libcasadi-tp-openblas.dll.a +0 -0
  347. casadi/libcasadi.dll +0 -0
  348. casadi/libcasadi.dll.a +0 -0
  349. casadi/libcasadi_conic_cbc.dll +0 -0
  350. casadi/libcasadi_conic_cbc.dll.a +0 -0
  351. casadi/libcasadi_conic_clp.dll +0 -0
  352. casadi/libcasadi_conic_clp.dll.a +0 -0
  353. casadi/libcasadi_conic_cplex.dll +0 -0
  354. casadi/libcasadi_conic_cplex.dll.a +0 -0
  355. casadi/libcasadi_conic_daqp.dll +0 -0
  356. casadi/libcasadi_conic_daqp.dll.a +0 -0
  357. casadi/libcasadi_conic_fatrop.dll +0 -0
  358. casadi/libcasadi_conic_fatrop.dll.a +0 -0
  359. casadi/libcasadi_conic_gurobi.dll +0 -0
  360. casadi/libcasadi_conic_gurobi.dll.a +0 -0
  361. casadi/libcasadi_conic_highs.dll +0 -0
  362. casadi/libcasadi_conic_highs.dll.a +0 -0
  363. casadi/libcasadi_conic_hpipm.dll +0 -0
  364. casadi/libcasadi_conic_hpipm.dll.a +0 -0
  365. casadi/libcasadi_conic_ipqp.dll +0 -0
  366. casadi/libcasadi_conic_ipqp.dll.a +0 -0
  367. casadi/libcasadi_conic_nlpsol.dll +0 -0
  368. casadi/libcasadi_conic_nlpsol.dll.a +0 -0
  369. casadi/libcasadi_conic_osqp.dll +0 -0
  370. casadi/libcasadi_conic_osqp.dll.a +0 -0
  371. casadi/libcasadi_conic_proxqp.dll +0 -0
  372. casadi/libcasadi_conic_proxqp.dll.a +0 -0
  373. casadi/libcasadi_conic_qpoases.dll +0 -0
  374. casadi/libcasadi_conic_qpoases.dll.a +0 -0
  375. casadi/libcasadi_conic_qrqp.dll +0 -0
  376. casadi/libcasadi_conic_qrqp.dll.a +0 -0
  377. casadi/libcasadi_conic_superscs.dll +0 -0
  378. casadi/libcasadi_conic_superscs.dll.a +0 -0
  379. casadi/libcasadi_importer_shell.dll +0 -0
  380. casadi/libcasadi_importer_shell.dll.a +0 -0
  381. casadi/libcasadi_integrator_collocation.dll +0 -0
  382. casadi/libcasadi_integrator_collocation.dll.a +0 -0
  383. casadi/libcasadi_integrator_cvodes.dll +0 -0
  384. casadi/libcasadi_integrator_cvodes.dll.a +0 -0
  385. casadi/libcasadi_integrator_idas.dll +0 -0
  386. casadi/libcasadi_integrator_idas.dll.a +0 -0
  387. casadi/libcasadi_integrator_rk.dll +0 -0
  388. casadi/libcasadi_integrator_rk.dll.a +0 -0
  389. casadi/libcasadi_interpolant_bspline.dll +0 -0
  390. casadi/libcasadi_interpolant_bspline.dll.a +0 -0
  391. casadi/libcasadi_interpolant_linear.dll +0 -0
  392. casadi/libcasadi_interpolant_linear.dll.a +0 -0
  393. casadi/libcasadi_linsol_csparse.dll +0 -0
  394. casadi/libcasadi_linsol_csparse.dll.a +0 -0
  395. casadi/libcasadi_linsol_csparsecholesky.dll +0 -0
  396. casadi/libcasadi_linsol_csparsecholesky.dll.a +0 -0
  397. casadi/libcasadi_linsol_lapacklu.dll +0 -0
  398. casadi/libcasadi_linsol_lapacklu.dll.a +0 -0
  399. casadi/libcasadi_linsol_lapackqr.dll +0 -0
  400. casadi/libcasadi_linsol_lapackqr.dll.a +0 -0
  401. casadi/libcasadi_linsol_ldl.dll +0 -0
  402. casadi/libcasadi_linsol_ldl.dll.a +0 -0
  403. casadi/libcasadi_linsol_lsqr.dll +0 -0
  404. casadi/libcasadi_linsol_lsqr.dll.a +0 -0
  405. casadi/libcasadi_linsol_ma27.dll +0 -0
  406. casadi/libcasadi_linsol_ma27.dll.a +0 -0
  407. casadi/libcasadi_linsol_mumps.dll +0 -0
  408. casadi/libcasadi_linsol_mumps.dll.a +0 -0
  409. casadi/libcasadi_linsol_qr.dll +0 -0
  410. casadi/libcasadi_linsol_qr.dll.a +0 -0
  411. casadi/libcasadi_linsol_symbolicqr.dll +0 -0
  412. casadi/libcasadi_linsol_symbolicqr.dll.a +0 -0
  413. casadi/libcasadi_linsol_tridiag.dll +0 -0
  414. casadi/libcasadi_linsol_tridiag.dll.a +0 -0
  415. casadi/libcasadi_nlpsol_alpaqa.dll +0 -0
  416. casadi/libcasadi_nlpsol_alpaqa.dll.a +0 -0
  417. casadi/libcasadi_nlpsol_ampl.dll +0 -0
  418. casadi/libcasadi_nlpsol_ampl.dll.a +0 -0
  419. casadi/libcasadi_nlpsol_blocksqp.dll +0 -0
  420. casadi/libcasadi_nlpsol_blocksqp.dll.a +0 -0
  421. casadi/libcasadi_nlpsol_bonmin.dll +0 -0
  422. casadi/libcasadi_nlpsol_bonmin.dll.a +0 -0
  423. casadi/libcasadi_nlpsol_fatrop.dll +0 -0
  424. casadi/libcasadi_nlpsol_fatrop.dll.a +0 -0
  425. casadi/libcasadi_nlpsol_feasiblesqpmethod.dll +0 -0
  426. casadi/libcasadi_nlpsol_feasiblesqpmethod.dll.a +0 -0
  427. casadi/libcasadi_nlpsol_ipopt.dll +0 -0
  428. casadi/libcasadi_nlpsol_ipopt.dll.a +0 -0
  429. casadi/libcasadi_nlpsol_knitro.dll +0 -0
  430. casadi/libcasadi_nlpsol_knitro.dll.a +0 -0
  431. casadi/libcasadi_nlpsol_madnlp.dll +0 -0
  432. casadi/libcasadi_nlpsol_madnlp.dll.a +0 -0
  433. casadi/libcasadi_nlpsol_qrsqp.dll +0 -0
  434. casadi/libcasadi_nlpsol_qrsqp.dll.a +0 -0
  435. casadi/libcasadi_nlpsol_scpgen.dll +0 -0
  436. casadi/libcasadi_nlpsol_scpgen.dll.a +0 -0
  437. casadi/libcasadi_nlpsol_sleqp.dll +0 -0
  438. casadi/libcasadi_nlpsol_sleqp.dll.a +0 -0
  439. casadi/libcasadi_nlpsol_snopt.dll +0 -0
  440. casadi/libcasadi_nlpsol_snopt.dll.a +0 -0
  441. casadi/libcasadi_nlpsol_sqpmethod.dll +0 -0
  442. casadi/libcasadi_nlpsol_sqpmethod.dll.a +0 -0
  443. casadi/libcasadi_nlpsol_worhp.dll +0 -0
  444. casadi/libcasadi_nlpsol_worhp.dll.a +0 -0
  445. casadi/libcasadi_rootfinder_fast_newton.dll +0 -0
  446. casadi/libcasadi_rootfinder_fast_newton.dll.a +0 -0
  447. casadi/libcasadi_rootfinder_kinsol.dll +0 -0
  448. casadi/libcasadi_rootfinder_kinsol.dll.a +0 -0
  449. casadi/libcasadi_rootfinder_newton.dll +0 -0
  450. casadi/libcasadi_rootfinder_newton.dll.a +0 -0
  451. casadi/libcasadi_rootfinder_nlpsol.dll +0 -0
  452. casadi/libcasadi_rootfinder_nlpsol.dll.a +0 -0
  453. casadi/libcasadi_sundials_common.dll +0 -0
  454. casadi/libcasadi_sundials_common.dll.a +0 -0
  455. casadi/libcasadi_xmlfile_tinyxml.dll +0 -0
  456. casadi/libcasadi_xmlfile_tinyxml.dll.a +0 -0
  457. casadi/libcoinmetis-2.dll +0 -0
  458. casadi/libcoinmetis.dll.a +0 -0
  459. casadi/libcoinmumps-3.dll +0 -0
  460. casadi/libcoinmumps.dll.a +0 -0
  461. casadi/libcplex_adaptor.dll +0 -0
  462. casadi/libdaqp.dll +0 -0
  463. casadi/libdaqp.dll.a +0 -0
  464. casadi/libdaqpstat.a +0 -0
  465. casadi/{libFortranHighs.dll → libdl.dll} +0 -0
  466. casadi/libdl.dll.a +0 -0
  467. casadi/libfatrop.dll +0 -0
  468. casadi/libfatrop.dll.a +0 -0
  469. casadi/libgurobi_adaptor.dll +0 -0
  470. casadi/libhighs.dll +0 -0
  471. casadi/libhighs.dll.a +0 -0
  472. casadi/libhpipm.dll +0 -0
  473. casadi/libhpipm.dll.a +0 -0
  474. casadi/libipopt-3.dll +0 -0
  475. casadi/libipopt.dll.a +0 -0
  476. casadi/libmatlab_ipc.dll +0 -0
  477. casadi/libmatlab_ipc.dll.a +0 -0
  478. casadi/libosqp.a +0 -0
  479. casadi/libosqp.dll +0 -0
  480. casadi/libosqp.dll.a +0 -0
  481. casadi/libqdldl.dll +0 -0
  482. casadi/libqdldl.dll.a +0 -0
  483. casadi/libsipopt-3.dll +0 -0
  484. casadi/libsipopt.dll.a +0 -0
  485. casadi/libsleqp.dll +0 -0
  486. casadi/libsleqp.dll.a +0 -0
  487. casadi/libtinyxml2.dll +0 -0
  488. casadi/libtrlib.dll +0 -0
  489. casadi/libtrlib.dll.a +0 -0
  490. casadi/matlab_ipc.lib +0 -0
  491. casadi/osqp.lib +0 -0
  492. casadi/pkgconfig/casadi.pc +1 -1
  493. casadi/pkgconfig/highs.pc +1 -1
  494. casadi/sleqp.lib +0 -0
  495. casadi/spral_ssids.exe +0 -0
  496. casadi/tools/__init__.py +4 -0
  497. casadi/tools/bounds.py +3 -3
  498. {casadi-3.6.5.dist-info → casadi-3.6.6.dist-info}/METADATA +2 -2
  499. {casadi-3.6.5.dist-info → casadi-3.6.6.dist-info}/RECORD +500 -324
  500. casadi/include/highs/fortran/highs_fortran_api.mod +0 -0
  501. casadi/libFortranHighs.dll.a +0 -0
  502. {casadi-3.6.5.dist-info → casadi-3.6.6.dist-info}/WHEEL +0 -0
@@ -2,7 +2,7 @@
2
2
  /* */
3
3
  /* This file is part of the HiGHS linear optimization suite */
4
4
  /* */
5
- /* Written and engineered 2008-2023 by Julian Hall, Ivet Galabova, */
5
+ /* Written and engineered 2008-2024 by Julian Hall, Ivet Galabova, */
6
6
  /* Leona Gottwald and Michael Feldmeier */
7
7
  /* */
8
8
  /* Available as open-source under the MIT License */
@@ -49,10 +49,9 @@ class HEkkDualRHS {
49
49
  * @brief Choose a set of row indices of good variables to leave the basis
50
50
  * (Multiple CHUZR)
51
51
  */
52
- void chooseMultiGlobal(
53
- HighsInt* chIndex, //!< Set of indices of chosen rows
54
- HighsInt* chCount, //!< Number of chosen rows
55
- HighsInt chLimit //!< Limit on number of of chosen rows
52
+ void chooseMultiGlobal(HighsInt* chIndex, //!< Set of indices of chosen rows
53
+ HighsInt* chCount, //!< Number of chosen rows
54
+ HighsInt chLimit //!< Limit on number of chosen rows
56
55
  );
57
56
 
58
57
  /**
@@ -62,7 +61,7 @@ class HEkkDualRHS {
62
61
  void chooseMultiHyperGraphAuto(
63
62
  HighsInt* chIndex, //!< Set of indices of chosen rows
64
63
  HighsInt* chCount, //!< Number of chosen rows
65
- HighsInt chLimit //!< Limit on number of of chosen rows
64
+ HighsInt chLimit //!< Limit on number of chosen rows
66
65
  );
67
66
 
68
67
  /**
@@ -72,7 +71,7 @@ class HEkkDualRHS {
72
71
  void chooseMultiHyperGraphPart(
73
72
  HighsInt* chIndex, //!< Set of indices of chosen rows
74
73
  HighsInt* chCount, //!< Number of chosen rows
75
- HighsInt chLimit //!< Limit on number of of chosen rows
74
+ HighsInt chLimit //!< Limit on number of chosen rows
76
75
  );
77
76
 
78
77
  /**
@@ -2,7 +2,7 @@
2
2
  /* */
3
3
  /* This file is part of the HiGHS linear optimization suite */
4
4
  /* */
5
- /* Written and engineered 2008-2023 by Julian Hall, Ivet Galabova, */
5
+ /* Written and engineered 2008-2024 by Julian Hall, Ivet Galabova, */
6
6
  /* Leona Gottwald and Michael Feldmeier */
7
7
  /* */
8
8
  /* Available as open-source under the MIT License */
@@ -80,7 +80,7 @@ class HEkkDualRow {
80
80
  *
81
81
  * Can fail when there are excessive dual values due to EXPAND
82
82
  * perturbation not being relatively too small, returns positive if
83
- * dual uboundedness is suspected
83
+ * dual unboundedness is suspected
84
84
  */
85
85
  HighsInt chooseFinal();
86
86
 
@@ -2,7 +2,7 @@
2
2
  /* */
3
3
  /* This file is part of the HiGHS linear optimization suite */
4
4
  /* */
5
- /* Written and engineered 2008-2023 by Julian Hall, Ivet Galabova, */
5
+ /* Written and engineered 2008-2024 by Julian Hall, Ivet Galabova, */
6
6
  /* Leona Gottwald and Michael Feldmeier */
7
7
  /* */
8
8
  /* Available as open-source under the MIT License */
@@ -179,6 +179,11 @@ class HEkkPrimal {
179
179
  HVector col_steepest_edge;
180
180
  HighsRandom random_; // Just for checking PSE weights
181
181
 
182
+ double max_max_local_primal_infeasibility_;
183
+ double max_max_ignored_violation_;
184
+ double max_max_primal_correction_;
185
+ HighsInt last_header_iteration_count_;
186
+
182
187
  const HighsInt primal_correction_strategy =
183
188
  kSimplexPrimalCorrectionStrategyAlways;
184
189
  double debug_max_relative_primal_steepest_edge_weight_error = 0;
@@ -2,7 +2,7 @@
2
2
  /* */
3
3
  /* This file is part of the HiGHS linear optimization suite */
4
4
  /* */
5
- /* Written and engineered 2008-2023 by Julian Hall, Ivet Galabova, */
5
+ /* Written and engineered 2008-2024 by Julian Hall, Ivet Galabova, */
6
6
  /* Leona Gottwald and Michael Feldmeier */
7
7
  /* */
8
8
  /* Available as open-source under the MIT License */
@@ -27,8 +27,6 @@ void appendBasicRowsToBasis(HighsLp& lp, HighsBasis& highs_basis,
27
27
  void appendBasicRowsToBasis(HighsLp& lp, SimplexBasis& basis,
28
28
  HighsInt XnumNewRow);
29
29
 
30
- void unscaleSolution(HighsSolution& solution, const HighsScale scale);
31
-
32
30
  void getUnscaledInfeasibilities(const HighsOptions& options,
33
31
  const HighsScale& scale,
34
32
  const SimplexBasis& basis,
@@ -2,7 +2,7 @@
2
2
  /* */
3
3
  /* This file is part of the HiGHS linear optimization suite */
4
4
  /* */
5
- /* Written and engineered 2008-2023 by Julian Hall, Ivet Galabova, */
5
+ /* Written and engineered 2008-2024 by Julian Hall, Ivet Galabova, */
6
6
  /* Leona Gottwald and Michael Feldmeier */
7
7
  /* */
8
8
  /* Available as open-source under the MIT License */
@@ -2,7 +2,7 @@
2
2
  /* */
3
3
  /* This file is part of the HiGHS linear optimization suite */
4
4
  /* */
5
- /* Written and engineered 2008-2023 by Julian Hall, Ivet Galabova, */
5
+ /* Written and engineered 2008-2024 by Julian Hall, Ivet Galabova, */
6
6
  /* Leona Gottwald and Michael Feldmeier */
7
7
  /* */
8
8
  /* Available as open-source under the MIT License */
@@ -2,7 +2,7 @@
2
2
  /* */
3
3
  /* This file is part of the HiGHS linear optimization suite */
4
4
  /* */
5
- /* Written and engineered 2008-2023 by Julian Hall, Ivet Galabova, */
5
+ /* Written and engineered 2008-2024 by Julian Hall, Ivet Galabova, */
6
6
  /* Leona Gottwald and Michael Feldmeier */
7
7
  /* */
8
8
  /* Available as open-source under the MIT License */
@@ -2,7 +2,7 @@
2
2
  /* */
3
3
  /* This file is part of the HiGHS linear optimization suite */
4
4
  /* */
5
- /* Written and engineered 2008-2023 by Julian Hall, Ivet Galabova, */
5
+ /* Written and engineered 2008-2024 by Julian Hall, Ivet Galabova, */
6
6
  /* Leona Gottwald and Michael Feldmeier */
7
7
  /* */
8
8
  /* Available as open-source under the MIT License */
@@ -58,7 +58,135 @@ const HighsLogType kIterationReportLogType = HighsLogType::kVerbose;
58
58
  */
59
59
  class HighsSimplexAnalysis {
60
60
  public:
61
- HighsSimplexAnalysis() {}
61
+ HighsSimplexAnalysis()
62
+ : timer_(nullptr),
63
+ pointer_serial_factor_clocks(nullptr),
64
+ numRow(0),
65
+ numCol(0),
66
+ numTot(0),
67
+ model_name_(""),
68
+ lp_name_(""),
69
+ analyse_lp_data(false),
70
+ analyse_simplex_summary_data(false),
71
+ analyse_simplex_runtime_data(false),
72
+ analyse_simplex_time(false),
73
+ analyse_factor_data(false),
74
+ analyse_factor_time(false),
75
+ analyse_simplex_data(false),
76
+ simplex_strategy(0),
77
+ edge_weight_mode(EdgeWeightMode::kSteepestEdge),
78
+ solve_phase(0),
79
+ simplex_iteration_count(0),
80
+ devex_iteration_count(0),
81
+ pivotal_row_index(0),
82
+ leaving_variable(0),
83
+ entering_variable(0),
84
+ rebuild_reason(0),
85
+ rebuild_reason_string(""),
86
+ reduced_rhs_value(0.0),
87
+ reduced_cost_value(0.0),
88
+ edge_weight(0.0),
89
+ edge_weight_error(0.0),
90
+ primal_delta(0.0),
91
+ primal_step(0.0),
92
+ dual_step(0.0),
93
+ pivot_value_from_column(0.0),
94
+ pivot_value_from_row(0.0),
95
+ factor_pivot_threshold(0.0),
96
+ numerical_trouble(0.0),
97
+ objective_value(0.0),
98
+ num_primal_infeasibility(0),
99
+ num_dual_infeasibility(0),
100
+ sum_primal_infeasibility(0.0),
101
+ sum_dual_infeasibility(0.0),
102
+ num_dual_phase_1_lp_dual_infeasibility(0),
103
+ max_dual_phase_1_lp_dual_infeasibility(0.0),
104
+ sum_dual_phase_1_lp_dual_infeasibility(0.0),
105
+ num_devex_framework(0),
106
+ col_aq_density(0.0),
107
+ row_ep_density(0.0),
108
+ row_ap_density(0.0),
109
+ row_DSE_density(0.0),
110
+ col_steepest_edge_density(0.0),
111
+ col_basic_feasibility_change_density(0.0),
112
+ row_basic_feasibility_change_density(0.0),
113
+ col_BFRT_density(0.0),
114
+ primal_col_density(0.0),
115
+ dual_col_density(0.0),
116
+ num_costly_DSE_iteration(0),
117
+ costly_DSE_measure(0.0),
118
+ multi_iteration_count(0),
119
+ multi_chosen(0),
120
+ multi_finished(0),
121
+ min_concurrency(0),
122
+ num_concurrency(0),
123
+ max_concurrency(0),
124
+ num_col_price(0),
125
+ num_row_price(0),
126
+ num_row_price_with_switch(0),
127
+ num_primal_cycling_detections(0),
128
+ num_dual_cycling_detections(0),
129
+ num_quad_chuzc(0),
130
+ num_heap_chuzc(0),
131
+ sum_quad_chuzc_size(0.0),
132
+ sum_heap_chuzc_size(0.0),
133
+ max_quad_chuzc_size(0),
134
+ max_heap_chuzc_size(0),
135
+ num_improve_choose_column_row_call(0),
136
+ num_remove_pivot_from_pack(0),
137
+ num_correct_dual_primal_flip(0),
138
+ min_correct_dual_primal_flip_dual_infeasibility(kHighsInf),
139
+ max_correct_dual_primal_flip(0.0),
140
+ num_correct_dual_cost_shift(0),
141
+ max_correct_dual_cost_shift_dual_infeasibility(0.0),
142
+ max_correct_dual_cost_shift(0.0),
143
+ net_num_single_cost_shift(0),
144
+ num_single_cost_shift(0),
145
+ max_single_cost_shift(0.0),
146
+ sum_single_cost_shift(0.0),
147
+ num_dual_steepest_edge_weight_check(0),
148
+ num_dual_steepest_edge_weight_reject(0),
149
+ num_wrong_low_dual_steepest_edge_weight(0),
150
+ num_wrong_high_dual_steepest_edge_weight(0),
151
+ average_frequency_low_dual_steepest_edge_weight(0.0),
152
+ average_frequency_high_dual_steepest_edge_weight(0.0),
153
+ average_log_low_dual_steepest_edge_weight_error(0.0),
154
+ average_log_high_dual_steepest_edge_weight_error(0.0),
155
+ max_average_frequency_low_dual_steepest_edge_weight(0.0),
156
+ max_average_frequency_high_dual_steepest_edge_weight(0.0),
157
+ max_sum_average_frequency_extreme_dual_steepest_edge_weight(0.0),
158
+ max_average_log_low_dual_steepest_edge_weight_error(0.0),
159
+ max_average_log_high_dual_steepest_edge_weight_error(0.0),
160
+ max_sum_average_log_extreme_dual_steepest_edge_weight_error(0.0),
161
+ num_invert_report_since_last_header(-1),
162
+ num_iteration_report_since_last_header(-1),
163
+ last_user_log_time(-kHighsInf),
164
+ delta_user_log_time(1e0),
165
+ average_concurrency(0.0),
166
+ average_fraction_of_possible_minor_iterations_performed(0.0),
167
+ sum_multi_chosen(0),
168
+ sum_multi_finished(0),
169
+ num_invert(0),
170
+ num_kernel(0),
171
+ num_major_kernel(0),
172
+ max_kernel_dim(0.0),
173
+ sum_kernel_dim(0.0),
174
+ running_average_kernel_dim(0.0),
175
+ sum_invert_fill_factor(0.0),
176
+ sum_kernel_fill_factor(0.0),
177
+ sum_major_kernel_fill_factor(0.0),
178
+ running_average_invert_fill_factor(1.0),
179
+ running_average_kernel_fill_factor(1.0),
180
+ running_average_major_kernel_fill_factor(1.0),
181
+ AnIterIt0(0),
182
+ AnIterPrevIt(0),
183
+ AnIterOp{},
184
+ AnIterTraceNumRec(0),
185
+ AnIterTraceIterDl(0),
186
+ AnIterTrace{},
187
+ AnIterNumInvert{},
188
+ AnIterNumEdWtIt{} {}
189
+
62
190
  // Pointer to timer
63
191
  HighsTimer* timer_;
64
192
 
@@ -162,38 +290,38 @@ class HighsSimplexAnalysis {
162
290
  // double dual_steepest_edge_weight_log_error_threshold;
163
291
 
164
292
  // Local copies of simplex data for reporting
165
- HighsInt simplex_strategy = 0;
166
- EdgeWeightMode edge_weight_mode = EdgeWeightMode::kSteepestEdge;
167
- HighsInt solve_phase = 0;
168
- HighsInt simplex_iteration_count = 0;
169
- HighsInt devex_iteration_count = 0;
170
- HighsInt pivotal_row_index = 0;
171
- HighsInt leaving_variable = 0;
172
- HighsInt entering_variable = 0;
173
- HighsInt rebuild_reason = 0;
174
- std::string rebuild_reason_string = "";
175
- double reduced_rhs_value = 0;
176
- double reduced_cost_value = 0;
177
- double edge_weight = 0;
178
- double edge_weight_error = 0;
179
- double primal_delta = 0;
180
- double primal_step = 0;
181
- double dual_step = 0;
182
- double pivot_value_from_column = 0;
183
- double pivot_value_from_row = 0;
184
- double factor_pivot_threshold = 0;
185
- double numerical_trouble = 0;
186
- double objective_value = 0;
187
- HighsInt num_primal_infeasibility = 0;
188
- HighsInt num_dual_infeasibility = 0;
189
- double sum_primal_infeasibility = 0;
190
- double sum_dual_infeasibility = 0;
191
- // This triple is an original infeasiblility record, so it includes max,
293
+ HighsInt simplex_strategy;
294
+ EdgeWeightMode edge_weight_mode;
295
+ HighsInt solve_phase;
296
+ HighsInt simplex_iteration_count;
297
+ HighsInt devex_iteration_count;
298
+ HighsInt pivotal_row_index;
299
+ HighsInt leaving_variable;
300
+ HighsInt entering_variable;
301
+ HighsInt rebuild_reason;
302
+ std::string rebuild_reason_string;
303
+ double reduced_rhs_value;
304
+ double reduced_cost_value;
305
+ double edge_weight;
306
+ double edge_weight_error;
307
+ double primal_delta;
308
+ double primal_step;
309
+ double dual_step;
310
+ double pivot_value_from_column;
311
+ double pivot_value_from_row;
312
+ double factor_pivot_threshold;
313
+ double numerical_trouble;
314
+ double objective_value;
315
+ HighsInt num_primal_infeasibility;
316
+ HighsInt num_dual_infeasibility;
317
+ double sum_primal_infeasibility;
318
+ double sum_dual_infeasibility;
319
+ // This triple is an original infeasibility record, so it includes max,
192
320
  // but it's only used for reporting
193
- HighsInt num_dual_phase_1_lp_dual_infeasibility = 0;
194
- double max_dual_phase_1_lp_dual_infeasibility = 0;
195
- double sum_dual_phase_1_lp_dual_infeasibility = 0;
196
- HighsInt num_devex_framework = 0;
321
+ HighsInt num_dual_phase_1_lp_dual_infeasibility;
322
+ double max_dual_phase_1_lp_dual_infeasibility;
323
+ double sum_dual_phase_1_lp_dual_infeasibility;
324
+ HighsInt num_devex_framework;
197
325
  double col_aq_density;
198
326
  double row_ep_density;
199
327
  double row_ap_density;
@@ -208,21 +336,21 @@ class HighsSimplexAnalysis {
208
336
  double costly_DSE_measure;
209
337
 
210
338
  // Local copies of parallel simplex data for reporting
211
- HighsInt multi_iteration_count = 0;
212
- HighsInt multi_chosen = 0;
213
- HighsInt multi_finished = 0;
214
- HighsInt min_concurrency = 0;
215
- HighsInt num_concurrency = 0;
216
- HighsInt max_concurrency = 0;
339
+ HighsInt multi_iteration_count;
340
+ HighsInt multi_chosen;
341
+ HighsInt multi_finished;
342
+ HighsInt min_concurrency;
343
+ HighsInt num_concurrency;
344
+ HighsInt max_concurrency;
217
345
 
218
346
  // Unused
219
347
  // HighsInt multi_num = 0; // Useless
220
348
  // double basis_condition = 0; // Maybe useful
221
349
 
222
350
  // Records of how pivotal row PRICE was done
223
- HighsInt num_col_price = 0;
224
- HighsInt num_row_price = 0;
225
- HighsInt num_row_price_with_switch = 0;
351
+ HighsInt num_col_price;
352
+ HighsInt num_row_price;
353
+ HighsInt num_row_price_with_switch;
226
354
 
227
355
  HighsValueDistribution before_ftran_upper_sparse_density;
228
356
  HighsValueDistribution ftran_upper_sparse_density;
@@ -235,29 +363,29 @@ class HighsSimplexAnalysis {
235
363
  HighsValueDistribution cleanup_dual_step_distribution;
236
364
  HighsValueDistribution cleanup_primal_change_distribution;
237
365
 
238
- HighsInt num_primal_cycling_detections = 0;
239
- HighsInt num_dual_cycling_detections = 0;
240
-
241
- HighsInt num_quad_chuzc = 0;
242
- HighsInt num_heap_chuzc = 0;
243
- double sum_quad_chuzc_size = 0;
244
- double sum_heap_chuzc_size = 0;
245
- HighsInt max_quad_chuzc_size = 0;
246
- HighsInt max_heap_chuzc_size = 0;
247
-
248
- HighsInt num_improve_choose_column_row_call = 0;
249
- HighsInt num_remove_pivot_from_pack = 0;
250
-
251
- HighsInt num_correct_dual_primal_flip = 0;
252
- double min_correct_dual_primal_flip_dual_infeasibility = kHighsInf;
253
- double max_correct_dual_primal_flip = 0;
254
- HighsInt num_correct_dual_cost_shift = 0;
255
- double max_correct_dual_cost_shift_dual_infeasibility = 0;
256
- double max_correct_dual_cost_shift = 0;
257
- HighsInt net_num_single_cost_shift = 0;
258
- HighsInt num_single_cost_shift = 0;
259
- double max_single_cost_shift = 0;
260
- double sum_single_cost_shift = 0;
366
+ HighsInt num_primal_cycling_detections;
367
+ HighsInt num_dual_cycling_detections;
368
+
369
+ HighsInt num_quad_chuzc;
370
+ HighsInt num_heap_chuzc;
371
+ double sum_quad_chuzc_size;
372
+ double sum_heap_chuzc_size;
373
+ HighsInt max_quad_chuzc_size;
374
+ HighsInt max_heap_chuzc_size;
375
+
376
+ HighsInt num_improve_choose_column_row_call;
377
+ HighsInt num_remove_pivot_from_pack;
378
+
379
+ HighsInt num_correct_dual_primal_flip;
380
+ double min_correct_dual_primal_flip_dual_infeasibility;
381
+ double max_correct_dual_primal_flip;
382
+ HighsInt num_correct_dual_cost_shift;
383
+ double max_correct_dual_cost_shift_dual_infeasibility;
384
+ double max_correct_dual_cost_shift;
385
+ HighsInt net_num_single_cost_shift;
386
+ HighsInt num_single_cost_shift;
387
+ double max_single_cost_shift;
388
+ double sum_single_cost_shift;
261
389
 
262
390
  // Tolerances for analysis of TRAN stages - could be needed for
263
391
  // control if this is ever used again!
@@ -290,46 +418,46 @@ class HighsSimplexAnalysis {
290
418
  // double AnIterCostlyDseFq; //!< Frequency of iterations when DSE is costly
291
419
  // double AnIterCostlyDseMeasure;
292
420
 
293
- HighsInt num_dual_steepest_edge_weight_check = 0;
294
- HighsInt num_dual_steepest_edge_weight_reject = 0;
295
- HighsInt num_wrong_low_dual_steepest_edge_weight = 0;
296
- HighsInt num_wrong_high_dual_steepest_edge_weight = 0;
297
- double average_frequency_low_dual_steepest_edge_weight = 0;
298
- double average_frequency_high_dual_steepest_edge_weight = 0;
299
- double average_log_low_dual_steepest_edge_weight_error = 0;
300
- double average_log_high_dual_steepest_edge_weight_error = 0;
301
- double max_average_frequency_low_dual_steepest_edge_weight = 0;
302
- double max_average_frequency_high_dual_steepest_edge_weight = 0;
303
- double max_sum_average_frequency_extreme_dual_steepest_edge_weight = 0;
304
- double max_average_log_low_dual_steepest_edge_weight_error = 0;
305
- double max_average_log_high_dual_steepest_edge_weight_error = 0;
306
- double max_sum_average_log_extreme_dual_steepest_edge_weight_error = 0;
307
-
308
- HighsInt num_invert_report_since_last_header = -1;
309
- HighsInt num_iteration_report_since_last_header = -1;
310
- double last_user_log_time = -kHighsInf;
311
- double delta_user_log_time = 1e0;
421
+ HighsInt num_dual_steepest_edge_weight_check;
422
+ HighsInt num_dual_steepest_edge_weight_reject;
423
+ HighsInt num_wrong_low_dual_steepest_edge_weight;
424
+ HighsInt num_wrong_high_dual_steepest_edge_weight;
425
+ double average_frequency_low_dual_steepest_edge_weight;
426
+ double average_frequency_high_dual_steepest_edge_weight;
427
+ double average_log_low_dual_steepest_edge_weight_error;
428
+ double average_log_high_dual_steepest_edge_weight_error;
429
+ double max_average_frequency_low_dual_steepest_edge_weight;
430
+ double max_average_frequency_high_dual_steepest_edge_weight;
431
+ double max_sum_average_frequency_extreme_dual_steepest_edge_weight;
432
+ double max_average_log_low_dual_steepest_edge_weight_error;
433
+ double max_average_log_high_dual_steepest_edge_weight_error;
434
+ double max_sum_average_log_extreme_dual_steepest_edge_weight_error;
435
+
436
+ HighsInt num_invert_report_since_last_header;
437
+ HighsInt num_iteration_report_since_last_header;
438
+ double last_user_log_time;
439
+ double delta_user_log_time;
312
440
 
313
441
  double average_concurrency;
314
442
  double average_fraction_of_possible_minor_iterations_performed;
315
- HighsInt sum_multi_chosen = 0;
316
- HighsInt sum_multi_finished = 0;
443
+ HighsInt sum_multi_chosen;
444
+ HighsInt sum_multi_finished;
317
445
 
318
446
  // Analysis of INVERT form
319
- HighsInt num_invert = 0;
320
- HighsInt num_kernel = 0;
321
- HighsInt num_major_kernel = 0;
322
- double max_kernel_dim = 0;
323
- double sum_kernel_dim = 0;
324
- double running_average_kernel_dim = 0;
325
- double sum_invert_fill_factor = 0;
326
- double sum_kernel_fill_factor = 0;
327
- double sum_major_kernel_fill_factor = 0;
328
- double running_average_invert_fill_factor = 1;
329
- double running_average_kernel_fill_factor = 1;
330
- double running_average_major_kernel_fill_factor = 1;
331
-
332
- HighsInt AnIterIt0 = 0;
447
+ HighsInt num_invert;
448
+ HighsInt num_kernel;
449
+ HighsInt num_major_kernel;
450
+ double max_kernel_dim;
451
+ double sum_kernel_dim;
452
+ double running_average_kernel_dim;
453
+ double sum_invert_fill_factor;
454
+ double sum_kernel_fill_factor;
455
+ double sum_major_kernel_fill_factor;
456
+ double running_average_invert_fill_factor;
457
+ double running_average_kernel_fill_factor;
458
+ double running_average_major_kernel_fill_factor;
459
+
460
+ HighsInt AnIterIt0;
333
461
  HighsInt AnIterPrevIt;
334
462
 
335
463
  // Major operation analysis struct
@@ -2,7 +2,7 @@
2
2
  /* */
3
3
  /* This file is part of the HiGHS linear optimization suite */
4
4
  /* */
5
- /* Written and engineered 2008-2023 by Julian Hall, Ivet Galabova, */
5
+ /* Written and engineered 2008-2024 by Julian Hall, Ivet Galabova, */
6
6
  /* Leona Gottwald and Michael Feldmeier */
7
7
  /* */
8
8
  /* Available as open-source under the MIT License */
@@ -2,7 +2,7 @@
2
2
  /* */
3
3
  /* This file is part of the HiGHS linear optimization suite */
4
4
  /* */
5
- /* Written and engineered 2008-2023 by Julian Hall, Ivet Galabova, */
5
+ /* Written and engineered 2008-2024 by Julian Hall, Ivet Galabova, */
6
6
  /* Leona Gottwald and Michael Feldmeier */
7
7
  /* */
8
8
  /* Available as open-source under the MIT License */
@@ -25,7 +25,7 @@ struct SimplexBasis {
25
25
  // The basis for the simplex method consists of basicIndex,
26
26
  // nonbasicFlag and nonbasicMove. If HighsSimplexStatus has_basis
27
27
  // is true then it is assumed that basicIndex_ and nonbasicFlag_ are
28
- // self-consistent and correpond to the dimensions of an associated
28
+ // self-consistent and correspond to the dimensions of an associated
29
29
  // HighsLp, but the basis matrix B is not necessarily nonsingular.
30
30
  std::vector<HighsInt> basicIndex_;
31
31
  std::vector<int8_t> nonbasicFlag_;
@@ -2,7 +2,7 @@
2
2
  /* */
3
3
  /* This file is part of the HiGHS linear optimization suite */
4
4
  /* */
5
- /* Written and engineered 2008-2023 by Julian Hall, Ivet Galabova, */
5
+ /* Written and engineered 2008-2024 by Julian Hall, Ivet Galabova, */
6
6
  /* Leona Gottwald and Michael Feldmeier */
7
7
  /* */
8
8
  /* Available as open-source under the MIT License */
@@ -2,7 +2,7 @@
2
2
  /* */
3
3
  /* This file is part of the HiGHS linear optimization suite */
4
4
  /* */
5
- /* Written and engineered 2008-2023 by Julian Hall, Ivet Galabova, */
5
+ /* Written and engineered 2008-2024 by Julian Hall, Ivet Galabova, */
6
6
  /* Leona Gottwald and Michael Feldmeier */
7
7
  /* */
8
8
  /* Available as open-source under the MIT License */
@@ -2,7 +2,7 @@
2
2
  /* */
3
3
  /* This file is part of the HiGHS linear optimization suite */
4
4
  /* */
5
- /* Written and engineered 2008-2023 by Julian Hall, Ivet Galabova, */
5
+ /* Written and engineered 2008-2024 by Julian Hall, Ivet Galabova, */
6
6
  /* Leona Gottwald and Michael Feldmeier */
7
7
  /* */
8
8
  /* Available as open-source under the MIT License */
@@ -2,7 +2,7 @@
2
2
  /* */
3
3
  /* This file is part of the HiGHS linear optimization suite */
4
4
  /* */
5
- /* Written and engineered 2008-2023 by Julian Hall, Ivet Galabova, */
5
+ /* Written and engineered 2008-2024 by Julian Hall, Ivet Galabova, */
6
6
  /* Leona Gottwald and Michael Feldmeier */
7
7
  /* */
8
8
  /* Available as open-source under the MIT License */
@@ -2,7 +2,7 @@
2
2
  /* */
3
3
  /* This file is part of the HiGHS linear optimization suite */
4
4
  /* */
5
- /* Written and engineered 2008-2023 by Julian Hall, Ivet Galabova, */
5
+ /* Written and engineered 2008-2024 by Julian Hall, Ivet Galabova, */
6
6
  /* Leona Gottwald and Michael Feldmeier */
7
7
  /* */
8
8
  /* Available as open-source under the MIT License */
@@ -105,6 +105,35 @@ struct InvertibleRepresentation {
105
105
  */
106
106
  class HFactor {
107
107
  public:
108
+ HFactor()
109
+ : build_realTick(0.0),
110
+ build_synthetic_tick(0.0),
111
+ rank_deficiency(0),
112
+ basis_matrix_num_el(0),
113
+ invert_num_el(0),
114
+ kernel_dim(0),
115
+ kernel_num_el(0),
116
+ num_row(0),
117
+ num_col(0),
118
+ num_basic(0),
119
+ a_matrix_valid(false),
120
+ a_start(nullptr),
121
+ a_index(nullptr),
122
+ a_value(nullptr),
123
+ basic_index(nullptr),
124
+ pivot_threshold(0.0),
125
+ pivot_tolerance(0.0),
126
+ highs_debug_level(0),
127
+ time_limit_(0.0),
128
+ use_original_HFactor_logic(false),
129
+ debug_report_(false),
130
+ basis_matrix_limit_size(0),
131
+ update_method(0),
132
+ build_timer_(nullptr),
133
+ nwork(0),
134
+ u_merit_x(0),
135
+ u_total_x(0){};
136
+
108
137
  /**
109
138
  * @brief Copy problem size and pointers of constraint matrix, and set
110
139
  * up space for INVERT
@@ -304,10 +333,10 @@ class HFactor {
304
333
  RefactorInfo refactor_info_;
305
334
 
306
335
  // Properties of data held in HFactor.h
307
- HighsInt basis_matrix_num_el = 0;
308
- HighsInt invert_num_el = 0;
309
- HighsInt kernel_dim = 0;
310
- HighsInt kernel_num_el = 0;
336
+ HighsInt basis_matrix_num_el;
337
+ HighsInt invert_num_el;
338
+ HighsInt kernel_dim;
339
+ HighsInt kernel_num_el;
311
340
 
312
341
  /**
313
342
  * Data of the factor
@@ -339,7 +368,7 @@ class HFactor {
339
368
  HighsLogOptions log_options;
340
369
 
341
370
  bool use_original_HFactor_logic;
342
- bool debug_report_ = false;
371
+ bool debug_report_;
343
372
  HighsInt basis_matrix_limit_size;
344
373
  HighsInt update_method;
345
374
 
@@ -2,7 +2,7 @@
2
2
  /* */
3
3
  /* This file is part of the HiGHS linear optimization suite */
4
4
  /* */
5
- /* Written and engineered 2008-2023 by Julian Hall, Ivet Galabova, */
5
+ /* Written and engineered 2008-2024 by Julian Hall, Ivet Galabova, */
6
6
  /* Leona Gottwald and Michael Feldmeier */
7
7
  /* */
8
8
  /* Available as open-source under the MIT License */