casadi 3.6.5__cp312-none-manylinux2014_i686.whl → 3.6.7__cp312-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.
- casadi/_casadi.so +0 -0
- casadi/casadi.py +739 -308
- casadi/cbc +0 -0
- casadi/clp +0 -0
- casadi/cmake/casadi-config-version.cmake +1 -1
- casadi/cmake/highs/highs-config.cmake +6 -13
- casadi/cmake/highs/highs-targets-release.cmake +13 -13
- casadi/cmake/highs/highs-targets.cmake +13 -10
- casadi/highs +0 -0
- casadi/include/casadi/casadi.i +3 -0
- casadi/include/casadi/casadi_c.h +2 -0
- casadi/include/casadi/config.h +8 -8
- casadi/include/casadi/core/casadi_common.hpp +1 -0
- casadi/include/casadi/core/casadi_misc.hpp +52 -0
- casadi/include/casadi/core/casadi_types.hpp +3 -2
- casadi/include/casadi/core/code_generator.hpp +30 -1
- casadi/include/casadi/core/global_options.hpp +2 -0
- casadi/include/casadi/core/mx.hpp +18 -3
- casadi/include/casadi/core/optistack.hpp +23 -0
- casadi/include/casadi/core/runtime/casadi_nlp.hpp +19 -4
- casadi/include/casadi/core/runtime/casadi_ocp_block.hpp +55 -0
- casadi/include/casadi/core/runtime/casadi_oracle.hpp +44 -0
- casadi/include/casadi/core/runtime/casadi_oracle_callback.hpp +39 -0
- casadi/include/casadi/core/runtime/casadi_runtime.hpp +4 -1
- casadi/include/casadi/core/runtime/casadi_scaled_copy.hpp +31 -0
- casadi/include/casadi/core/serializing_stream.hpp +2 -2
- casadi/include/casadi/core/sparsity.hpp +7 -0
- casadi/include/casadi/doc.i +1513 -1016
- casadi/include/casadi/doc_merged.i +965 -719
- casadi/include/casadi/mem.h +1 -0
- casadi/include/daqp/api.h +46 -0
- casadi/include/daqp/auxiliary.h +29 -0
- casadi/include/daqp/bnb.h +32 -0
- casadi/include/daqp/codegen.h +18 -0
- casadi/include/daqp/constants.h +92 -0
- casadi/include/daqp/daqp.h +22 -0
- casadi/include/daqp/daqp_prox.h +18 -0
- casadi/include/daqp/factorization.h +18 -0
- casadi/include/daqp/types.h +161 -0
- casadi/include/daqp/utils.h +44 -0
- casadi/include/highs/HConfig.h +6 -5
- casadi/include/highs/Highs.h +93 -23
- casadi/include/highs/filereaderlp/def.hpp +19 -0
- casadi/include/highs/interfaces/highs_c_api.h +200 -24
- casadi/include/highs/io/Filereader.h +1 -1
- casadi/include/highs/io/FilereaderEms.h +1 -1
- casadi/include/highs/io/FilereaderLp.h +1 -1
- casadi/include/highs/io/FilereaderMps.h +1 -1
- casadi/include/highs/io/HMPSIO.h +1 -1
- casadi/include/highs/io/HMpsFF.h +5 -3
- casadi/include/highs/io/HighsIO.h +18 -8
- casadi/include/highs/io/LoadOptions.h +1 -1
- casadi/include/highs/ipm/IpxSolution.h +35 -0
- casadi/include/highs/ipm/IpxWrapper.h +1 -1
- casadi/include/highs/ipm/basiclu/basiclu.h +161 -0
- casadi/include/highs/ipm/basiclu/basiclu_factorize.h +247 -0
- casadi/include/highs/ipm/basiclu/basiclu_get_factors.h +108 -0
- casadi/include/highs/ipm/basiclu/basiclu_initialize.h +119 -0
- casadi/include/highs/ipm/basiclu/basiclu_obj_factorize.h +34 -0
- casadi/include/highs/ipm/basiclu/basiclu_obj_free.h +19 -0
- casadi/include/highs/ipm/basiclu/basiclu_obj_get_factors.h +34 -0
- casadi/include/highs/ipm/basiclu/basiclu_obj_initialize.h +46 -0
- casadi/include/highs/ipm/basiclu/basiclu_obj_solve_dense.h +29 -0
- casadi/include/highs/ipm/basiclu/basiclu_obj_solve_for_update.h +42 -0
- casadi/include/highs/ipm/basiclu/basiclu_obj_solve_sparse.h +32 -0
- casadi/include/highs/ipm/basiclu/basiclu_obj_update.h +31 -0
- casadi/include/highs/ipm/basiclu/basiclu_object.h +30 -0
- casadi/include/highs/ipm/basiclu/basiclu_solve_dense.h +75 -0
- casadi/include/highs/ipm/basiclu/basiclu_solve_for_update.h +169 -0
- casadi/include/highs/ipm/basiclu/basiclu_solve_sparse.h +112 -0
- casadi/include/highs/ipm/basiclu/basiclu_update.h +125 -0
- casadi/include/highs/ipm/basiclu/lu_def.h +39 -0
- casadi/include/highs/ipm/basiclu/lu_file.h +21 -0
- casadi/include/highs/ipm/basiclu/lu_internal.h +220 -0
- casadi/include/highs/ipm/basiclu/lu_list.h +168 -0
- casadi/include/highs/ipm/ipx/basiclu_kernel.h +20 -0
- casadi/include/highs/ipm/ipx/basiclu_wrapper.h +47 -0
- casadi/include/highs/ipm/ipx/basis.h +351 -0
- casadi/include/highs/ipm/ipx/conjugate_residuals.h +74 -0
- casadi/include/highs/ipm/ipx/control.h +163 -0
- casadi/include/highs/ipm/ipx/crossover.h +157 -0
- casadi/include/highs/ipm/ipx/diagonal_precond.h +45 -0
- casadi/include/highs/ipm/ipx/forrest_tomlin.h +102 -0
- casadi/include/highs/ipm/ipx/guess_basis.h +21 -0
- casadi/include/highs/ipm/ipx/indexed_vector.h +113 -0
- casadi/include/highs/ipm/ipx/info.h +27 -0
- casadi/include/highs/ipm/ipx/ipm.h +94 -0
- casadi/include/highs/ipm/ipx/ipx_c.h +47 -0
- casadi/include/highs/ipm/ipx/ipx_config.h +9 -0
- casadi/include/highs/ipm/ipx/ipx_info.h +111 -0
- casadi/include/highs/ipm/ipx/ipx_internal.h +88 -0
- casadi/include/highs/ipm/ipx/ipx_parameters.h +75 -0
- casadi/include/highs/ipm/ipx/ipx_status.h +57 -0
- casadi/include/highs/ipm/ipx/iterate.h +328 -0
- casadi/include/highs/ipm/ipx/kkt_solver.h +70 -0
- casadi/include/highs/ipm/ipx/kkt_solver_basis.h +66 -0
- casadi/include/highs/ipm/ipx/kkt_solver_diag.h +48 -0
- casadi/include/highs/ipm/ipx/linear_operator.h +26 -0
- casadi/include/highs/ipm/ipx/lp_solver.h +201 -0
- casadi/include/highs/ipm/ipx/lu_factorization.h +79 -0
- casadi/include/highs/ipm/ipx/lu_update.h +129 -0
- casadi/include/highs/ipm/ipx/maxvolume.h +54 -0
- casadi/include/highs/ipm/ipx/model.h +409 -0
- casadi/include/highs/ipm/ipx/multistream.h +52 -0
- casadi/include/highs/ipm/ipx/normal_matrix.h +44 -0
- casadi/include/highs/ipm/ipx/power_method.h +44 -0
- casadi/include/highs/ipm/ipx/sparse_matrix.h +195 -0
- casadi/include/highs/ipm/ipx/sparse_utils.h +58 -0
- casadi/include/highs/ipm/ipx/splitted_normal_matrix.h +63 -0
- casadi/include/highs/ipm/ipx/starting_basis.h +39 -0
- casadi/include/highs/ipm/ipx/symbolic_invert.h +29 -0
- casadi/include/highs/ipm/ipx/timer.h +24 -0
- casadi/include/highs/ipm/ipx/utils.h +39 -0
- casadi/include/highs/lp_data/HConst.h +20 -10
- casadi/include/highs/lp_data/HStruct.h +23 -1
- casadi/include/highs/lp_data/HighsAnalysis.h +1 -1
- casadi/include/highs/lp_data/HighsCallback.h +10 -3
- casadi/include/highs/lp_data/HighsCallbackStruct.h +31 -5
- casadi/include/highs/lp_data/HighsDebug.h +1 -1
- casadi/include/highs/lp_data/HighsInfo.h +20 -2
- casadi/include/highs/lp_data/HighsInfoDebug.h +1 -1
- casadi/include/highs/lp_data/HighsLp.h +17 -1
- casadi/include/highs/lp_data/HighsLpSolverObject.h +1 -1
- casadi/include/highs/lp_data/HighsLpUtils.h +19 -19
- casadi/include/highs/lp_data/HighsModelUtils.h +1 -1
- casadi/include/highs/lp_data/HighsOptions.h +237 -10
- casadi/include/highs/lp_data/HighsRanging.h +1 -1
- casadi/include/highs/lp_data/HighsRuntimeOptions.h +2 -2
- casadi/include/highs/lp_data/HighsSolution.h +2 -2
- casadi/include/highs/lp_data/HighsSolutionDebug.h +1 -1
- casadi/include/highs/lp_data/HighsSolve.h +3 -1
- casadi/include/highs/lp_data/HighsStatus.h +1 -1
- casadi/include/highs/mip/HighsCliqueTable.h +4 -4
- casadi/include/highs/mip/HighsConflictPool.h +1 -1
- casadi/include/highs/mip/HighsCutGeneration.h +1 -1
- casadi/include/highs/mip/HighsCutPool.h +2 -2
- casadi/include/highs/mip/HighsDebugSol.h +22 -29
- casadi/include/highs/mip/HighsDomain.h +10 -2
- casadi/include/highs/mip/HighsDomainChange.h +1 -1
- casadi/include/highs/mip/HighsDynamicRowMatrix.h +5 -3
- casadi/include/highs/mip/HighsGFkSolve.h +3 -3
- casadi/include/highs/mip/HighsImplications.h +3 -3
- casadi/include/highs/mip/HighsLpAggregator.h +1 -1
- casadi/include/highs/mip/HighsLpRelaxation.h +6 -1
- casadi/include/highs/mip/HighsMipSolver.h +4 -2
- casadi/include/highs/mip/HighsMipSolverData.h +47 -4
- casadi/include/highs/mip/HighsModkSeparator.h +2 -2
- casadi/include/highs/mip/HighsNodeQueue.h +5 -3
- casadi/include/highs/mip/HighsObjectiveFunction.h +1 -1
- casadi/include/highs/mip/HighsPathSeparator.h +2 -2
- casadi/include/highs/mip/HighsPrimalHeuristics.h +1 -1
- casadi/include/highs/mip/HighsPseudocost.h +35 -23
- casadi/include/highs/mip/HighsRedcostFixing.h +1 -1
- casadi/include/highs/mip/HighsSearch.h +2 -1
- casadi/include/highs/mip/HighsSeparation.h +1 -1
- casadi/include/highs/mip/HighsSeparator.h +1 -1
- casadi/include/highs/mip/HighsTableauSeparator.h +1 -1
- casadi/include/highs/mip/HighsTransformedLp.h +1 -1
- casadi/include/highs/model/HighsHessian.h +5 -0
- casadi/include/highs/model/HighsHessianUtils.h +2 -0
- casadi/include/highs/model/HighsModel.h +10 -1
- casadi/include/highs/parallel/HighsMutex.h +2 -1
- casadi/include/highs/parallel/HighsParallel.h +7 -2
- casadi/include/highs/parallel/HighsTask.h +1 -2
- casadi/include/highs/pdlp/CupdlpWrapper.h +93 -0
- casadi/include/highs/pdlp/cupdlp/cupdlp_cs.h +41 -0
- casadi/include/highs/pdlp/cupdlp/cupdlp_defs.h +423 -0
- casadi/include/highs/pdlp/cupdlp/cupdlp_linalg.h +183 -0
- casadi/include/highs/pdlp/cupdlp/cupdlp_proj.h +19 -0
- casadi/include/highs/pdlp/cupdlp/cupdlp_restart.h +31 -0
- casadi/include/highs/pdlp/cupdlp/cupdlp_scaling_cuda.h +28 -0
- casadi/include/highs/pdlp/cupdlp/cupdlp_solver.h +98 -0
- casadi/include/highs/pdlp/cupdlp/cupdlp_step.h +33 -0
- casadi/include/highs/pdlp/cupdlp/cupdlp_utils.c +1726 -0
- casadi/include/highs/pdqsort/pdqsort.h +532 -0
- casadi/include/highs/presolve/HPresolve.h +27 -14
- casadi/include/highs/presolve/HPresolveAnalysis.h +1 -1
- casadi/include/highs/presolve/HighsPostsolveStack.h +92 -68
- casadi/include/highs/presolve/HighsSymmetry.h +6 -5
- casadi/include/highs/presolve/ICrash.h +8 -2
- casadi/include/highs/presolve/ICrashUtil.h +1 -1
- casadi/include/highs/presolve/ICrashX.h +1 -1
- casadi/include/highs/presolve/PresolveComponent.h +1 -1
- casadi/include/highs/qpsolver/a_asm.hpp +23 -12
- casadi/include/highs/qpsolver/a_quass.hpp +8 -1
- casadi/include/highs/qpsolver/basis.hpp +150 -0
- casadi/include/highs/qpsolver/crashsolution.hpp +12 -0
- casadi/include/highs/qpsolver/dantzigpricing.hpp +72 -0
- casadi/include/highs/qpsolver/devexpricing.hpp +99 -0
- casadi/include/highs/qpsolver/eventhandler.hpp +23 -0
- casadi/include/highs/qpsolver/factor.hpp +400 -0
- casadi/include/highs/qpsolver/feasibility_bounded.hpp +105 -0
- casadi/include/highs/qpsolver/feasibility_highs.hpp +270 -0
- casadi/include/highs/qpsolver/gradient.hpp +39 -0
- casadi/include/highs/qpsolver/instance.hpp +63 -0
- casadi/include/highs/qpsolver/matrix.hpp +335 -0
- casadi/include/highs/qpsolver/pricing.hpp +15 -0
- casadi/include/highs/qpsolver/qpconst.hpp +27 -0
- casadi/include/highs/qpsolver/{vector.hpp → qpvector.hpp} +25 -25
- casadi/include/highs/qpsolver/quass.hpp +1 -1
- casadi/include/highs/qpsolver/ratiotest.hpp +19 -0
- casadi/include/highs/qpsolver/runtime.hpp +38 -0
- casadi/include/highs/qpsolver/settings.hpp +57 -0
- casadi/include/highs/qpsolver/snippets.hpp +29 -0
- casadi/include/highs/qpsolver/statistics.hpp +23 -0
- casadi/include/highs/qpsolver/steepestedgepricing.hpp +167 -0
- casadi/include/highs/simplex/HApp.h +1 -1
- casadi/include/highs/simplex/HEkk.h +52 -18
- casadi/include/highs/simplex/HEkkDual.h +1 -1
- casadi/include/highs/simplex/HEkkDualRHS.h +6 -7
- casadi/include/highs/simplex/HEkkDualRow.h +2 -2
- casadi/include/highs/simplex/HEkkPrimal.h +6 -1
- casadi/include/highs/simplex/HSimplex.h +1 -3
- casadi/include/highs/simplex/HSimplexDebug.h +1 -1
- casadi/include/highs/simplex/HSimplexNla.h +1 -1
- casadi/include/highs/simplex/HSimplexReport.h +1 -1
- casadi/include/highs/simplex/HighsSimplexAnalysis.h +228 -100
- casadi/include/highs/simplex/SimplexConst.h +1 -1
- casadi/include/highs/simplex/SimplexStruct.h +2 -2
- casadi/include/highs/simplex/SimplexTimer.h +1 -1
- casadi/include/highs/test/DevKkt.h +1 -1
- casadi/include/highs/test/KktCh2.h +1 -1
- casadi/include/highs/util/FactorTimer.h +1 -1
- casadi/include/highs/util/HFactor.h +35 -6
- casadi/include/highs/util/HFactorConst.h +1 -1
- casadi/include/highs/util/HFactorDebug.h +1 -1
- casadi/include/highs/util/HSet.h +1 -1
- casadi/include/highs/util/HVector.h +1 -1
- casadi/include/highs/util/HVectorBase.h +1 -1
- casadi/include/highs/util/HighsCDouble.h +3 -3
- casadi/include/highs/util/HighsComponent.h +1 -1
- casadi/include/highs/util/HighsDataStack.h +4 -4
- casadi/include/highs/util/HighsDisjointSets.h +1 -1
- casadi/include/highs/util/HighsHash.h +28 -21
- casadi/include/highs/util/HighsHashTree.h +63 -63
- casadi/include/highs/util/HighsInt.h +1 -1
- casadi/include/highs/util/HighsIntegers.h +8 -9
- casadi/include/highs/util/HighsLinearSumBounds.h +1 -1
- casadi/include/highs/util/HighsMatrixPic.h +1 -1
- casadi/include/highs/util/HighsMatrixSlice.h +9 -6
- casadi/include/highs/util/HighsMatrixUtils.h +1 -1
- casadi/include/highs/util/HighsMemoryAllocation.h +55 -0
- casadi/include/highs/util/HighsRandom.h +27 -15
- casadi/include/highs/util/HighsRbTree.h +2 -2
- casadi/include/highs/util/HighsSort.h +7 -7
- casadi/include/highs/util/HighsSparseMatrix.h +5 -2
- casadi/include/highs/util/HighsSparseVectorSum.h +2 -2
- casadi/include/highs/util/HighsSplay.h +1 -1
- casadi/include/highs/util/HighsTimer.h +18 -9
- casadi/include/highs/util/HighsUtils.h +15 -8
- casadi/include/highs/util/stringutil.h +9 -4
- casadi/include/highs/zstr/strict_fstream.hpp +237 -0
- casadi/include/highs/zstr/zstr.hpp +472 -0
- casadi/include/licenses/daqp-external/LICENSE +21 -0
- casadi/include/licenses/highs-external/{LICENSE → LICENSE.txt} +1 -1
- casadi/include/osqp/constants.h +2 -3
- casadi/include/osqp/version.h +9 -0
- casadi/lib/libtinyxml2.a +0 -0
- casadi/libCbcSolver.so +0 -0
- casadi/libCbcSolver.so.3 +0 -0
- casadi/libCbcSolver.so.3.10.11 +0 -0
- casadi/libClpSolver.so +0 -0
- casadi/libClpSolver.so.1 +0 -0
- casadi/libClpSolver.so.1.14.9 +0 -0
- casadi/libbonmin.so +0 -0
- casadi/libbonmin.so.4 +0 -0
- casadi/libbonmin.so.4.8.9 +0 -0
- casadi/libcasadi.so +0 -0
- casadi/libcasadi.so.3.7 +0 -0
- casadi/libcasadi_conic_cbc.so +0 -0
- casadi/libcasadi_conic_cbc.so.3.7 +0 -0
- casadi/libcasadi_conic_clp.so +0 -0
- casadi/libcasadi_conic_clp.so.3.7 +0 -0
- casadi/libcasadi_conic_daqp.so +0 -0
- casadi/libcasadi_conic_daqp.so.3.7 +0 -0
- casadi/libcasadi_conic_gurobi.so +0 -0
- casadi/libcasadi_conic_gurobi.so.3.7 +0 -0
- casadi/libcasadi_conic_highs.so +0 -0
- casadi/libcasadi_conic_highs.so.3.7 +0 -0
- casadi/libcasadi_conic_ipqp.so +0 -0
- casadi/libcasadi_conic_ipqp.so.3.7 +0 -0
- casadi/libcasadi_conic_nlpsol.so +0 -0
- casadi/libcasadi_conic_nlpsol.so.3.7 +0 -0
- casadi/libcasadi_conic_osqp.so +0 -0
- casadi/libcasadi_conic_osqp.so.3.7 +0 -0
- casadi/libcasadi_conic_proxqp.so +0 -0
- casadi/libcasadi_conic_proxqp.so.3.7 +0 -0
- casadi/libcasadi_conic_qpoases.so +0 -0
- casadi/libcasadi_conic_qpoases.so.3.7 +0 -0
- casadi/libcasadi_conic_qrqp.so +0 -0
- casadi/libcasadi_conic_qrqp.so.3.7 +0 -0
- casadi/libcasadi_conic_superscs.so +0 -0
- casadi/libcasadi_conic_superscs.so.3.7 +0 -0
- casadi/libcasadi_integrator_collocation.so +0 -0
- casadi/libcasadi_integrator_collocation.so.3.7 +0 -0
- casadi/libcasadi_integrator_cvodes.so +0 -0
- casadi/libcasadi_integrator_cvodes.so.3.7 +0 -0
- casadi/libcasadi_integrator_idas.so +0 -0
- casadi/libcasadi_integrator_idas.so.3.7 +0 -0
- casadi/libcasadi_integrator_rk.so +0 -0
- casadi/libcasadi_integrator_rk.so.3.7 +0 -0
- casadi/libcasadi_nlpsol_alpaqa.so +0 -0
- casadi/libcasadi_nlpsol_alpaqa.so.3.7 +0 -0
- casadi/libcasadi_nlpsol_ampl.so +0 -0
- casadi/libcasadi_nlpsol_ampl.so.3.7 +0 -0
- casadi/libcasadi_nlpsol_blocksqp.so +0 -0
- casadi/libcasadi_nlpsol_blocksqp.so.3.7 +0 -0
- casadi/libcasadi_nlpsol_bonmin.so +0 -0
- casadi/libcasadi_nlpsol_bonmin.so.3.7 +0 -0
- casadi/libcasadi_nlpsol_feasiblesqpmethod.so +0 -0
- casadi/libcasadi_nlpsol_feasiblesqpmethod.so.3.7 +0 -0
- casadi/libcasadi_nlpsol_ipopt.so +0 -0
- casadi/libcasadi_nlpsol_ipopt.so.3.7 +0 -0
- casadi/libcasadi_nlpsol_knitro.so +0 -0
- casadi/libcasadi_nlpsol_knitro.so.3.7 +0 -0
- casadi/libcasadi_nlpsol_madnlp.so +0 -0
- casadi/libcasadi_nlpsol_madnlp.so.3.7 +0 -0
- casadi/libcasadi_nlpsol_qrsqp.so +0 -0
- casadi/libcasadi_nlpsol_qrsqp.so.3.7 +0 -0
- casadi/libcasadi_nlpsol_scpgen.so +0 -0
- casadi/libcasadi_nlpsol_scpgen.so.3.7 +0 -0
- casadi/libcasadi_nlpsol_sleqp.so +0 -0
- casadi/libcasadi_nlpsol_sleqp.so.3.7 +0 -0
- casadi/libcasadi_nlpsol_snopt.so +0 -0
- casadi/libcasadi_nlpsol_snopt.so.3.7 +0 -0
- casadi/libcasadi_nlpsol_sqpmethod.so +0 -0
- casadi/libcasadi_nlpsol_sqpmethod.so.3.7 +0 -0
- casadi/libcasadi_nlpsol_worhp.so +0 -0
- casadi/libcasadi_nlpsol_worhp.so.3.7 +0 -0
- casadi/libcasadi_rootfinder_fast_newton.so +0 -0
- casadi/libcasadi_rootfinder_fast_newton.so.3.7 +0 -0
- casadi/libcasadi_rootfinder_kinsol.so +0 -0
- casadi/libcasadi_rootfinder_kinsol.so.3.7 +0 -0
- casadi/libcasadi_rootfinder_newton.so +0 -0
- casadi/libcasadi_rootfinder_newton.so.3.7 +0 -0
- casadi/libcasadi_rootfinder_nlpsol.so +0 -0
- casadi/libcasadi_rootfinder_nlpsol.so.3.7 +0 -0
- casadi/libcasadi_sundials_common.so +0 -0
- casadi/libcasadi_sundials_common.so.3.7 +0 -0
- casadi/libcoinmetis.la +1 -1
- casadi/libcoinmetis.so +0 -0
- casadi/libcoinmetis.so.2 +0 -0
- casadi/libcoinmetis.so.2.0.0 +0 -0
- casadi/libdaqp.so +0 -0
- casadi/libdaqpstat.a +0 -0
- casadi/libhighs.so +0 -0
- casadi/libhighs.so.1 +0 -0
- casadi/libhighs.so.1.7.2 +0 -0
- casadi/libindirect.a +0 -0
- casadi/liblinsys.a +0 -0
- casadi/libmatlab_ipc.so +0 -0
- casadi/libosqp.a +0 -0
- casadi/libosqp.so +0 -0
- casadi/libqdldl.a +0 -0
- casadi/libsleqp.so +0 -0
- casadi/libsleqp.so.1.0.1 +0 -0
- casadi/libspral.a +0 -0
- casadi/libsuperscs.a +0 -0
- casadi/pkgconfig/casadi.pc +1 -1
- casadi/pkgconfig/highs.pc +1 -1
- casadi/tools/__init__.py +4 -0
- casadi/tools/bounds.py +3 -3
- {casadi-3.6.5.dist-info → casadi-3.6.7.dist-info}/METADATA +2 -2
- {casadi-3.6.5.dist-info → casadi-3.6.7.dist-info}/RECORD +365 -250
- casadi/include/highs/fortran/highs_fortran_api.mod +0 -0
- casadi/libFortranHighs.so +0 -0
- casadi/libhighs.so.1.6 +0 -0
- casadi/libhighs.so.1.6.0 +0 -0
- {casadi-3.6.5.dist-info → casadi-3.6.7.dist-info}/WHEEL +0 -0
casadi/include/highs/Highs.h
CHANGED
@@ -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-
|
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 */
|
@@ -37,7 +37,6 @@ HighsInt highsVersionMajor();
|
|
37
37
|
HighsInt highsVersionMinor();
|
38
38
|
HighsInt highsVersionPatch();
|
39
39
|
const char* highsGithash();
|
40
|
-
const char* highsCompilationDate();
|
41
40
|
|
42
41
|
/**
|
43
42
|
* @brief Class to set parameters and run HiGHS
|
@@ -78,11 +77,6 @@ class Highs {
|
|
78
77
|
*/
|
79
78
|
std::string githash() const { return highsGithash(); }
|
80
79
|
|
81
|
-
/**
|
82
|
-
* @brief Return compilation date
|
83
|
-
*/
|
84
|
-
std::string compilationDate() const { return highsCompilationDate(); }
|
85
|
-
|
86
80
|
/**
|
87
81
|
* @brief Reset the options and then call clearModel()
|
88
82
|
*/
|
@@ -384,6 +378,13 @@ class Highs {
|
|
384
378
|
*/
|
385
379
|
double getInfinity() { return kHighsInf; }
|
386
380
|
|
381
|
+
/**
|
382
|
+
* @brief Get the size of HighsInt
|
383
|
+
*/
|
384
|
+
HighsInt getSizeofHighsInt() {
|
385
|
+
return sizeof(options_.num_user_settable_options_);
|
386
|
+
}
|
387
|
+
|
387
388
|
/**
|
388
389
|
* @brief Get the run time of HiGHS
|
389
390
|
*/
|
@@ -409,6 +410,22 @@ class Highs {
|
|
409
410
|
*/
|
410
411
|
const HighsPresolveLog& getPresolveLog() const { return presolve_log_; }
|
411
412
|
|
413
|
+
/**
|
414
|
+
* @brief Return a const pointer to the original column indices for
|
415
|
+
* the presolved model
|
416
|
+
*/
|
417
|
+
const HighsInt* getPresolveOrigColsIndex() const {
|
418
|
+
return presolve_.data_.postSolveStack.getOrigColsIndex();
|
419
|
+
}
|
420
|
+
|
421
|
+
/**
|
422
|
+
* @brief Return a const pointer to the original row indices for the
|
423
|
+
* presolved model
|
424
|
+
*/
|
425
|
+
const HighsInt* getPresolveOrigRowsIndex() const {
|
426
|
+
return presolve_.data_.postSolveStack.getOrigRowsIndex();
|
427
|
+
}
|
428
|
+
|
412
429
|
/**
|
413
430
|
* @brief Return a const reference to the incumbent LP
|
414
431
|
*/
|
@@ -482,6 +499,14 @@ class Highs {
|
|
482
499
|
*/
|
483
500
|
HighsStatus getRanging(HighsRanging& ranging);
|
484
501
|
|
502
|
+
/**
|
503
|
+
* @brief Get the ill-conditioning information for the current basis
|
504
|
+
*/
|
505
|
+
HighsStatus getIllConditioning(HighsIllConditioning& ill_conditioning,
|
506
|
+
const bool constraint,
|
507
|
+
const HighsInt method = 0,
|
508
|
+
const double ill_conditioning_bound = 1e-4);
|
509
|
+
|
485
510
|
/**
|
486
511
|
* @brief Get the current model objective value
|
487
512
|
*/
|
@@ -617,7 +642,7 @@ class Highs {
|
|
617
642
|
* @brief Get multiple columns from the model given by a set
|
618
643
|
*/
|
619
644
|
HighsStatus getCols(
|
620
|
-
const HighsInt num_set_entries, //!< The number of
|
645
|
+
const HighsInt num_set_entries, //!< The number of indices in the set
|
621
646
|
const HighsInt* set, //!< Array of size num_set_entries with indices of
|
622
647
|
//!< columns to get
|
623
648
|
HighsInt& num_col, //!< Number of columns got from the model
|
@@ -689,7 +714,7 @@ class Highs {
|
|
689
714
|
* @brief Get multiple rows from the model given by a set
|
690
715
|
*/
|
691
716
|
HighsStatus getRows(
|
692
|
-
const HighsInt num_set_entries, //!< The number of
|
717
|
+
const HighsInt num_set_entries, //!< The number of indices in the set
|
693
718
|
const HighsInt*
|
694
719
|
set, //!< Array of size num_set_entries with indices of rows to get
|
695
720
|
HighsInt& num_row, //!< Number of rows got from the model
|
@@ -739,6 +764,17 @@ class Highs {
|
|
739
764
|
*/
|
740
765
|
HighsStatus writeModel(const std::string& filename = "");
|
741
766
|
|
767
|
+
/**
|
768
|
+
* @brief Write out the incumbent presolved model to a file
|
769
|
+
*/
|
770
|
+
HighsStatus writePresolvedModel(const std::string& filename = "");
|
771
|
+
|
772
|
+
/**
|
773
|
+
* @brief Write out the given model to a file
|
774
|
+
*/
|
775
|
+
HighsStatus writeLocalModel(HighsModel& model,
|
776
|
+
const std::string& filename = "");
|
777
|
+
|
742
778
|
/**
|
743
779
|
* @brief Write out the internal HighsBasis instance to a file
|
744
780
|
*/
|
@@ -786,6 +822,14 @@ class Highs {
|
|
786
822
|
HighsStatus changeColsIntegrality(const HighsInt* mask,
|
787
823
|
const HighsVarType* integrality);
|
788
824
|
|
825
|
+
/**
|
826
|
+
* @brief Clear the integrality of all columns
|
827
|
+
*/
|
828
|
+
HighsStatus clearIntegrality() {
|
829
|
+
this->model_.lp_.integrality_.clear();
|
830
|
+
return HighsStatus::kOk;
|
831
|
+
}
|
832
|
+
|
789
833
|
/**
|
790
834
|
* @brief Change the cost of a column
|
791
835
|
*/
|
@@ -900,7 +944,7 @@ class Highs {
|
|
900
944
|
* @brief Adds a variable to the incumbent model, without the cost or matrix
|
901
945
|
* coefficients
|
902
946
|
*/
|
903
|
-
HighsStatus addVar(const double lower, const double upper) {
|
947
|
+
HighsStatus addVar(const double lower = 0, const double upper = kHighsInf) {
|
904
948
|
return this->addVars(1, &lower, &upper);
|
905
949
|
}
|
906
950
|
|
@@ -943,8 +987,9 @@ class Highs {
|
|
943
987
|
|
944
988
|
/**
|
945
989
|
* @brief Delete multiple columns from the incumbent model given by
|
946
|
-
* a mask (full length array with 1 =>
|
947
|
-
* of any column
|
990
|
+
* a mask (full length array with 1 => delete; 0 => keep). New index
|
991
|
+
* of any column kept is returned in place of the value 0. For
|
992
|
+
* deleted columns, a value of -1 is returned.
|
948
993
|
*/
|
949
994
|
HighsStatus deleteCols(HighsInt* mask);
|
950
995
|
|
@@ -964,9 +1009,10 @@ class Highs {
|
|
964
1009
|
}
|
965
1010
|
|
966
1011
|
/**
|
967
|
-
* @brief Delete multiple variables from the incumbent model given
|
968
|
-
* a mask (full length array with 1 =>
|
969
|
-
* of any variable not deleted is returned in place of the
|
1012
|
+
* @brief Delete multiple variables from the incumbent model given
|
1013
|
+
* by a mask (full length array with 1 => delete; 0 => keep). New
|
1014
|
+
* index of any variable not deleted is returned in place of the
|
1015
|
+
* value 0. For deleted variables, a value of -1 is returned.
|
970
1016
|
*/
|
971
1017
|
HighsStatus deleteVars(HighsInt* mask) { return deleteCols(mask); }
|
972
1018
|
|
@@ -983,8 +1029,9 @@ class Highs {
|
|
983
1029
|
|
984
1030
|
/**
|
985
1031
|
* @brief Delete multiple rows from the incumbent model given by a
|
986
|
-
* mask (full length array with 1 =>
|
987
|
-
* any row not deleted is returned in place of the value 0.
|
1032
|
+
* mask (full length array with 1 => delete; 0 => keep). New index
|
1033
|
+
* of any row not deleted is returned in place of the value 0. For
|
1034
|
+
* deleted rows, a value of -1 is returned.
|
988
1035
|
*/
|
989
1036
|
HighsStatus deleteRows(HighsInt* mask);
|
990
1037
|
|
@@ -1019,20 +1066,22 @@ class Highs {
|
|
1019
1066
|
/**
|
1020
1067
|
* @brief Set the callback method to use for HiGHS
|
1021
1068
|
*/
|
1022
|
-
HighsStatus setCallback(
|
1023
|
-
|
1024
|
-
|
1069
|
+
HighsStatus setCallback(HighsCallbackFunctionType user_callback,
|
1070
|
+
void* user_callback_data = nullptr);
|
1071
|
+
HighsStatus setCallback(HighsCCallbackType c_callback,
|
1025
1072
|
void* user_callback_data = nullptr);
|
1026
1073
|
|
1027
1074
|
/**
|
1028
1075
|
* @brief Start callback of given type
|
1029
1076
|
*/
|
1030
1077
|
HighsStatus startCallback(const int callback_type);
|
1078
|
+
HighsStatus startCallback(const HighsCallbackType callback_type);
|
1031
1079
|
|
1032
1080
|
/**
|
1033
1081
|
* @brief Stop callback of given type
|
1034
1082
|
*/
|
1035
1083
|
HighsStatus stopCallback(const int callback_type);
|
1084
|
+
HighsStatus stopCallback(const HighsCallbackType callback_type);
|
1036
1085
|
|
1037
1086
|
/**
|
1038
1087
|
* @brief Use the HighsBasis passed to set the internal HighsBasis
|
@@ -1163,6 +1212,8 @@ class Highs {
|
|
1163
1212
|
|
1164
1213
|
// Start of deprecated methods
|
1165
1214
|
|
1215
|
+
std::string compilationDate() const { return "deprecated"; }
|
1216
|
+
|
1166
1217
|
HighsStatus setLogCallback(void (*user_log_callback)(HighsLogType,
|
1167
1218
|
const char*, void*),
|
1168
1219
|
void* user_log_callback_data = nullptr);
|
@@ -1301,7 +1352,7 @@ class Highs {
|
|
1301
1352
|
this->model_.hessian_.exactResize();
|
1302
1353
|
}
|
1303
1354
|
|
1304
|
-
HighsStatus
|
1355
|
+
HighsStatus completeSolutionFromDiscreteAssignment();
|
1305
1356
|
|
1306
1357
|
HighsStatus callSolveLp(HighsLp& lp, const string message);
|
1307
1358
|
HighsStatus callSolveQp();
|
@@ -1336,7 +1387,7 @@ class Highs {
|
|
1336
1387
|
//
|
1337
1388
|
// Methods to clear solver data for users in Highs class members
|
1338
1389
|
// before (possibly) updating them with data from trying to solve
|
1339
|
-
// the
|
1390
|
+
// the incumbent model.
|
1340
1391
|
//
|
1341
1392
|
// Invalidates all solver data in Highs class members by calling
|
1342
1393
|
// invalidateModelStatus(), invalidateSolution(), invalidateBasis(),
|
@@ -1366,7 +1417,8 @@ class Highs {
|
|
1366
1417
|
|
1367
1418
|
HighsStatus returnFromWriteSolution(FILE* file,
|
1368
1419
|
const HighsStatus return_status);
|
1369
|
-
HighsStatus returnFromRun(const HighsStatus return_status
|
1420
|
+
HighsStatus returnFromRun(const HighsStatus return_status,
|
1421
|
+
const bool undo_mods);
|
1370
1422
|
HighsStatus returnFromHighs(const HighsStatus return_status);
|
1371
1423
|
void reportSolvedLpQpStats();
|
1372
1424
|
|
@@ -1444,6 +1496,7 @@ class Highs {
|
|
1444
1496
|
HighsStatus getPrimalRayInterface(bool& has_primal_ray,
|
1445
1497
|
double* primal_ray_value);
|
1446
1498
|
HighsStatus getRangingInterface();
|
1499
|
+
|
1447
1500
|
bool aFormatOk(const HighsInt num_nz, const HighsInt format);
|
1448
1501
|
bool qFormatOk(const HighsInt num_nz, const HighsInt format);
|
1449
1502
|
void clearZeroHessian();
|
@@ -1454,6 +1507,23 @@ class Highs {
|
|
1454
1507
|
|
1455
1508
|
HighsStatus handleInfCost();
|
1456
1509
|
void restoreInfCost(HighsStatus& return_status);
|
1510
|
+
HighsStatus optionChangeAction();
|
1511
|
+
HighsStatus computeIllConditioning(HighsIllConditioning& ill_conditioning,
|
1512
|
+
const bool constraint,
|
1513
|
+
const HighsInt method,
|
1514
|
+
const double ill_conditioning_bound);
|
1515
|
+
void formIllConditioningLp0(HighsLp& ill_conditioning_lp,
|
1516
|
+
std::vector<HighsInt>& basic_var,
|
1517
|
+
const bool constraint);
|
1518
|
+
void formIllConditioningLp1(HighsLp& ill_conditioning_lp,
|
1519
|
+
std::vector<HighsInt>& basic_var,
|
1520
|
+
const bool constraint,
|
1521
|
+
const double ill_conditioning_bound);
|
1522
|
+
bool infeasibleBoundsOk();
|
1457
1523
|
};
|
1458
1524
|
|
1525
|
+
// Start of deprecated methods not in the Highs class
|
1526
|
+
|
1527
|
+
const char* highsCompilationDate();
|
1528
|
+
|
1459
1529
|
#endif
|
@@ -0,0 +1,19 @@
|
|
1
|
+
#ifndef __READERLP_DEF_HPP__
|
2
|
+
#define __READERLP_DEF_HPP__
|
3
|
+
|
4
|
+
#include <stdexcept>
|
5
|
+
#include <string>
|
6
|
+
|
7
|
+
void inline lpassert(bool condition) {
|
8
|
+
if (!condition) {
|
9
|
+
throw std::invalid_argument("File not existent or illegal file format.");
|
10
|
+
}
|
11
|
+
}
|
12
|
+
|
13
|
+
const std::string LP_KEYWORD_INF[] = {"infinity", "inf"};
|
14
|
+
const std::string LP_KEYWORD_FREE[] = {"free"};
|
15
|
+
|
16
|
+
const unsigned int LP_KEYWORD_INF_N = 2;
|
17
|
+
const unsigned int LP_KEYWORD_FREE_N = 1;
|
18
|
+
|
19
|
+
#endif
|
@@ -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-
|
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 */
|
@@ -10,8 +10,20 @@
|
|
10
10
|
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
|
11
11
|
#ifndef HIGHS_C_API
|
12
12
|
#define HIGHS_C_API
|
13
|
-
|
14
|
-
|
13
|
+
//
|
14
|
+
// Welcome to the HiGHS C API!
|
15
|
+
//
|
16
|
+
// The simplest way to use HiGHS to solve an LP, MIP or QP from C is
|
17
|
+
// to pass the problem data to the appropriate method Highs_lpCall,
|
18
|
+
// Highs_mipCall or Highs_qpCall, and these methods return the
|
19
|
+
// appropriate solution information
|
20
|
+
//
|
21
|
+
// For sophisticated applications, where esoteric solutiuon
|
22
|
+
// information is needed, or if a sequence of modified models need to
|
23
|
+
// be solved, use the Highs_create method to generate a pointer to an
|
24
|
+
// instance of the C++ Highs class, and then use any of a large number
|
25
|
+
// of models for which this pointer is the first parameter.
|
26
|
+
//
|
15
27
|
#include "lp_data/HighsCallbackStruct.h"
|
16
28
|
|
17
29
|
const HighsInt kHighsMaximumStringLength = 512;
|
@@ -60,6 +72,7 @@ const HighsInt kHighsPresolveStatusReducedToEmpty = 4;
|
|
60
72
|
const HighsInt kHighsPresolveStatusTimeout = 5;
|
61
73
|
const HighsInt kHighsPresolveStatusNullError = 6;
|
62
74
|
const HighsInt kHighsPresolveStatusOptionsError = 7;
|
75
|
+
const HighsInt kHighsPresolveStatusOutOfMemory = 8;
|
63
76
|
|
64
77
|
const HighsInt kHighsModelStatusNotset = 0;
|
65
78
|
const HighsInt kHighsModelStatusLoadError = 1;
|
@@ -89,9 +102,36 @@ const HighsInt kHighsBasisStatusNonbasic = 4;
|
|
89
102
|
const HighsInt kHighsCallbackLogging = 0;
|
90
103
|
const HighsInt kHighsCallbackSimplexInterrupt = 1;
|
91
104
|
const HighsInt kHighsCallbackIpmInterrupt = 2;
|
92
|
-
const HighsInt
|
93
|
-
const HighsInt
|
94
|
-
const HighsInt
|
105
|
+
const HighsInt kHighsCallbackMipSolution = 3;
|
106
|
+
const HighsInt kHighsCallbackMipImprovingSolution = 4;
|
107
|
+
const HighsInt kHighsCallbackMipLogging = 5;
|
108
|
+
const HighsInt kHighsCallbackMipInterrupt = 6;
|
109
|
+
const HighsInt kHighsCallbackMipGetCutPool = 7;
|
110
|
+
const HighsInt kHighsCallbackMipDefineLazyConstraints = 8;
|
111
|
+
|
112
|
+
const char* const kHighsCallbackDataOutLogTypeName = "log_type";
|
113
|
+
const char* const kHighsCallbackDataOutRunningTimeName = "running_time";
|
114
|
+
const char* const kHighsCallbackDataOutSimplexIterationCountName =
|
115
|
+
"simplex_iteration_count";
|
116
|
+
const char* const kHighsCallbackDataOutIpmIterationCountName =
|
117
|
+
"ipm_iteration_count";
|
118
|
+
const char* const kHighsCallbackDataOutPdlpIterationCountName =
|
119
|
+
"pdlp_iteration_count";
|
120
|
+
const char* const kHighsCallbackDataOutObjectiveFunctionValueName =
|
121
|
+
"objective_function_value";
|
122
|
+
const char* const kHighsCallbackDataOutMipNodeCountName = "mip_node_count";
|
123
|
+
const char* const kHighsCallbackDataOutMipPrimalBoundName = "mip_primal_bound";
|
124
|
+
const char* const kHighsCallbackDataOutMipDualBoundName = "mip_dual_bound";
|
125
|
+
const char* const kHighsCallbackDataOutMipGapName = "mip_gap";
|
126
|
+
const char* const kHighsCallbackDataOutMipSolutionName = "mip_solution";
|
127
|
+
const char* const kHighsCallbackDataOutCutpoolNumColName = "cutpool_num_col";
|
128
|
+
const char* const kHighsCallbackDataOutCutpoolNumCutName = "cutpool_num_cut";
|
129
|
+
const char* const kHighsCallbackDataOutCutpoolNumNzName = "cutpool_num_nz";
|
130
|
+
const char* const kHighsCallbackDataOutCutpoolStartName = "cutpool_start";
|
131
|
+
const char* const kHighsCallbackDataOutCutpoolIndexName = "cutpool_index";
|
132
|
+
const char* const kHighsCallbackDataOutCutpoolValueName = "cutpool_value";
|
133
|
+
const char* const kHighsCallbackDataOutCutpoolLowerName = "cutpool_lower";
|
134
|
+
const char* const kHighsCallbackDataOutCutpoolUpperName = "cutpool_upper";
|
95
135
|
|
96
136
|
#ifdef __cplusplus
|
97
137
|
extern "C" {
|
@@ -261,13 +301,6 @@ HighsInt Highs_versionPatch(void);
|
|
261
301
|
*/
|
262
302
|
const char* Highs_githash(void);
|
263
303
|
|
264
|
-
/**
|
265
|
-
* Return the HiGHS compilation date.
|
266
|
-
*
|
267
|
-
* @returns Thse HiGHS compilation date.
|
268
|
-
*/
|
269
|
-
const char* Highs_compilationDate(void);
|
270
|
-
|
271
304
|
/**
|
272
305
|
* Read a model from `filename` into `highs`.
|
273
306
|
*
|
@@ -288,6 +321,16 @@ HighsInt Highs_readModel(void* highs, const char* filename);
|
|
288
321
|
*/
|
289
322
|
HighsInt Highs_writeModel(void* highs, const char* filename);
|
290
323
|
|
324
|
+
/**
|
325
|
+
* Write the presolved model in `highs` to `filename`.
|
326
|
+
*
|
327
|
+
* @param highs A pointer to the Highs instance.
|
328
|
+
* @param filename The filename to write.
|
329
|
+
*
|
330
|
+
* @returns A `kHighsStatus` constant indicating whether the call succeeded.
|
331
|
+
*/
|
332
|
+
HighsInt Highs_writePresolvedModel(void* highs, const char* filename);
|
333
|
+
|
291
334
|
/**
|
292
335
|
* Reset the options and then call `clearModel`.
|
293
336
|
*
|
@@ -321,6 +364,15 @@ HighsInt Highs_clearModel(void* highs);
|
|
321
364
|
*/
|
322
365
|
HighsInt Highs_clearSolver(void* highs);
|
323
366
|
|
367
|
+
/**
|
368
|
+
* Presolve a model.
|
369
|
+
*
|
370
|
+
* @param highs A pointer to the Highs instance.
|
371
|
+
*
|
372
|
+
* @returns A `kHighsStatus` constant indicating whether the call succeeded.
|
373
|
+
*/
|
374
|
+
HighsInt Highs_presolve(void* highs);
|
375
|
+
|
324
376
|
/**
|
325
377
|
* Optimize a model. The algorithm used by HiGHS depends on the options that
|
326
378
|
* have been set.
|
@@ -331,6 +383,22 @@ HighsInt Highs_clearSolver(void* highs);
|
|
331
383
|
*/
|
332
384
|
HighsInt Highs_run(void* highs);
|
333
385
|
|
386
|
+
/**
|
387
|
+
* Postsolve a model using a primal (and possibly dual) solution.
|
388
|
+
*
|
389
|
+
* @param highs A pointer to the Highs instance.
|
390
|
+
* @param col_value An array of length [num_col] with the column solution
|
391
|
+
* values.
|
392
|
+
* @param col_dual An array of length [num_col] with the column dual
|
393
|
+
* values, or a null pointer if not known.
|
394
|
+
* @param row_dual An array of length [num_row] with the row dual values,
|
395
|
+
* or a null pointer if not known.
|
396
|
+
*
|
397
|
+
* @returns A `kHighsStatus` constant indicating whether the call succeeded.
|
398
|
+
*/
|
399
|
+
HighsInt Highs_postsolve(void* highs, const double* col_value,
|
400
|
+
const double* col_dual, const double* row_dual);
|
401
|
+
|
334
402
|
/**
|
335
403
|
* Write the solution information (including dual and basis status, if
|
336
404
|
* available) to a file.
|
@@ -349,7 +417,7 @@ HighsInt Highs_writeSolution(const void* highs, const char* filename);
|
|
349
417
|
* available) to a file in a human-readable format.
|
350
418
|
*
|
351
419
|
* The method identical to `Highs_writeSolution`, except that the
|
352
|
-
* printout is in a human-
|
420
|
+
* printout is in a human-readable format.
|
353
421
|
*
|
354
422
|
* @param highs A pointer to the Highs instance.
|
355
423
|
* @param filename The name of the file to write the results to.
|
@@ -437,7 +505,7 @@ HighsInt Highs_passMip(void* highs, const HighsInt num_col,
|
|
437
505
|
* @param q_value An array of length [q_num_nz] with values of matrix
|
438
506
|
* entries. If the model is linear, pass NULL.
|
439
507
|
* @param integrality An array of length [num_col] containing a `kHighsVarType`
|
440
|
-
*
|
508
|
+
* constant for each column.
|
441
509
|
*
|
442
510
|
* @returns A `kHighsStatus` constant indicating whether the call succeeded.
|
443
511
|
*/
|
@@ -967,10 +1035,10 @@ HighsInt Highs_getBasisSolve(const void* highs, const double* rhs,
|
|
967
1035
|
*
|
968
1036
|
* @param highs A pointer to the Highs instance.
|
969
1037
|
* @param rhs The right-hand side vector ``b``
|
970
|
-
* @param solution_vector An array of length [num_row] in
|
1038
|
+
* @param solution_vector An array of length [num_row] in which to store the
|
971
1039
|
* values of the non-zero elements.
|
972
1040
|
* @param solution_num_nz The number of non-zeros in the solution.
|
973
|
-
* @param solution_index An array of length [num_row] in
|
1041
|
+
* @param solution_index An array of length [num_row] in which to store the
|
974
1042
|
* indices of the non-zero elements.
|
975
1043
|
*
|
976
1044
|
* @returns A `kHighsStatus` constant indicating whether the call succeeded.
|
@@ -1078,12 +1146,8 @@ HighsInt Highs_setSolution(void* highs, const double* col_value,
|
|
1078
1146
|
*
|
1079
1147
|
* @returns A `kHighsStatus` constant indicating whether the call succeeded.
|
1080
1148
|
*/
|
1081
|
-
HighsInt Highs_setCallback(
|
1082
|
-
|
1083
|
-
void (*user_callback)(const int, const char*,
|
1084
|
-
const struct HighsCallbackDataOut*,
|
1085
|
-
struct HighsCallbackDataIn*, void*),
|
1086
|
-
void* user_callback_data);
|
1149
|
+
HighsInt Highs_setCallback(void* highs, HighsCCallbackType user_callback,
|
1150
|
+
void* user_callback_data);
|
1087
1151
|
|
1088
1152
|
/**
|
1089
1153
|
* Start callback of given type
|
@@ -1325,6 +1389,15 @@ HighsInt Highs_changeColsIntegralityBySet(void* highs,
|
|
1325
1389
|
HighsInt Highs_changeColsIntegralityByMask(void* highs, const HighsInt* mask,
|
1326
1390
|
const HighsInt* integrality);
|
1327
1391
|
|
1392
|
+
/**
|
1393
|
+
* Clear the integrality of all columns
|
1394
|
+
*
|
1395
|
+
* @param highs A pointer to the Highs instance.
|
1396
|
+
*
|
1397
|
+
* @returns A `kHighsStatus` constant indicating whether the call succeeded.
|
1398
|
+
*/
|
1399
|
+
HighsInt Highs_clearIntegrality(void* highs);
|
1400
|
+
|
1328
1401
|
/**
|
1329
1402
|
* Change the objective coefficient of a column.
|
1330
1403
|
*
|
@@ -1844,6 +1917,15 @@ HighsInt Highs_scaleRow(void* highs, const HighsInt row, const double scaleval);
|
|
1844
1917
|
*/
|
1845
1918
|
double Highs_getInfinity(const void* highs);
|
1846
1919
|
|
1920
|
+
/**
|
1921
|
+
* Return the size of integers used by HiGHS.
|
1922
|
+
*
|
1923
|
+
* @param highs A pointer to the Highs instance.
|
1924
|
+
*
|
1925
|
+
* @returns The size of integers used by HiGHS.
|
1926
|
+
*/
|
1927
|
+
HighsInt Highs_getSizeofHighsInt(const void* highs);
|
1928
|
+
|
1847
1929
|
/**
|
1848
1930
|
* Return the number of columns in the model.
|
1849
1931
|
*
|
@@ -1880,6 +1962,35 @@ HighsInt Highs_getNumNz(const void* highs);
|
|
1880
1962
|
*/
|
1881
1963
|
HighsInt Highs_getHessianNumNz(const void* highs);
|
1882
1964
|
|
1965
|
+
/**
|
1966
|
+
* Return the number of columns in the presolved model.
|
1967
|
+
*
|
1968
|
+
* @param highs A pointer to the Highs instance.
|
1969
|
+
*
|
1970
|
+
* @returns The number of columns in the presolved model.
|
1971
|
+
*/
|
1972
|
+
HighsInt Highs_getPresolvedNumCol(const void* highs);
|
1973
|
+
|
1974
|
+
/**
|
1975
|
+
* Return the number of rows in the presolved model.
|
1976
|
+
*
|
1977
|
+
* @param highs A pointer to the Highs instance.
|
1978
|
+
*
|
1979
|
+
* @returns The number of rows in the presolved model.
|
1980
|
+
*/
|
1981
|
+
HighsInt Highs_getPresolvedNumRow(const void* highs);
|
1982
|
+
|
1983
|
+
/**
|
1984
|
+
* Return the number of nonzeros in the constraint matrix of the presolved
|
1985
|
+
* model.
|
1986
|
+
*
|
1987
|
+
* @param highs A pointer to the Highs instance.
|
1988
|
+
*
|
1989
|
+
* @returns The number of nonzeros in the constraint matrix of the presolved
|
1990
|
+
* model.
|
1991
|
+
*/
|
1992
|
+
HighsInt Highs_getPresolvedNumNz(const void* highs);
|
1993
|
+
|
1883
1994
|
/**
|
1884
1995
|
* Get the data from a HiGHS model.
|
1885
1996
|
*
|
@@ -1906,6 +2017,52 @@ HighsInt Highs_getModel(const void* highs, const HighsInt a_format,
|
|
1906
2017
|
HighsInt* q_start, HighsInt* q_index, double* q_value,
|
1907
2018
|
HighsInt* integrality);
|
1908
2019
|
|
2020
|
+
/**
|
2021
|
+
* Get the data from a HiGHS LP.
|
2022
|
+
*
|
2023
|
+
* The input arguments have the same meaning (in a different order) to those
|
2024
|
+
* used in `Highs_passModel`.
|
2025
|
+
*
|
2026
|
+
* Note that all arrays must be pre-allocated to the correct size before calling
|
2027
|
+
* `Highs_getModel`. Use the following query methods to check the appropriate
|
2028
|
+
* size:
|
2029
|
+
* - `Highs_getNumCol`
|
2030
|
+
* - `Highs_getNumRow`
|
2031
|
+
* - `Highs_getNumNz`
|
2032
|
+
*
|
2033
|
+
* @returns A `kHighsStatus` constant indicating whether the call succeeded.
|
2034
|
+
*/
|
2035
|
+
HighsInt Highs_getLp(const void* highs, const HighsInt a_format,
|
2036
|
+
HighsInt* num_col, HighsInt* num_row, HighsInt* num_nz,
|
2037
|
+
HighsInt* sense, double* offset, double* col_cost,
|
2038
|
+
double* col_lower, double* col_upper, double* row_lower,
|
2039
|
+
double* row_upper, HighsInt* a_start, HighsInt* a_index,
|
2040
|
+
double* a_value, HighsInt* integrality);
|
2041
|
+
|
2042
|
+
/**
|
2043
|
+
* Get the data from a HiGHS presolved LP.
|
2044
|
+
*
|
2045
|
+
* The input arguments have the same meaning (in a different order) to those
|
2046
|
+
* used in `Highs_passModel`.
|
2047
|
+
*
|
2048
|
+
* Note that all arrays must be pre-allocated to the correct size before calling
|
2049
|
+
* `Highs_getModel`. Use the following query methods to check the appropriate
|
2050
|
+
* size:
|
2051
|
+
* - `Highs_getPresolvedNumCol`
|
2052
|
+
* - `Highs_getPresolvedNumRow`
|
2053
|
+
* - `Highs_getPresolvedNumNz`
|
2054
|
+
*
|
2055
|
+
* @returns A `kHighsStatus` constant indicating whether the call succeeded.
|
2056
|
+
*/
|
2057
|
+
HighsInt Highs_getPresolvedLp(const void* highs, const HighsInt a_format,
|
2058
|
+
HighsInt* num_col, HighsInt* num_row,
|
2059
|
+
HighsInt* num_nz, HighsInt* sense, double* offset,
|
2060
|
+
double* col_cost, double* col_lower,
|
2061
|
+
double* col_upper, double* row_lower,
|
2062
|
+
double* row_upper, HighsInt* a_start,
|
2063
|
+
HighsInt* a_index, double* a_value,
|
2064
|
+
HighsInt* integrality);
|
2065
|
+
|
1909
2066
|
/**
|
1910
2067
|
* Set a primal (and possibly dual) solution as a starting point, then run
|
1911
2068
|
* crossover to compute a basic feasible solution.
|
@@ -1930,7 +2087,7 @@ HighsInt Highs_crossover(void* highs, const int num_col, const int num_row,
|
|
1930
2087
|
|
1931
2088
|
/**
|
1932
2089
|
* Compute the ranging information for all costs and bounds. For
|
1933
|
-
* nonbasic variables the ranging
|
2090
|
+
* nonbasic variables the ranging information is relative to the
|
1934
2091
|
* active bound. For basic variables the ranging information relates
|
1935
2092
|
* to...
|
1936
2093
|
*
|
@@ -2019,10 +2176,29 @@ HighsInt Highs_getRanging(
|
|
2019
2176
|
*/
|
2020
2177
|
void Highs_resetGlobalScheduler(const HighsInt blocking);
|
2021
2178
|
|
2179
|
+
/**
|
2180
|
+
* Get a void* pointer to a callback data item
|
2181
|
+
*
|
2182
|
+
* @param data_out A pointer to the HighsCallbackDataOut instance.
|
2183
|
+
* @param item_name The name of the item.
|
2184
|
+
*
|
2185
|
+
* @returns A void* pointer to the callback data item, or NULL if item_name not
|
2186
|
+
* valid
|
2187
|
+
*/
|
2188
|
+
const void* Highs_getCallbackDataOutItem(const HighsCallbackDataOut* data_out,
|
2189
|
+
const char* item_name);
|
2190
|
+
|
2022
2191
|
// *********************
|
2023
2192
|
// * Deprecated methods*
|
2024
2193
|
// *********************
|
2025
2194
|
|
2195
|
+
/**
|
2196
|
+
* Return the HiGHS compilation date.
|
2197
|
+
*
|
2198
|
+
* @returns Thse HiGHS compilation date.
|
2199
|
+
*/
|
2200
|
+
const char* Highs_compilationDate(void);
|
2201
|
+
|
2026
2202
|
// These are deprecated because they don't follow the style guide. Constants
|
2027
2203
|
// must begin with `k`.
|
2028
2204
|
const HighsInt HighsStatuskError = -1;
|
@@ -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-
|
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-
|
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-
|
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-
|
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 */
|
casadi/include/highs/io/HMPSIO.h
CHANGED
@@ -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-
|
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 */
|