casadi 3.6.3__cp311-none-manylinux2014_i686.whl → 3.6.4__cp311-none-manylinux2014_i686.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 (322) hide show
  1. casadi/_casadi.so +0 -0
  2. casadi/casadi.py +87 -10
  3. casadi/cbc +0 -0
  4. casadi/clp +0 -0
  5. casadi/cmake/alpaqa/alpaqaConfig.cmake +24 -0
  6. casadi/cmake/alpaqa/alpaqaConfigVersion.cmake +70 -0
  7. casadi/cmake/alpaqa/alpaqaTargets-release.cmake +29 -0
  8. casadi/cmake/alpaqa/alpaqaTargets.cmake +131 -0
  9. casadi/cmake/casadi-config-version.cmake +1 -1
  10. casadi/cmake/highs/highs-config.cmake +18 -4
  11. casadi/cmake/highs/highs-targets-release.cmake +3 -3
  12. casadi/cmake/highs/highs-targets.cmake +1 -1
  13. casadi/cmake/sleqp/sleqp-config-version.cmake +70 -0
  14. casadi/cmake/sleqp/sleqp-config.cmake +1 -0
  15. casadi/cmake/sleqp/sleqp-targets-release.cmake +20 -0
  16. casadi/cmake/sleqp/sleqp-targets.cmake +102 -0
  17. casadi/cmake/trlib/trlib-config-release.cmake +19 -0
  18. casadi/cmake/trlib/trlib-config-version.cmake +88 -0
  19. casadi/cmake/trlib/trlib-config.cmake +107 -0
  20. casadi/highs +0 -0
  21. casadi/include/casadi/casadi.i +13 -3
  22. casadi/include/casadi/config.h +8 -8
  23. casadi/include/casadi/core/calculus.hpp +1 -1
  24. casadi/include/casadi/core/fmu.hpp +29 -1
  25. casadi/include/casadi/core/nlpsol.hpp +0 -2
  26. casadi/include/casadi/core/serializing_stream.hpp +12 -0
  27. casadi/include/casadi/doc.i +407 -125
  28. casadi/include/casadi/doc_merged.i +324 -70
  29. casadi/include/highs/HConfig.h +4 -7
  30. casadi/include/highs/Highs.h +240 -51
  31. casadi/include/highs/filereaderlp/builder.hpp +12 -13
  32. casadi/include/highs/filereaderlp/model.hpp +32 -35
  33. casadi/include/highs/fortran/highs_fortran_api.mod +0 -0
  34. casadi/include/highs/interfaces/highs_c_api.h +964 -577
  35. casadi/include/highs/io/Filereader.h +2 -4
  36. casadi/include/highs/io/FilereaderEms.h +2 -4
  37. casadi/include/highs/io/FilereaderLp.h +2 -4
  38. casadi/include/highs/io/FilereaderMps.h +2 -4
  39. casadi/include/highs/io/HMPSIO.h +2 -4
  40. casadi/include/highs/io/HMpsFF.h +2 -4
  41. casadi/include/highs/io/HighsIO.h +19 -13
  42. casadi/include/highs/io/LoadOptions.h +7 -6
  43. casadi/include/highs/ipm/IpxWrapper.h +4 -5
  44. casadi/include/highs/lp_data/HConst.h +60 -15
  45. casadi/include/highs/lp_data/HStruct.h +32 -8
  46. casadi/include/highs/lp_data/HighsAnalysis.h +2 -4
  47. casadi/include/highs/lp_data/HighsCallback.h +33 -0
  48. casadi/include/highs/lp_data/HighsCallbackStruct.h +36 -0
  49. casadi/include/highs/lp_data/HighsDebug.h +2 -4
  50. casadi/include/highs/lp_data/HighsInfo.h +22 -23
  51. casadi/include/highs/lp_data/HighsInfoDebug.h +2 -4
  52. casadi/include/highs/lp_data/HighsLp.h +14 -6
  53. casadi/include/highs/lp_data/HighsLpSolverObject.h +6 -5
  54. casadi/include/highs/lp_data/HighsLpUtils.h +23 -12
  55. casadi/include/highs/lp_data/HighsModelUtils.h +22 -8
  56. casadi/include/highs/lp_data/HighsOptions.h +175 -106
  57. casadi/include/highs/lp_data/HighsRanging.h +2 -4
  58. casadi/include/highs/lp_data/HighsRuntimeOptions.h +21 -6
  59. casadi/include/highs/lp_data/HighsSolution.h +4 -4
  60. casadi/include/highs/lp_data/HighsSolutionDebug.h +2 -4
  61. casadi/include/highs/lp_data/HighsSolve.h +2 -4
  62. casadi/include/highs/lp_data/HighsStatus.h +2 -4
  63. casadi/include/highs/mip/HighsCliqueTable.h +18 -20
  64. casadi/include/highs/mip/HighsConflictPool.h +2 -4
  65. casadi/include/highs/mip/HighsCutGeneration.h +2 -4
  66. casadi/include/highs/mip/HighsCutPool.h +2 -4
  67. casadi/include/highs/mip/HighsDebugSol.h +2 -4
  68. casadi/include/highs/mip/HighsDomain.h +5 -5
  69. casadi/include/highs/mip/HighsDomainChange.h +2 -4
  70. casadi/include/highs/mip/HighsDynamicRowMatrix.h +2 -4
  71. casadi/include/highs/mip/HighsGFkSolve.h +2 -4
  72. casadi/include/highs/mip/HighsImplications.h +2 -4
  73. casadi/include/highs/mip/HighsLpAggregator.h +2 -4
  74. casadi/include/highs/mip/HighsLpRelaxation.h +2 -4
  75. casadi/include/highs/mip/HighsMipSolver.h +18 -6
  76. casadi/include/highs/mip/HighsMipSolverData.h +8 -4
  77. casadi/include/highs/mip/HighsModkSeparator.h +2 -4
  78. casadi/include/highs/mip/HighsNodeQueue.h +3 -9
  79. casadi/include/highs/mip/HighsObjectiveFunction.h +2 -4
  80. casadi/include/highs/mip/HighsPathSeparator.h +2 -4
  81. casadi/include/highs/mip/HighsPrimalHeuristics.h +2 -4
  82. casadi/include/highs/mip/HighsPseudocost.h +2 -4
  83. casadi/include/highs/mip/HighsRedcostFixing.h +2 -4
  84. casadi/include/highs/mip/HighsSearch.h +2 -4
  85. casadi/include/highs/mip/HighsSeparation.h +2 -4
  86. casadi/include/highs/mip/HighsSeparator.h +2 -4
  87. casadi/include/highs/mip/HighsTableauSeparator.h +2 -4
  88. casadi/include/highs/mip/HighsTransformedLp.h +2 -4
  89. casadi/include/highs/model/HighsHessian.h +3 -1
  90. casadi/include/highs/model/HighsModel.h +2 -0
  91. casadi/include/highs/parallel/HighsSpinMutex.h +2 -1
  92. casadi/include/highs/parallel/HighsSplitDeque.h +1 -1
  93. casadi/include/highs/parallel/HighsTaskExecutor.h +10 -2
  94. casadi/include/highs/presolve/HPresolve.h +9 -6
  95. casadi/include/highs/presolve/HPresolveAnalysis.h +5 -4
  96. casadi/include/highs/presolve/HighsPostsolveStack.h +50 -13
  97. casadi/include/highs/presolve/HighsSymmetry.h +2 -4
  98. casadi/include/highs/presolve/ICrash.h +4 -3
  99. casadi/include/highs/presolve/ICrashUtil.h +2 -2
  100. casadi/include/highs/presolve/ICrashX.h +4 -6
  101. casadi/include/highs/presolve/PresolveComponent.h +4 -42
  102. casadi/include/highs/qpsolver/a_asm.hpp +56 -0
  103. casadi/include/highs/qpsolver/a_quass.hpp +12 -0
  104. casadi/include/highs/qpsolver/quass.hpp +1 -4
  105. casadi/include/highs/simplex/HApp.h +14 -16
  106. casadi/include/highs/simplex/HEkk.h +12 -11
  107. casadi/include/highs/simplex/HEkkDual.h +2 -4
  108. casadi/include/highs/simplex/HEkkDualRHS.h +5 -6
  109. casadi/include/highs/simplex/HEkkDualRow.h +2 -4
  110. casadi/include/highs/simplex/HEkkPrimal.h +2 -4
  111. casadi/include/highs/simplex/HSimplex.h +2 -4
  112. casadi/include/highs/simplex/HSimplexDebug.h +2 -4
  113. casadi/include/highs/simplex/HSimplexNla.h +2 -4
  114. casadi/include/highs/simplex/HSimplexReport.h +3 -5
  115. casadi/include/highs/simplex/HighsSimplexAnalysis.h +2 -4
  116. casadi/include/highs/simplex/SimplexConst.h +7 -5
  117. casadi/include/highs/simplex/SimplexStruct.h +11 -5
  118. casadi/include/highs/simplex/SimplexTimer.h +2 -4
  119. casadi/include/highs/test/DevKkt.h +2 -4
  120. casadi/include/highs/test/KktCh2.h +2 -4
  121. casadi/include/highs/util/FactorTimer.h +2 -4
  122. casadi/include/highs/util/HFactor.h +2 -4
  123. casadi/include/highs/util/HFactorConst.h +2 -4
  124. casadi/include/highs/util/HFactorDebug.h +2 -4
  125. casadi/include/highs/util/HSet.h +3 -5
  126. casadi/include/highs/util/HVector.h +2 -4
  127. casadi/include/highs/util/HVectorBase.h +2 -4
  128. casadi/include/highs/util/HighsCDouble.h +2 -4
  129. casadi/include/highs/util/HighsComponent.h +2 -4
  130. casadi/include/highs/util/HighsDataStack.h +3 -5
  131. casadi/include/highs/util/HighsDisjointSets.h +8 -10
  132. casadi/include/highs/util/HighsHash.h +22 -7
  133. casadi/include/highs/util/HighsHashTree.h +25 -7
  134. casadi/include/highs/util/HighsInt.h +2 -4
  135. casadi/include/highs/util/HighsIntegers.h +2 -4
  136. casadi/include/highs/util/HighsLinearSumBounds.h +2 -4
  137. casadi/include/highs/util/HighsMatrixPic.h +2 -4
  138. casadi/include/highs/util/HighsMatrixSlice.h +2 -4
  139. casadi/include/highs/util/HighsMatrixUtils.h +2 -4
  140. casadi/include/highs/util/HighsRandom.h +2 -4
  141. casadi/include/highs/util/HighsRbTree.h +2 -4
  142. casadi/include/highs/util/HighsSort.h +2 -4
  143. casadi/include/highs/util/HighsSparseMatrix.h +11 -7
  144. casadi/include/highs/util/HighsSparseVectorSum.h +2 -4
  145. casadi/include/highs/util/HighsSplay.h +2 -4
  146. casadi/include/highs/util/HighsTimer.h +3 -4
  147. casadi/include/highs/util/HighsUtils.h +14 -4
  148. casadi/include/highs/util/stringutil.h +2 -4
  149. casadi/include/licenses/alpaqa-external/LICENSE +165 -0
  150. casadi/include/licenses/highs-external/LICENSE +1 -1
  151. casadi/include/licenses/sleqp-external/LICENSE +165 -0
  152. casadi/include/licenses/trlib-external/LICENSE +21 -0
  153. casadi/include/trlib/trlib_eigen_inverse.h +118 -0
  154. casadi/include/trlib/trlib_krylov.h +493 -0
  155. casadi/include/trlib/trlib_leftmost.h +181 -0
  156. casadi/include/trlib/trlib_private.h +109 -0
  157. casadi/include/trlib/trlib_quadratic_zero.h +57 -0
  158. casadi/include/trlib/trlib_tri_factor.h +409 -0
  159. casadi/include/trlib/trlib_types.h +36 -0
  160. casadi/lib/libtinyxml2.a +0 -0
  161. casadi/libCbc.la +3 -3
  162. casadi/libCbc.so +0 -0
  163. casadi/libCbc.so.3 +0 -0
  164. casadi/libCbc.so.3.10.11 +0 -0
  165. casadi/libCbcSolver.la +3 -3
  166. casadi/libCbcSolver.so +0 -0
  167. casadi/libCbcSolver.so.3 +0 -0
  168. casadi/libCbcSolver.so.3.10.11 +0 -0
  169. casadi/libCgl.la +2 -2
  170. casadi/libCgl.so +0 -0
  171. casadi/libCgl.so.1 +0 -0
  172. casadi/libCgl.so.1.10.8 +0 -0
  173. casadi/libClp.la +2 -2
  174. casadi/libClp.so +0 -0
  175. casadi/libClp.so.1 +0 -0
  176. casadi/{libClp.so.1.14.7 → libClp.so.1.14.9} +0 -0
  177. casadi/libClpSolver.la +2 -2
  178. casadi/libClpSolver.so +0 -0
  179. casadi/libClpSolver.so.1 +0 -0
  180. casadi/{libClpSolver.so.1.14.7 → libClpSolver.so.1.14.9} +0 -0
  181. casadi/libCoinUtils.la +2 -2
  182. casadi/libCoinUtils.so +0 -0
  183. casadi/libCoinUtils.so.3 +0 -0
  184. casadi/libCoinUtils.so.3.11.10 +0 -0
  185. casadi/libFortranHighs.so +0 -0
  186. casadi/libOsi.la +2 -2
  187. casadi/libOsiCbc.la +3 -3
  188. casadi/libOsiCbc.so +0 -0
  189. casadi/libOsiCbc.so.3 +0 -0
  190. casadi/{libOsiCbc.so.3.10.6 → libOsiCbc.so.3.10.11} +0 -0
  191. casadi/libOsiClp.la +2 -2
  192. casadi/libOsiClp.so +0 -0
  193. casadi/libOsiClp.so.1 +0 -0
  194. casadi/libOsiClp.so.1.14.9 +0 -0
  195. casadi/libOsiCommonTests.la +2 -2
  196. casadi/libOsiCommonTests.so +0 -0
  197. casadi/libOsiCommonTests.so.1 +0 -0
  198. casadi/{libOsiCommonTests.so.1.13.7 → libOsiCommonTests.so.1.13.9} +0 -0
  199. casadi/libalpaqa-dl-loader.so +0 -0
  200. casadi/libalpaqa-dl-loader.so.1.0.0 +0 -0
  201. casadi/libalpaqa.so +0 -0
  202. casadi/libalpaqa.so.1.0.0 +0 -0
  203. casadi/libbonmin.la +3 -3
  204. casadi/libbonmin.so +0 -0
  205. casadi/libbonmin.so.4 +0 -0
  206. casadi/libbonmin.so.4.8.9 +0 -0
  207. casadi/libcasadi.so +0 -0
  208. casadi/libcasadi.so.3.7 +0 -0
  209. casadi/libcasadi_conic_cbc.so +0 -0
  210. casadi/libcasadi_conic_cbc.so.3.7 +0 -0
  211. casadi/libcasadi_conic_clp.so +0 -0
  212. casadi/libcasadi_conic_clp.so.3.7 +0 -0
  213. casadi/libcasadi_conic_gurobi.so +0 -0
  214. casadi/libcasadi_conic_gurobi.so.3.7 +0 -0
  215. casadi/libcasadi_conic_highs.so +0 -0
  216. casadi/libcasadi_conic_highs.so.3.7 +0 -0
  217. casadi/libcasadi_conic_ipqp.so +0 -0
  218. casadi/libcasadi_conic_ipqp.so.3.7 +0 -0
  219. casadi/libcasadi_conic_nlpsol.so +0 -0
  220. casadi/libcasadi_conic_nlpsol.so.3.7 +0 -0
  221. casadi/libcasadi_conic_osqp.so +0 -0
  222. casadi/libcasadi_conic_osqp.so.3.7 +0 -0
  223. casadi/libcasadi_conic_proxqp.so +0 -0
  224. casadi/libcasadi_conic_proxqp.so.3.7 +0 -0
  225. casadi/libcasadi_conic_qpoases.so +0 -0
  226. casadi/libcasadi_conic_qpoases.so.3.7 +0 -0
  227. casadi/libcasadi_conic_qrqp.so +0 -0
  228. casadi/libcasadi_conic_qrqp.so.3.7 +0 -0
  229. casadi/libcasadi_conic_superscs.so +0 -0
  230. casadi/libcasadi_conic_superscs.so.3.7 +0 -0
  231. casadi/libcasadi_integrator_collocation.so +0 -0
  232. casadi/libcasadi_integrator_collocation.so.3.7 +0 -0
  233. casadi/libcasadi_integrator_cvodes.so +0 -0
  234. casadi/libcasadi_integrator_cvodes.so.3.7 +0 -0
  235. casadi/libcasadi_integrator_idas.so +0 -0
  236. casadi/libcasadi_integrator_idas.so.3.7 +0 -0
  237. casadi/libcasadi_interpolant_bspline.so +0 -0
  238. casadi/libcasadi_interpolant_bspline.so.3.7 +0 -0
  239. casadi/libcasadi_interpolant_linear.so +0 -0
  240. casadi/libcasadi_interpolant_linear.so.3.7 +0 -0
  241. casadi/libcasadi_linsol_lapacklu.so +0 -0
  242. casadi/libcasadi_linsol_lapacklu.so.3.7 +0 -0
  243. casadi/libcasadi_linsol_lapackqr.so +0 -0
  244. casadi/libcasadi_linsol_lapackqr.so.3.7 +0 -0
  245. casadi/libcasadi_linsol_ldl.so +0 -0
  246. casadi/libcasadi_linsol_ldl.so.3.7 +0 -0
  247. casadi/libcasadi_linsol_mumps.so +0 -0
  248. casadi/libcasadi_linsol_mumps.so.3.7 +0 -0
  249. casadi/libcasadi_linsol_qr.so +0 -0
  250. casadi/libcasadi_linsol_qr.so.3.7 +0 -0
  251. casadi/libcasadi_linsol_symbolicqr.so +0 -0
  252. casadi/libcasadi_linsol_symbolicqr.so.3.7 +0 -0
  253. casadi/libcasadi_nlpsol_alpaqa.so +0 -0
  254. casadi/libcasadi_nlpsol_alpaqa.so.3.7 +0 -0
  255. casadi/libcasadi_nlpsol_ampl.so +0 -0
  256. casadi/libcasadi_nlpsol_ampl.so.3.7 +0 -0
  257. casadi/libcasadi_nlpsol_blocksqp.so +0 -0
  258. casadi/libcasadi_nlpsol_blocksqp.so.3.7 +0 -0
  259. casadi/libcasadi_nlpsol_bonmin.so +0 -0
  260. casadi/libcasadi_nlpsol_bonmin.so.3.7 +0 -0
  261. casadi/libcasadi_nlpsol_feasiblesqpmethod.so +0 -0
  262. casadi/libcasadi_nlpsol_feasiblesqpmethod.so.3.7 +0 -0
  263. casadi/libcasadi_nlpsol_ipopt.so +0 -0
  264. casadi/libcasadi_nlpsol_ipopt.so.3.7 +0 -0
  265. casadi/libcasadi_nlpsol_knitro.so +0 -0
  266. casadi/libcasadi_nlpsol_knitro.so.3.7 +0 -0
  267. casadi/libcasadi_nlpsol_qrsqp.so +0 -0
  268. casadi/libcasadi_nlpsol_qrsqp.so.3.7 +0 -0
  269. casadi/libcasadi_nlpsol_sleqp.so +0 -0
  270. casadi/libcasadi_nlpsol_sleqp.so.3.7 +0 -0
  271. casadi/libcasadi_nlpsol_snopt.so +0 -0
  272. casadi/libcasadi_nlpsol_snopt.so.3.7 +0 -0
  273. casadi/libcasadi_nlpsol_sqpmethod.so +0 -0
  274. casadi/libcasadi_nlpsol_sqpmethod.so.3.7 +0 -0
  275. casadi/libcasadi_nlpsol_worhp.so +0 -0
  276. casadi/libcasadi_nlpsol_worhp.so.3.7 +0 -0
  277. casadi/libcasadi_rootfinder_fast_newton.so +0 -0
  278. casadi/libcasadi_rootfinder_fast_newton.so.3.7 +0 -0
  279. casadi/libcasadi_rootfinder_newton.so +0 -0
  280. casadi/libcasadi_rootfinder_newton.so.3.7 +0 -0
  281. casadi/libcasadi_sundials_common.so +0 -0
  282. casadi/libcasadi_sundials_common.so.3.7 +0 -0
  283. casadi/libhighs.so +0 -0
  284. casadi/libhighs.so.1.6 +0 -0
  285. casadi/libhighs.so.1.6.0 +0 -0
  286. casadi/libindirect.a +0 -0
  287. casadi/liblinsys.a +0 -0
  288. casadi/libosqp.a +0 -0
  289. casadi/libqdldl.a +0 -0
  290. casadi/libsleqp.so +0 -0
  291. casadi/libsleqp.so.1.0.1 +0 -0
  292. casadi/libspral.a +0 -0
  293. casadi/libsuperscs.a +0 -0
  294. casadi/libtrlib.so +0 -0
  295. casadi/libtrlib.so.0.4 +0 -0
  296. casadi/pkgconfig/blas.pc +11 -0
  297. casadi/pkgconfig/bonmin.pc +1 -1
  298. casadi/pkgconfig/casadi.pc +1 -1
  299. casadi/pkgconfig/cbc.pc +2 -2
  300. casadi/pkgconfig/cgl.pc +2 -2
  301. casadi/pkgconfig/clp.pc +1 -1
  302. casadi/pkgconfig/coinutils.pc +1 -1
  303. casadi/pkgconfig/highs.pc +3 -3
  304. casadi/pkgconfig/lapack.pc +11 -0
  305. casadi/pkgconfig/openblas.pc +1 -1
  306. casadi/pkgconfig/osi-cbc.pc +1 -1
  307. casadi/pkgconfig/osi-clp.pc +1 -1
  308. casadi/pkgconfig/osi-unittests.pc +1 -1
  309. casadi/pkgconfig/osi.pc +1 -1
  310. casadi/pkgconfig/sleqp.pc +10 -0
  311. {casadi-3.6.3.dist-info → casadi-3.6.4.dist-info}/METADATA +1 -1
  312. {casadi-3.6.3.dist-info → casadi-3.6.4.dist-info}/RECORD +314 -274
  313. casadi/libCbc.so.3.10.6 +0 -0
  314. casadi/libCbcSolver.so.3.10.6 +0 -0
  315. casadi/libCgl.so.1.10.4 +0 -0
  316. casadi/libCoinUtils.so.3.11.6 +0 -0
  317. casadi/libOsiClp.so.1.14.7 +0 -0
  318. casadi/libbonmin.so.4.8.8 +0 -0
  319. casadi/libhighs.so.1.4 +0 -0
  320. casadi/libhighs.so.1.4.0 +0 -0
  321. /casadi/{libOsi.so.1.13.7 → libOsi.so.1.13.9} +0 -0
  322. {casadi-3.6.3.dist-info → casadi-3.6.4.dist-info}/WHEEL +0 -0
@@ -0,0 +1,56 @@
1
+ #ifndef __SRC_LIB_QPSOLVER_ASM_HPP__
2
+ #define __SRC_LIB_QPSOLVER_ASM_HPP__
3
+
4
+ #include "qpsolver/instance.hpp"
5
+ #include "qpsolver/statistics.hpp"
6
+ #include "qpsolver/qpconst.hpp"
7
+ #include "qpsolver/settings.hpp"
8
+ #include "util/HighsTimer.h"
9
+
10
+ enum class QpAsmStatus {
11
+ OK,
12
+ NEGATIVEEIGENVALUEINREDUCEDHESSIAN,
13
+ BASISRANKDEFICIENT
14
+ };
15
+
16
+ struct QpSolution {
17
+ Vector primal;
18
+ Vector rowactivity;
19
+ Vector dualvar;
20
+ Vector dualcon;
21
+
22
+ std::vector<BasisStatus> status_var;
23
+ std::vector<BasisStatus> status_con;
24
+
25
+ QpSolution(Instance& instance) : primal(Vector(instance.num_var)),
26
+ rowactivity(Vector(instance.num_con)),
27
+ dualvar(instance.num_var),
28
+ dualcon(instance.num_con),
29
+ status_var(instance.num_var),
30
+ status_con(instance.num_con) {}
31
+ };
32
+
33
+
34
+ struct QpHotstartInformation {
35
+ std::vector<HighsInt> active;
36
+ std::vector<HighsInt> inactive;
37
+ std::vector<BasisStatus> status;
38
+ Vector primal;
39
+ Vector rowact;
40
+
41
+ QpHotstartInformation(HighsInt num_var, HighsInt num_row)
42
+ : primal(Vector(num_var)), rowact(Vector(num_row)) {}
43
+ };
44
+
45
+ // the purpose of this is the pure algorithmic solution of a QP instance with given hotstart information.
46
+ // scenarios:
47
+ // 1) start from a given phase1 solution
48
+ // 2) start from a user-given hotstart solution
49
+ // 3) start from a qp solution that was attained from a scaled instance and cleanup
50
+ // 4) start from a qp solution that was attained from a perturbed instance and cleanup
51
+ // 5) start from a qp solution and cleanup after recomputing basis and reduced hessian factorization
52
+
53
+
54
+ QpAsmStatus solveqp_actual(Instance& instance, Settings& settings, QpHotstartInformation& startinfo, Statistics& stats, QpModelStatus& status, QpSolution& solution, HighsTimer& qp_timer);
55
+
56
+ #endif
@@ -0,0 +1,12 @@
1
+ #ifndef __SRC_LIB_QPSOLVER_QUASS_HPP__
2
+ #define __SRC_LIB_QPSOLVER_QUASS_HPP__
3
+
4
+ #include "qpsolver/instance.hpp"
5
+ #include "qpsolver/qpconst.hpp"
6
+ #include "qpsolver/a_asm.hpp"
7
+ #include "qpsolver/settings.hpp"
8
+
9
+
10
+ QpAsmStatus solveqp(Instance& instance, Settings& settings, Statistics& stats, QpModelStatus& modelstatus, QpSolution& solution, HighsTimer& qp_timer);
11
+
12
+ #endif
@@ -10,14 +10,11 @@
10
10
  struct Quass {
11
11
  Quass(Runtime& rt);
12
12
 
13
- void solve(const Vector& x0, const Vector& ra, Basis& b0);
14
-
15
- void solve();
13
+ void solve(const Vector& x0, const Vector& ra, Basis& b0, HighsTimer& timer);
16
14
 
17
15
  private:
18
16
  Runtime& runtime;
19
17
 
20
- void loginformation(Runtime& rt, Basis& basis, CholeskyFactor& factor);
21
18
  };
22
19
 
23
20
  #endif
@@ -2,13 +2,11 @@
2
2
  /* */
3
3
  /* This file is part of the HiGHS linear optimization suite */
4
4
  /* */
5
- /* Written and engineered 2008-2022 at the University of Edinburgh */
5
+ /* Written and engineered 2008-2023 by Julian Hall, Ivet Galabova, */
6
+ /* Leona Gottwald and Michael Feldmeier */
6
7
  /* */
7
8
  /* Available as open-source under the MIT License */
8
9
  /* */
9
- /* Authors: Julian Hall, Ivet Galabova, Leona Gottwald and Michael */
10
- /* Feldmeier */
11
- /* */
12
10
  /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
13
11
  #ifndef SIMPLEX_HAPP_H_
14
12
  #define SIMPLEX_HAPP_H_
@@ -147,17 +145,17 @@ inline HighsStatus solveLpSimplex(HighsLpSolverObject& solver_object) {
147
145
  return returnFromSolveLpSimplex(solver_object, call_status);
148
146
  }
149
147
  } else {
150
- // Starting from a logical basis, so consider dualising and/or
148
+ // Starting from a logical basis, so consider dualizing and/or
151
149
  // permuting the LP
152
- if (options.simplex_dualise_strategy == kHighsOptionChoose ||
153
- options.simplex_dualise_strategy == kHighsOptionOn) {
154
- // Dualise unless we choose not to
155
- bool dualise_lp = true;
156
- if (options.simplex_dualise_strategy == kHighsOptionChoose) {
150
+ if (options.simplex_dualize_strategy == kHighsOptionChoose ||
151
+ options.simplex_dualize_strategy == kHighsOptionOn) {
152
+ // Dualize unless we choose not to
153
+ bool dualize_lp = true;
154
+ if (options.simplex_dualize_strategy == kHighsOptionChoose) {
157
155
  if (incumbent_lp.num_row_ < 10 * incumbent_lp.num_col_)
158
- dualise_lp = false;
156
+ dualize_lp = false;
159
157
  }
160
- if (dualise_lp) ekk_instance.dualise();
158
+ if (dualize_lp) ekk_instance.dualize();
161
159
  }
162
160
  if (options.simplex_permute_strategy == kHighsOptionChoose ||
163
161
  options.simplex_permute_strategy == kHighsOptionOn) {
@@ -186,9 +184,9 @@ inline HighsStatus solveLpSimplex(HighsLpSolverObject& solver_object) {
186
184
  return_status = ekk_instance.solve();
187
185
  solved_unscaled_lp = true;
188
186
  ekk_instance.unpermute();
189
- ekk_instance.undualise();
187
+ ekk_instance.undualize();
190
188
  assert(!ekk_instance.status_.is_permuted &&
191
- !ekk_instance.status_.is_dualised);
189
+ !ekk_instance.status_.is_dualized);
192
190
  if (options.cost_scale_factor) {
193
191
  double cost_scale_factor = pow(2.0, -options.cost_scale_factor);
194
192
  highsLogDev(options.log_options, HighsLogType::kInfo,
@@ -211,9 +209,9 @@ inline HighsStatus solveLpSimplex(HighsLpSolverObject& solver_object) {
211
209
  //
212
210
  return_status = ekk_instance.solve();
213
211
  ekk_instance.unpermute();
214
- ekk_instance.undualise();
212
+ ekk_instance.undualize();
215
213
  assert(!ekk_instance.status_.is_permuted &&
216
- !ekk_instance.status_.is_dualised);
214
+ !ekk_instance.status_.is_dualized);
217
215
  //
218
216
  if (options.cost_scale_factor) {
219
217
  double cost_scale_factor = pow(2.0, -options.cost_scale_factor);
@@ -2,13 +2,11 @@
2
2
  /* */
3
3
  /* This file is part of the HiGHS linear optimization suite */
4
4
  /* */
5
- /* Written and engineered 2008-2022 at the University of Edinburgh */
5
+ /* Written and engineered 2008-2023 by Julian Hall, Ivet Galabova, */
6
+ /* Leona Gottwald and Michael Feldmeier */
6
7
  /* */
7
8
  /* Available as open-source under the MIT License */
8
9
  /* */
9
- /* Authors: Julian Hall, Ivet Galabova, Leona Gottwald and Michael */
10
- /* Feldmeier */
11
- /* */
12
10
  /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
13
11
  /**@file simplex/HEkk.h
14
12
  * @brief Primal simplex solver for HiGHS
@@ -16,6 +14,7 @@
16
14
  #ifndef SIMPLEX_HEKK_H_
17
15
  #define SIMPLEX_HEKK_H_
18
16
 
17
+ #include "lp_data/HighsCallback.h"
19
18
  #include "simplex/HSimplexNla.h"
20
19
  #include "simplex/HighsSimplexAnalysis.h"
21
20
  #include "util/HSet.h"
@@ -33,7 +32,7 @@ class HEkk {
33
32
  void clear();
34
33
  void clearEkkLp();
35
34
  void clearEkkData();
36
- void clearEkkDualise();
35
+ void clearEkkDualize();
37
36
  void clearEkkDualEdgeWeightData();
38
37
  void clearEkkPointers();
39
38
  void clearEkkDataInfo();
@@ -58,13 +57,14 @@ class HEkk {
58
57
  void ftran(HVector& rhs, const double expected_density);
59
58
 
60
59
  void moveLp(HighsLpSolverObject& solver_object);
61
- void setPointers(HighsOptions* options, HighsTimer* timer);
60
+ void setPointers(HighsCallback* callback, HighsOptions* options,
61
+ HighsTimer* timer);
62
62
  HighsSparseMatrix* getScaledAMatrixPointer();
63
63
  HighsScale* getScalePointer();
64
64
 
65
65
  void initialiseEkk();
66
- HighsStatus dualise();
67
- HighsStatus undualise();
66
+ HighsStatus dualize();
67
+ HighsStatus undualize();
68
68
  HighsStatus permute();
69
69
  HighsStatus unpermute();
70
70
  HighsStatus solve(const bool force_phase2 = false);
@@ -133,6 +133,7 @@ class HEkk {
133
133
  bool debugNlaScalingOk(const HighsLp& lp) const;
134
134
 
135
135
  // Data members
136
+ HighsCallback* callback_;
136
137
  HighsOptions* options_;
137
138
  HighsTimer* timer_;
138
139
  HighsSimplexAnalysis analysis_;
@@ -169,11 +170,11 @@ class HEkk {
169
170
  HighsInt return_primal_solution_status_;
170
171
  HighsInt return_dual_solution_status_;
171
172
 
172
- // Data to be retained after proving primal infeasiblilty
173
+ // Data to be retained after proving primal infeasibility
173
174
  vector<HighsInt> proof_index_;
174
175
  vector<double> proof_value_;
175
176
 
176
- // Data to be retained when dualising
177
+ // Data to be retained when dualizing
177
178
  HighsInt original_num_col_;
178
179
  HighsInt original_num_row_;
179
180
  HighsInt original_num_nz_;
@@ -293,7 +294,7 @@ class HEkk {
293
294
  void invalidatePrimalMaxSumInfeasibilityRecord();
294
295
  void invalidateDualInfeasibilityRecord();
295
296
  void invalidateDualMaxSumInfeasibilityRecord();
296
- bool bailoutOnTimeIterations();
297
+ bool bailout();
297
298
  HighsStatus returnFromEkkSolve(const HighsStatus return_status);
298
299
  HighsStatus returnFromSolve(const HighsStatus return_status);
299
300
 
@@ -2,13 +2,11 @@
2
2
  /* */
3
3
  /* This file is part of the HiGHS linear optimization suite */
4
4
  /* */
5
- /* Written and engineered 2008-2022 at the University of Edinburgh */
5
+ /* Written and engineered 2008-2023 by Julian Hall, Ivet Galabova, */
6
+ /* Leona Gottwald and Michael Feldmeier */
6
7
  /* */
7
8
  /* Available as open-source under the MIT License */
8
9
  /* */
9
- /* Authors: Julian Hall, Ivet Galabova, Leona Gottwald and Michael */
10
- /* Feldmeier */
11
- /* */
12
10
  /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
13
11
  /**@file simplex/HEkkDual.h
14
12
  * @brief Dual simplex solver for HiGHS
@@ -2,13 +2,11 @@
2
2
  /* */
3
3
  /* This file is part of the HiGHS linear optimization suite */
4
4
  /* */
5
- /* Written and engineered 2008-2022 at the University of Edinburgh */
5
+ /* Written and engineered 2008-2023 by Julian Hall, Ivet Galabova, */
6
+ /* Leona Gottwald and Michael Feldmeier */
6
7
  /* */
7
8
  /* Available as open-source under the MIT License */
8
9
  /* */
9
- /* Authors: Julian Hall, Ivet Galabova, Leona Gottwald and Michael */
10
- /* Feldmeier */
11
- /* */
12
10
  /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
13
11
  /**@file simplex/HEkkDualRHS.h
14
12
  * @brief Dual simplex optimality test for HiGHS
@@ -78,9 +76,10 @@ class HEkkDualRHS {
78
76
  );
79
77
 
80
78
  /**
81
- * @brief Update the primal values by adding a multiple of a given std::vector
79
+ * @brief Update the primal values by adding a multiple of a given
80
+ * std::vector, returning false if infinite values are created
82
81
  */
83
- void updatePrimal(
82
+ bool updatePrimal(
84
83
  HVector* column, //!< Column to add into primal values
85
84
  double theta //!< Multiple of column to add into primal values
86
85
  );
@@ -2,13 +2,11 @@
2
2
  /* */
3
3
  /* This file is part of the HiGHS linear optimization suite */
4
4
  /* */
5
- /* Written and engineered 2008-2022 at the University of Edinburgh */
5
+ /* Written and engineered 2008-2023 by Julian Hall, Ivet Galabova, */
6
+ /* Leona Gottwald and Michael Feldmeier */
6
7
  /* */
7
8
  /* Available as open-source under the MIT License */
8
9
  /* */
9
- /* Authors: Julian Hall, Ivet Galabova, Leona Gottwald and Michael */
10
- /* Feldmeier */
11
- /* */
12
10
  /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
13
11
  /**@file simplex/HEkkDualRow.h
14
12
  * @brief Dual simplex ratio test for HiGHS
@@ -2,13 +2,11 @@
2
2
  /* */
3
3
  /* This file is part of the HiGHS linear optimization suite */
4
4
  /* */
5
- /* Written and engineered 2008-2022 at the University of Edinburgh */
5
+ /* Written and engineered 2008-2023 by Julian Hall, Ivet Galabova, */
6
+ /* Leona Gottwald and Michael Feldmeier */
6
7
  /* */
7
8
  /* Available as open-source under the MIT License */
8
9
  /* */
9
- /* Authors: Julian Hall, Ivet Galabova, Leona Gottwald and Michael */
10
- /* Feldmeier */
11
- /* */
12
10
  /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
13
11
  /**@file simplex/HEkkPrimal.h
14
12
  * @brief Phase 2 primal simplex solver for HiGHS
@@ -2,13 +2,11 @@
2
2
  /* */
3
3
  /* This file is part of the HiGHS linear optimization suite */
4
4
  /* */
5
- /* Written and engineered 2008-2022 at the University of Edinburgh */
5
+ /* Written and engineered 2008-2023 by Julian Hall, Ivet Galabova, */
6
+ /* Leona Gottwald and Michael Feldmeier */
6
7
  /* */
7
8
  /* Available as open-source under the MIT License */
8
9
  /* */
9
- /* Authors: Julian Hall, Ivet Galabova, Leona Gottwald and Michael */
10
- /* Feldmeier */
11
- /* */
12
10
  /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
13
11
  /**@file lp_data/HSimplex.h
14
12
  * @brief
@@ -2,13 +2,11 @@
2
2
  /* */
3
3
  /* This file is part of the HiGHS linear optimization suite */
4
4
  /* */
5
- /* Written and engineered 2008-2022 at the University of Edinburgh */
5
+ /* Written and engineered 2008-2023 by Julian Hall, Ivet Galabova, */
6
+ /* Leona Gottwald and Michael Feldmeier */
6
7
  /* */
7
8
  /* Available as open-source under the MIT License */
8
9
  /* */
9
- /* Authors: Julian Hall, Ivet Galabova, Leona Gottwald and Michael */
10
- /* Feldmeier */
11
- /* */
12
10
  /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
13
11
  /**@file lp_data/HSimplexDebug.h
14
12
  * @brief
@@ -2,13 +2,11 @@
2
2
  /* */
3
3
  /* This file is part of the HiGHS linear optimization suite */
4
4
  /* */
5
- /* Written and engineered 2008-2022 at the University of Edinburgh */
5
+ /* Written and engineered 2008-2023 by Julian Hall, Ivet Galabova, */
6
+ /* Leona Gottwald and Michael Feldmeier */
6
7
  /* */
7
8
  /* Available as open-source under the MIT License */
8
9
  /* */
9
- /* Authors: Julian Hall, Ivet Galabova, Leona Gottwald and Michael */
10
- /* Feldmeier */
11
- /* */
12
10
  /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
13
11
  /**@file simplex/HSimplexNla.h
14
12
  *
@@ -2,13 +2,11 @@
2
2
  /* */
3
3
  /* This file is part of the HiGHS linear optimization suite */
4
4
  /* */
5
- /* Written and engineered 2008-2022 at the University of Edinburgh */
5
+ /* Written and engineered 2008-2023 by Julian Hall, Ivet Galabova, */
6
+ /* Leona Gottwald and Michael Feldmeier */
6
7
  /* */
7
8
  /* Available as open-source under the MIT License */
8
9
  /* */
9
- /* Authors: Julian Hall, Ivet Galabova, Leona Gottwald and Michael */
10
- /* Feldmeier */
11
- /* */
12
10
  /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
13
11
  /**@file lp_data/HSimplexReport.h
14
12
  * @brief
@@ -21,6 +19,6 @@
21
19
 
22
20
  void reportSimplexPhaseIterations(const HighsLogOptions& log_options,
23
21
  const HighsInt iteration_count,
24
- const HighsSimplexInfo& info,
22
+ HighsSimplexInfo& info,
25
23
  const bool initialise = false);
26
24
  #endif // SIMPLEX_HSIMPLEXREPORT_H_
@@ -2,13 +2,11 @@
2
2
  /* */
3
3
  /* This file is part of the HiGHS linear optimization suite */
4
4
  /* */
5
- /* Written and engineered 2008-2022 at the University of Edinburgh */
5
+ /* Written and engineered 2008-2023 by Julian Hall, Ivet Galabova, */
6
+ /* Leona Gottwald and Michael Feldmeier */
6
7
  /* */
7
8
  /* Available as open-source under the MIT License */
8
9
  /* */
9
- /* Authors: Julian Hall, Ivet Galabova, Leona Gottwald and Michael */
10
- /* Feldmeier */
11
- /* */
12
10
  /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
13
11
  /**@file simplex/HighsSimplexAnalysis.h
14
12
  * @brief Analyse simplex iterations, both for run-time control and data
@@ -2,13 +2,11 @@
2
2
  /* */
3
3
  /* This file is part of the HiGHS linear optimization suite */
4
4
  /* */
5
- /* Written and engineered 2008-2022 at the University of Edinburgh */
5
+ /* Written and engineered 2008-2023 by Julian Hall, Ivet Galabova, */
6
+ /* Leona Gottwald and Michael Feldmeier */
6
7
  /* */
7
8
  /* Available as open-source under the MIT License */
8
9
  /* */
9
- /* Authors: Julian Hall, Ivet Galabova, Leona Gottwald and Michael */
10
- /* Feldmeier */
11
- /* */
12
10
  /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
13
11
  /**@file lp_data/SimplexConst.h
14
12
  * @brief Constants for HiGHS simplex solvers
@@ -121,6 +119,7 @@ enum RebuildReason {
121
119
  kRebuildReasonPrimalInfeasibleInPrimalSimplex, // 8
122
120
  kRebuildReasonChooseColumnFail, // 9
123
121
  kRebuildReasonForceRefactor, // 10
122
+ kRebuildReasonExcessivePrimalValue, // 11
124
123
  kRebuildReasonCount
125
124
  };
126
125
 
@@ -168,7 +167,10 @@ const double kMinDualSteepestEdgeWeight = 1e-4;
168
167
  const HighsInt kNoRowSought = -2;
169
168
  const HighsInt kNoRowChosen = -1;
170
169
 
171
- const double minDualSteepestEdgeWeight = 1e-4;
170
+ // Switch to use code to check that, unless the basis supplied by the
171
+ // MIP solver was alien, the simplex solver starts from dual
172
+ // feasibility.
173
+ const bool kDebugMipNodeDualFeasible = false;
172
174
 
173
175
  enum class LpAction {
174
176
  kScale = 0,
@@ -2,13 +2,11 @@
2
2
  /* */
3
3
  /* This file is part of the HiGHS linear optimization suite */
4
4
  /* */
5
- /* Written and engineered 2008-2022 at the University of Edinburgh */
5
+ /* Written and engineered 2008-2023 by Julian Hall, Ivet Galabova, */
6
+ /* Leona Gottwald and Michael Feldmeier */
6
7
  /* */
7
8
  /* Available as open-source under the MIT License */
8
9
  /* */
9
- /* Authors: Julian Hall, Ivet Galabova, Leona Gottwald and Michael */
10
- /* Feldmeier */
11
- /* */
12
10
  /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
13
11
  /**@file lp_data/SimplexStruct.h
14
12
  * @brief Structs for HiGHS simplex solvers
@@ -44,7 +42,7 @@ struct SimplexBasis {
44
42
  struct HighsSimplexStatus {
45
43
  // Status of LP solved by the simplex method and its data
46
44
  bool initialised_for_new_lp = false;
47
- bool is_dualised = false;
45
+ bool is_dualized = false;
48
46
  bool is_permuted = false;
49
47
  bool initialised_for_solve = false;
50
48
  bool has_basis = false; // The simplex LP has a valid simplex basis
@@ -221,6 +219,14 @@ struct HighsSimplexInfo {
221
219
  HighsInt primal_phase2_iteration_count = 0;
222
220
  HighsInt primal_bound_swap = 0;
223
221
 
222
+ // Starting values for use in reportSimplexPhaseIterations
223
+ HighsInt iteration_count0 = 0;
224
+ HighsInt dual_phase1_iteration_count0 = 0;
225
+ HighsInt dual_phase2_iteration_count0 = 0;
226
+ HighsInt primal_phase1_iteration_count0 = 0;
227
+ HighsInt primal_phase2_iteration_count0 = 0;
228
+ HighsInt primal_bound_swap0 = 0;
229
+
224
230
  HighsInt min_concurrency = 1;
225
231
  HighsInt num_concurrency = 1;
226
232
  HighsInt max_concurrency = kSimplexConcurrencyLimit;
@@ -2,13 +2,11 @@
2
2
  /* */
3
3
  /* This file is part of the HiGHS linear optimization suite */
4
4
  /* */
5
- /* Written and engineered 2008-2022 at the University of Edinburgh */
5
+ /* Written and engineered 2008-2023 by Julian Hall, Ivet Galabova, */
6
+ /* Leona Gottwald and Michael Feldmeier */
6
7
  /* */
7
8
  /* Available as open-source under the MIT License */
8
9
  /* */
9
- /* Authors: Julian Hall, Ivet Galabova, Leona Gottwald and Michael */
10
- /* Feldmeier */
11
- /* */
12
10
  /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
13
11
  /**@file simplex/SimplexTimer.h
14
12
  * @brief Indices of simplex iClocks
@@ -2,13 +2,11 @@
2
2
  /* */
3
3
  /* This file is part of the HiGHS linear optimization suite */
4
4
  /* */
5
- /* Written and engineered 2008-2022 at the University of Edinburgh */
5
+ /* Written and engineered 2008-2023 by Julian Hall, Ivet Galabova, */
6
+ /* Leona Gottwald and Michael Feldmeier */
6
7
  /* */
7
8
  /* Available as open-source under the MIT License */
8
9
  /* */
9
- /* Authors: Julian Hall, Ivet Galabova, Leona Gottwald and Michael */
10
- /* Feldmeier */
11
- /* */
12
10
  /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
13
11
  /**@file test/DevKkt.h
14
12
  * @brief
@@ -2,13 +2,11 @@
2
2
  /* */
3
3
  /* This file is part of the HiGHS linear optimization suite */
4
4
  /* */
5
- /* Written and engineered 2008-2022 at the University of Edinburgh */
5
+ /* Written and engineered 2008-2023 by Julian Hall, Ivet Galabova, */
6
+ /* Leona Gottwald and Michael Feldmeier */
6
7
  /* */
7
8
  /* Available as open-source under the MIT License */
8
9
  /* */
9
- /* Authors: Julian Hall, Ivet Galabova, Leona Gottwald and Michael */
10
- /* Feldmeier */
11
- /* */
12
10
  /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
13
11
  /**@file test/KktChStep.h
14
12
  * @brief
@@ -2,13 +2,11 @@
2
2
  /* */
3
3
  /* This file is part of the HiGHS linear optimization suite */
4
4
  /* */
5
- /* Written and engineered 2008-2022 at the University of Edinburgh */
5
+ /* Written and engineered 2008-2023 by Julian Hall, Ivet Galabova, */
6
+ /* Leona Gottwald and Michael Feldmeier */
6
7
  /* */
7
8
  /* Available as open-source under the MIT License */
8
9
  /* */
9
- /* Authors: Julian Hall, Ivet Galabova, Leona Gottwald and Michael */
10
- /* Feldmeier */
11
- /* */
12
10
  /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
13
11
  /**@file util/FactorTimer.h
14
12
  * @brief Indices of factor iClocks
@@ -2,13 +2,11 @@
2
2
  /* */
3
3
  /* This file is part of the HiGHS linear optimization suite */
4
4
  /* */
5
- /* Written and engineered 2008-2022 at the University of Edinburgh */
5
+ /* Written and engineered 2008-2023 by Julian Hall, Ivet Galabova, */
6
+ /* Leona Gottwald and Michael Feldmeier */
6
7
  /* */
7
8
  /* Available as open-source under the MIT License */
8
9
  /* */
9
- /* Authors: Julian Hall, Ivet Galabova, Leona Gottwald and Michael */
10
- /* Feldmeier */
11
- /* */
12
10
  /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
13
11
  /**@file util/HFactor.h
14
12
  * @brief Basis matrix factorization, update and solves for HiGHS
@@ -2,13 +2,11 @@
2
2
  /* */
3
3
  /* This file is part of the HiGHS linear optimization suite */
4
4
  /* */
5
- /* Written and engineered 2008-2022 at the University of Edinburgh */
5
+ /* Written and engineered 2008-2023 by Julian Hall, Ivet Galabova, */
6
+ /* Leona Gottwald and Michael Feldmeier */
6
7
  /* */
7
8
  /* Available as open-source under the MIT License */
8
9
  /* */
9
- /* Authors: Julian Hall, Ivet Galabova, Leona Gottwald and Michael */
10
- /* Feldmeier */
11
- /* */
12
10
  /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
13
11
  /**@file util/HFactorConst.h
14
12
  * @brief Constants for basis matrix factorization, update and solves for HiGHS
@@ -2,13 +2,11 @@
2
2
  /* */
3
3
  /* This file is part of the HiGHS linear optimization suite */
4
4
  /* */
5
- /* Written and engineered 2008-2022 at the University of Edinburgh */
5
+ /* Written and engineered 2008-2023 by Julian Hall, Ivet Galabova, */
6
+ /* Leona Gottwald and Michael Feldmeier */
6
7
  /* */
7
8
  /* Available as open-source under the MIT License */
8
9
  /* */
9
- /* Authors: Julian Hall, Ivet Galabova, Leona Gottwald and Michael */
10
- /* Feldmeier */
11
- /* */
12
10
  /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
13
11
  /**@file util/HFactorDebug.h
14
12
  * @brief
@@ -2,13 +2,11 @@
2
2
  /* */
3
3
  /* This file is part of the HiGHS linear optimization suite */
4
4
  /* */
5
- /* Written and engineered 2008-2022 at the University of Edinburgh */
5
+ /* Written and engineered 2008-2023 by Julian Hall, Ivet Galabova, */
6
+ /* Leona Gottwald and Michael Feldmeier */
6
7
  /* */
7
8
  /* Available as open-source under the MIT License */
8
9
  /* */
9
- /* Authors: Julian Hall, Ivet Galabova, Leona Gottwald and Michael */
10
- /* Feldmeier */
11
- /* */
12
10
  /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
13
11
  /**@file util/HSet.h
14
12
  * @brief Set structure for HiGHS.
@@ -42,7 +40,7 @@ class HSet {
42
40
  bool setup(const HighsInt size, //!< Dimension of the set to be initialised
43
41
  const HighsInt max_entry, //!< Maximum entry to be in the set.
44
42
  const bool output_flag = false, //!< Option for output
45
- FILE* log_file_stream = NULL, //!< File stream for output
43
+ FILE* log_stream = NULL, //!< File stream for output
46
44
  const bool debug = false, //!< Debug mode
47
45
  const bool allow_assert = true //!< Allow asserts in debug
48
46
  );