casadi 3.6.4__cp38-none-manylinux2014_i686.whl → 3.6.6__cp38-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 +984 -500
- 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 +33 -15
- 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 +13 -0
- casadi/include/casadi/core/casadi_types.hpp +3 -2
- casadi/include/casadi/core/code_generator.hpp +59 -2
- casadi/include/casadi/core/core.hpp +1 -0
- casadi/include/casadi/core/generic_expression.hpp +1 -1
- casadi/include/casadi/core/generic_type.hpp +25 -1
- casadi/include/casadi/core/global_options.hpp +2 -0
- casadi/include/casadi/core/matrix_decl.hpp +15 -0
- casadi/include/casadi/core/mx.hpp +13 -3
- casadi/include/casadi/core/optistack.hpp +23 -0
- casadi/include/casadi/core/runtime/casadi_nlp.hpp +133 -6
- 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/runtime/casadi_sqpmethod.hpp +11 -1
- casadi/include/casadi/core/serializing_stream.hpp +2 -2
- casadi/include/casadi/core/sparsity.hpp +12 -3
- casadi/include/casadi/core/tools.hpp +67 -0
- casadi/include/casadi/doc.i +2283 -1491
- casadi/include/casadi/doc_merged.i +1522 -1065
- casadi/include/casadi/mem.h +1 -0
- casadi/include/coin-or/IpAlgBuilder.hpp +417 -0
- casadi/include/coin-or/IpAlgStrategy.hpp +201 -0
- casadi/include/coin-or/IpAlgTypes.hpp +64 -0
- casadi/include/coin-or/IpAugSystemSolver.hpp +212 -0
- casadi/include/coin-or/IpBlas.hpp +426 -0
- casadi/include/coin-or/IpCachedResults.hpp +897 -0
- casadi/include/coin-or/IpCompoundMatrix.hpp +423 -0
- casadi/include/coin-or/IpCompoundSymMatrix.hpp +348 -0
- casadi/include/coin-or/IpCompoundVector.hpp +395 -0
- casadi/include/coin-or/IpConvCheck.hpp +97 -0
- casadi/include/coin-or/IpDebug.hpp +167 -0
- casadi/include/coin-or/IpDenseVector.hpp +626 -0
- casadi/include/coin-or/IpDiagMatrix.hpp +158 -0
- casadi/include/coin-or/IpEqMultCalculator.hpp +76 -0
- casadi/include/coin-or/IpException.hpp +156 -0
- casadi/include/coin-or/IpExpansionMatrix.hpp +245 -0
- casadi/include/coin-or/IpGenTMatrix.hpp +290 -0
- casadi/include/coin-or/IpHessianUpdater.hpp +73 -0
- casadi/include/coin-or/IpIdentityMatrix.hpp +167 -0
- casadi/include/coin-or/IpIpoptAlg.hpp +257 -0
- casadi/include/coin-or/IpIpoptApplication.hpp +367 -0
- casadi/include/coin-or/IpIpoptCalculatedQuantities.hpp +1009 -0
- casadi/include/coin-or/IpIpoptData.hpp +966 -0
- casadi/include/coin-or/IpIpoptNLP.hpp +328 -0
- casadi/include/coin-or/IpIterateInitializer.hpp +68 -0
- casadi/include/coin-or/IpIteratesVector.hpp +840 -0
- casadi/include/coin-or/IpIterationOutput.hpp +78 -0
- casadi/include/coin-or/IpJournalist.hpp +573 -0
- casadi/include/coin-or/IpLapack.hpp +227 -0
- casadi/include/coin-or/IpLibraryLoader.hpp +76 -0
- casadi/include/coin-or/IpLineSearch.hpp +106 -0
- casadi/include/coin-or/IpLinearSolvers.h +46 -0
- casadi/include/coin-or/IpMatrix.hpp +434 -0
- casadi/include/coin-or/IpMuUpdate.hpp +77 -0
- casadi/include/coin-or/IpNLP.hpp +306 -0
- casadi/include/coin-or/IpNLPScaling.hpp +582 -0
- casadi/include/coin-or/IpObserver.hpp +422 -0
- casadi/include/coin-or/IpOptionsList.hpp +412 -0
- casadi/include/coin-or/IpOrigIpoptNLP.hpp +603 -0
- casadi/include/coin-or/IpPDSystemSolver.hpp +137 -0
- casadi/include/coin-or/IpReferenced.hpp +262 -0
- casadi/include/coin-or/IpRegOptions.hpp +1152 -0
- casadi/include/coin-or/IpReturnCodes.h +23 -0
- casadi/include/coin-or/IpReturnCodes.hpp +18 -0
- casadi/include/coin-or/IpReturnCodes.inc +71 -0
- casadi/include/coin-or/IpReturnCodes_inc.h +45 -0
- casadi/include/coin-or/IpScaledMatrix.hpp +291 -0
- casadi/include/coin-or/IpSearchDirCalculator.hpp +72 -0
- casadi/include/coin-or/IpSmartPtr.hpp +865 -0
- casadi/include/coin-or/IpSolveStatistics.hpp +210 -0
- casadi/include/coin-or/IpSparseSymLinearSolverInterface.hpp +260 -0
- casadi/include/coin-or/IpStdAugSystemSolver.cpp +555 -0
- casadi/include/coin-or/IpStdCInterface.h +428 -0
- casadi/include/coin-or/IpSumSymMatrix.hpp +186 -0
- casadi/include/coin-or/IpSymLinearSolver.hpp +141 -0
- casadi/include/coin-or/IpSymMatrix.hpp +167 -0
- casadi/include/coin-or/IpSymScaledMatrix.hpp +255 -0
- casadi/include/coin-or/IpSymTMatrix.hpp +275 -0
- casadi/include/coin-or/IpTNLP.hpp +820 -0
- casadi/include/coin-or/IpTNLPAdapter.hpp +648 -0
- casadi/include/coin-or/IpTNLPReducer.hpp +274 -0
- casadi/include/coin-or/IpTaggedObject.hpp +128 -0
- casadi/include/coin-or/IpTimedTask.hpp +218 -0
- casadi/include/coin-or/IpTimingStatistics.hpp +323 -0
- casadi/include/coin-or/IpTripletHelper.hpp +308 -0
- casadi/include/coin-or/IpTypes.h +81 -0
- casadi/include/coin-or/IpTypes.hpp +30 -0
- casadi/include/coin-or/IpUtils.hpp +166 -0
- casadi/include/coin-or/IpVector.hpp +892 -0
- casadi/include/coin-or/IpZeroSymMatrix.hpp +155 -0
- casadi/include/coin-or/IpoptConfig.h +45 -0
- casadi/include/coin-or/SensAlgorithm.hpp +114 -0
- casadi/include/coin-or/SensApplication.hpp +188 -0
- casadi/include/coin-or/SensBacksolver.hpp +36 -0
- casadi/include/coin-or/SensMeasurement.hpp +56 -0
- casadi/include/coin-or/SensPCalculator.hpp +137 -0
- casadi/include/coin-or/SensRegOp.hpp +21 -0
- casadi/include/coin-or/SensSchurData.hpp +182 -0
- casadi/include/coin-or/SensSchurDriver.hpp +118 -0
- casadi/include/coin-or/SensSimpleBacksolver.hpp +49 -0
- casadi/include/coin-or/SensStepCalc.hpp +85 -0
- casadi/include/coin-or/SensUtils.hpp +63 -0
- casadi/include/coin-or/metis/defs.h +161 -0
- casadi/include/coin-or/metis/macros.h +143 -0
- casadi/include/coin-or/metis/metis.h +37 -0
- casadi/include/coin-or/metis/proto.h +505 -0
- casadi/include/coin-or/metis/rename.h +418 -0
- casadi/include/coin-or/metis/struct.h +251 -0
- casadi/include/coin-or/mumps/dmumps_c.h +142 -0
- casadi/include/coin-or/mumps/mumps_c_types.h +72 -0
- casadi/include/coin-or/mumps/mumps_compat.h +27 -0
- casadi/include/coin-or/mumps/mumps_int_def.h +11 -0
- casadi/include/coin-or/mumps/mumps_mpi.h +67 -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/libCbc.so +0 -0
- casadi/libCbc.so.3 +0 -0
- casadi/libCbc.so.3.10.11 +0 -0
- casadi/libCbcSolver.so +0 -0
- casadi/libCbcSolver.so.3 +0 -0
- casadi/libCbcSolver.so.3.10.11 +0 -0
- casadi/libCgl.so +0 -0
- casadi/libCgl.so.1 +0 -0
- casadi/libCgl.so.1.10.8 +0 -0
- casadi/libClp.so +0 -0
- casadi/libClp.so.1 +0 -0
- casadi/libClp.so.1.14.9 +0 -0
- casadi/libClpSolver.so +0 -0
- casadi/libClpSolver.so.1 +0 -0
- casadi/libClpSolver.so.1.14.9 +0 -0
- casadi/libCoinUtils.so +0 -0
- casadi/libCoinUtils.so.3 +0 -0
- casadi/libCoinUtils.so.3.11.10 +0 -0
- casadi/libOsi.so +0 -0
- casadi/libOsi.so.1 +0 -0
- casadi/libOsi.so.1.13.9 +0 -0
- casadi/libOsiCbc.so +0 -0
- casadi/libOsiCbc.so.3 +0 -0
- casadi/libOsiCbc.so.3.10.11 +0 -0
- casadi/libOsiClp.so +0 -0
- casadi/libOsiClp.so.1 +0 -0
- casadi/libOsiClp.so.1.14.9 +0 -0
- casadi/libOsiCommonTests.so +0 -0
- casadi/libOsiCommonTests.so.1 +0 -0
- casadi/libOsiCommonTests.so.1.13.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/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/libipopt.so +0 -0
- casadi/libipopt.so.3 +0 -0
- casadi/libipopt.so.3.14.11 +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/libsipopt.so +0 -0
- casadi/libsipopt.so.3 +0 -0
- casadi/libsipopt.so.3.14.11 +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.4.dist-info → casadi-3.6.6.dist-info}/METADATA +12 -4
- {casadi-3.6.4.dist-info → casadi-3.6.6.dist-info}/RECORD +490 -281
- 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.4.dist-info → casadi-3.6.6.dist-info}/WHEEL +0 -0
@@ -0,0 +1,227 @@
|
|
1
|
+
// Copyright (C) 2005, 2009 International Business Machines and others.
|
2
|
+
// All Rights Reserved.
|
3
|
+
// This code is published under the Eclipse Public License.
|
4
|
+
//
|
5
|
+
// Authors: Andreas Waechter IBM 2005-12-25
|
6
|
+
|
7
|
+
#ifndef __IPLAPACK_HPP__
|
8
|
+
#define __IPLAPACK_HPP__
|
9
|
+
|
10
|
+
#include "IpUtils.hpp"
|
11
|
+
#include "IpException.hpp"
|
12
|
+
|
13
|
+
namespace Ipopt
|
14
|
+
{
|
15
|
+
DECLARE_STD_EXCEPTION(LAPACK_NOT_INCLUDED);
|
16
|
+
|
17
|
+
/** Wrapper for LAPACK subroutine XPOTRS.
|
18
|
+
*
|
19
|
+
* Solving a linear system given a Cholesky factorization.
|
20
|
+
* We assume that the Cholesky factor is lower traiangular.
|
21
|
+
* @since 3.14.0
|
22
|
+
*/
|
23
|
+
IPOPTLIB_EXPORT void IpLapackPotrs(
|
24
|
+
Index ndim,
|
25
|
+
Index nrhs,
|
26
|
+
const Number* a,
|
27
|
+
Index lda,
|
28
|
+
Number* b,
|
29
|
+
Index ldb
|
30
|
+
);
|
31
|
+
|
32
|
+
/** Wrapper for LAPACK subroutine DPOTRS.
|
33
|
+
*
|
34
|
+
* Solving a linear system given a Cholesky factorization.
|
35
|
+
* We assume that the Cholesky factor is lower traiangular.
|
36
|
+
*
|
37
|
+
* @deprecated Use IpLapackPotrs() instead.
|
38
|
+
*/
|
39
|
+
IPOPT_DEPRECATED
|
40
|
+
inline void IpLapackDpotrs(
|
41
|
+
Index ndim,
|
42
|
+
Index nrhs,
|
43
|
+
const Number* a,
|
44
|
+
Index lda,
|
45
|
+
Number* b,
|
46
|
+
Index ldb
|
47
|
+
)
|
48
|
+
{
|
49
|
+
IpLapackPotrs(ndim, nrhs, a, lda, b, ldb);
|
50
|
+
}
|
51
|
+
|
52
|
+
/** Wrapper for LAPACK subroutine XPOTRF.
|
53
|
+
*
|
54
|
+
* Compute Cholesky factorization (lower triangular factor).
|
55
|
+
* info is the return value from the LAPACK routine.
|
56
|
+
* @since 3.14.0
|
57
|
+
*/
|
58
|
+
IPOPTLIB_EXPORT void IpLapackPotrf(
|
59
|
+
Index ndim,
|
60
|
+
Number* a,
|
61
|
+
Index lda,
|
62
|
+
Index& info
|
63
|
+
);
|
64
|
+
|
65
|
+
/** Wrapper for LAPACK subroutine DPOTRF.
|
66
|
+
*
|
67
|
+
* Compute Cholesky factorization (lower triangular factor).
|
68
|
+
* info is the return value from the LAPACK routine.
|
69
|
+
*
|
70
|
+
* @deprecated Use IpLapackPotrf() instead.
|
71
|
+
*/
|
72
|
+
IPOPT_DEPRECATED
|
73
|
+
inline void IpLapackDpotrf(
|
74
|
+
Index ndim,
|
75
|
+
Number* a,
|
76
|
+
Index lda,
|
77
|
+
Index& info
|
78
|
+
)
|
79
|
+
{
|
80
|
+
IpLapackPotrf(ndim, a, lda, info);
|
81
|
+
}
|
82
|
+
|
83
|
+
/** Wrapper for LAPACK subroutine XSYEV.
|
84
|
+
*
|
85
|
+
* Compute the Eigenvalue decomposition for a given matrix.
|
86
|
+
* If compute_eigenvectors is true, a will contain the eigenvectors
|
87
|
+
* in its columns on return.
|
88
|
+
* @since 3.14.0
|
89
|
+
*/
|
90
|
+
IPOPTLIB_EXPORT void IpLapackSyev(
|
91
|
+
bool compute_eigenvectors,
|
92
|
+
Index ndim,
|
93
|
+
Number* a,
|
94
|
+
Index lda,
|
95
|
+
Number* w,
|
96
|
+
Index& info
|
97
|
+
);
|
98
|
+
|
99
|
+
/** Wrapper for LAPACK subroutine DSYEV.
|
100
|
+
*
|
101
|
+
* Compute the Eigenvalue decomposition for a given matrix.
|
102
|
+
* If compute_eigenvectors is true, a will contain the eigenvectors
|
103
|
+
* in its columns on return.
|
104
|
+
*
|
105
|
+
* @deprecated Use IpLapackSyev() instead
|
106
|
+
*/
|
107
|
+
IPOPT_DEPRECATED
|
108
|
+
inline void IpLapackDsyev(
|
109
|
+
bool compute_eigenvectors,
|
110
|
+
Index ndim,
|
111
|
+
Number* a,
|
112
|
+
Index lda,
|
113
|
+
Number* w,
|
114
|
+
Index& info
|
115
|
+
)
|
116
|
+
{
|
117
|
+
IpLapackSyev(compute_eigenvectors, ndim, a, lda, w, info);
|
118
|
+
}
|
119
|
+
|
120
|
+
/** Wrapper for LAPACK subroutine XGETRF.
|
121
|
+
*
|
122
|
+
* Compute LU factorization.
|
123
|
+
* info is the return value from the LAPACK routine.
|
124
|
+
* @since 3.14.0
|
125
|
+
*/
|
126
|
+
IPOPTLIB_EXPORT void IpLapackGetrf(
|
127
|
+
Index ndim,
|
128
|
+
Number* a,
|
129
|
+
Index* ipiv,
|
130
|
+
Index lda,
|
131
|
+
Index& info
|
132
|
+
);
|
133
|
+
|
134
|
+
/** Wrapper for LAPACK subroutine DGETRF.
|
135
|
+
*
|
136
|
+
* Compute LU factorization.
|
137
|
+
* info is the return value from the LAPACK routine.
|
138
|
+
*
|
139
|
+
* @deprecated Use IpLapackGetrf() instead.
|
140
|
+
*/
|
141
|
+
IPOPT_DEPRECATED
|
142
|
+
inline void IpLapackDgetrf(
|
143
|
+
Index ndim,
|
144
|
+
Number* a,
|
145
|
+
Index* ipiv,
|
146
|
+
Index lda,
|
147
|
+
Index& info
|
148
|
+
)
|
149
|
+
{
|
150
|
+
IpLapackGetrf(ndim, a, ipiv, lda, info);
|
151
|
+
}
|
152
|
+
|
153
|
+
/** Wrapper for LAPACK subroutine XGETRS.
|
154
|
+
*
|
155
|
+
* Solving a linear system given a LU factorization.
|
156
|
+
* @since 3.14.0
|
157
|
+
*/
|
158
|
+
IPOPTLIB_EXPORT void IpLapackGetrs(
|
159
|
+
Index ndim,
|
160
|
+
Index nrhs,
|
161
|
+
const Number* a,
|
162
|
+
Index lda,
|
163
|
+
Index* ipiv,
|
164
|
+
Number* b,
|
165
|
+
Index ldb
|
166
|
+
);
|
167
|
+
|
168
|
+
/** Wrapper for LAPACK subroutine DGETRS.
|
169
|
+
*
|
170
|
+
* Solving a linear system given a LU factorization.
|
171
|
+
*
|
172
|
+
* @deprecated Use IpLapackGetrs() instead.
|
173
|
+
*/
|
174
|
+
IPOPT_DEPRECATED
|
175
|
+
inline void IpLapackDgetrs(
|
176
|
+
Index ndim,
|
177
|
+
Index nrhs,
|
178
|
+
const Number* a,
|
179
|
+
Index lda,
|
180
|
+
Index* ipiv,
|
181
|
+
Number* b,
|
182
|
+
Index ldb
|
183
|
+
)
|
184
|
+
{
|
185
|
+
IpLapackGetrs(ndim, nrhs, a, lda, ipiv, b, ldb);
|
186
|
+
}
|
187
|
+
|
188
|
+
/** Wrapper for LAPACK subroutine XPPSV.
|
189
|
+
*
|
190
|
+
* Solves a symmetric positive
|
191
|
+
* definite linear system in packed storage format (upper triangular).
|
192
|
+
* info is the return value from the LAPACK routine.
|
193
|
+
* @since 3.14.0
|
194
|
+
*/
|
195
|
+
IPOPTLIB_EXPORT void IpLapackPpsv(
|
196
|
+
Index ndim,
|
197
|
+
Index nrhs,
|
198
|
+
const Number* a,
|
199
|
+
Number* b,
|
200
|
+
Index ldb,
|
201
|
+
Index& info
|
202
|
+
);
|
203
|
+
|
204
|
+
/** Wrapper for LAPACK subroutine DPPSV.
|
205
|
+
*
|
206
|
+
* Solves a symmetric positive
|
207
|
+
* definite linear system in packed storage format (upper triangular).
|
208
|
+
* info is the return value from the LAPACK routine.
|
209
|
+
*
|
210
|
+
* @deprecated Use IpLapackPpsv() instead.
|
211
|
+
*/
|
212
|
+
IPOPT_DEPRECATED
|
213
|
+
inline void IpLapackDppsv(
|
214
|
+
Index ndim,
|
215
|
+
Index nrhs,
|
216
|
+
const Number* a,
|
217
|
+
Number* b,
|
218
|
+
Index ldb,
|
219
|
+
Index& info
|
220
|
+
)
|
221
|
+
{
|
222
|
+
IpLapackPpsv(ndim, nrhs, a, b, ldb, info);
|
223
|
+
}
|
224
|
+
|
225
|
+
} // namespace Ipopt
|
226
|
+
|
227
|
+
#endif
|
@@ -0,0 +1,76 @@
|
|
1
|
+
// Copyright (C) 2021 COIN-OR Foundation
|
2
|
+
// All Rights Reserved.
|
3
|
+
// This code is published under the Eclipse Public License.
|
4
|
+
|
5
|
+
#ifndef __IPLIBRARYLOADER_HPP__
|
6
|
+
#define __IPLIBRARYLOADER_HPP__
|
7
|
+
|
8
|
+
#include "IpReferenced.hpp"
|
9
|
+
#include "IpException.hpp"
|
10
|
+
|
11
|
+
#ifdef _WIN32
|
12
|
+
# define IPOPT_SHAREDLIBEXT "dll"
|
13
|
+
#elif defined(__APPLE__)
|
14
|
+
# define IPOPT_SHAREDLIBEXT "dylib"
|
15
|
+
#else
|
16
|
+
# define IPOPT_SHAREDLIBEXT "so"
|
17
|
+
#endif
|
18
|
+
|
19
|
+
namespace Ipopt
|
20
|
+
{
|
21
|
+
|
22
|
+
/** loading of a library at runtime
|
23
|
+
*
|
24
|
+
* wrapper around dlopen()/dlsym() and variants
|
25
|
+
* @since 3.14.0
|
26
|
+
*/
|
27
|
+
class IPOPTLIB_EXPORT LibraryLoader : public ReferencedObject
|
28
|
+
{
|
29
|
+
private:
|
30
|
+
std::string libname;
|
31
|
+
void* libhandle;
|
32
|
+
|
33
|
+
/** unimplemented copy constructor */
|
34
|
+
LibraryLoader(const LibraryLoader&);
|
35
|
+
/** unimplemented assigment operator */
|
36
|
+
LibraryLoader& operator=(const LibraryLoader&);
|
37
|
+
|
38
|
+
public:
|
39
|
+
/** constructor */
|
40
|
+
LibraryLoader(
|
41
|
+
const std::string& libname_ /**< full name of library, can include path */
|
42
|
+
)
|
43
|
+
: libname(libname_),
|
44
|
+
libhandle(NULL)
|
45
|
+
{ }
|
46
|
+
|
47
|
+
/** destructor */
|
48
|
+
~LibraryLoader()
|
49
|
+
{
|
50
|
+
unloadLibrary();
|
51
|
+
}
|
52
|
+
|
53
|
+
/** tries to load library */
|
54
|
+
void loadLibrary();
|
55
|
+
|
56
|
+
/** unload library, if loaded */
|
57
|
+
void unloadLibrary();
|
58
|
+
|
59
|
+
/** tries to load symbol
|
60
|
+
*
|
61
|
+
* calls loadLibrary() if no library loaded yet
|
62
|
+
*/
|
63
|
+
void* loadSymbol(
|
64
|
+
const std::string& symbolname /**< base name of symbol */
|
65
|
+
);
|
66
|
+
};
|
67
|
+
|
68
|
+
/** a problem occurred with a a dynamically loaded library
|
69
|
+
*
|
70
|
+
* e.g., library could not be loaded or a symbol could not be found
|
71
|
+
*/
|
72
|
+
DECLARE_STD_EXCEPTION(DYNAMIC_LIBRARY_FAILURE);
|
73
|
+
|
74
|
+
} // namespace Ipopt
|
75
|
+
|
76
|
+
#endif /* __IPLIBRARYLOADER_HPP__ */
|
@@ -0,0 +1,106 @@
|
|
1
|
+
// Copyright (C) 2004, 2006 International Business Machines and others.
|
2
|
+
// All Rights Reserved.
|
3
|
+
// This code is published under the Eclipse Public License.
|
4
|
+
//
|
5
|
+
// Authors: Carl Laird, Andreas Waechter IBM 2004-08-13
|
6
|
+
|
7
|
+
#ifndef __IPLINESEARCH_HPP__
|
8
|
+
#define __IPLINESEARCH_HPP__
|
9
|
+
|
10
|
+
#include "IpAlgStrategy.hpp"
|
11
|
+
#include "IpIpoptCalculatedQuantities.hpp"
|
12
|
+
|
13
|
+
namespace Ipopt
|
14
|
+
{
|
15
|
+
|
16
|
+
/** Base class for line search objects. */
|
17
|
+
class IPOPTLIB_EXPORT LineSearch: public AlgorithmStrategyObject
|
18
|
+
{
|
19
|
+
public:
|
20
|
+
/**@name Constructors/Destructors */
|
21
|
+
///@{
|
22
|
+
/** Default Constructor */
|
23
|
+
LineSearch()
|
24
|
+
{ }
|
25
|
+
|
26
|
+
/** Destructor */
|
27
|
+
virtual ~LineSearch()
|
28
|
+
{ }
|
29
|
+
///@}
|
30
|
+
|
31
|
+
/** Perform the line search.
|
32
|
+
*
|
33
|
+
* As search direction the delta in the data object is used.
|
34
|
+
*/
|
35
|
+
virtual void FindAcceptableTrialPoint() = 0;
|
36
|
+
|
37
|
+
/** Reset the line search.
|
38
|
+
*
|
39
|
+
* This function should be called if all previous information
|
40
|
+
* should be discarded when the line search is performed the
|
41
|
+
* next time. For example, this method should be called after
|
42
|
+
* the barrier parameter is changed.
|
43
|
+
*/
|
44
|
+
virtual void Reset() = 0;
|
45
|
+
|
46
|
+
/** Set flag indicating whether a very rigorous line search should
|
47
|
+
* be performed.
|
48
|
+
*
|
49
|
+
* If this flag is set to true, the line search
|
50
|
+
* algorithm might decide to abort the line search and not to
|
51
|
+
* accept a new iterate. If the line search decided not to
|
52
|
+
* accept a new iterate, the return value of
|
53
|
+
* CheckSkippedLineSearch() is true at the next call. For
|
54
|
+
* example, in the non-monotone barrier parameter update
|
55
|
+
* procedure, the filter algorithm should not switch to the
|
56
|
+
* restoration phase in the free mode; instead, the algorithm
|
57
|
+
* should switch to the fixed mode.
|
58
|
+
*/
|
59
|
+
virtual void SetRigorousLineSearch(
|
60
|
+
bool rigorous
|
61
|
+
) = 0;
|
62
|
+
|
63
|
+
/** Check if the line search procedure didn't accept a new iterate
|
64
|
+
* during the last call of FindAcceptableTrialPoint().
|
65
|
+
*/
|
66
|
+
virtual bool CheckSkippedLineSearch() = 0;
|
67
|
+
|
68
|
+
/** This method should be called if the optimization process
|
69
|
+
* requires the line search object to switch to some fallback
|
70
|
+
* mechanism (like the restoration phase), when the regular
|
71
|
+
* optimization procedure cannot be continued (for example,
|
72
|
+
* because the search direction could not be computed).
|
73
|
+
*
|
74
|
+
* This will cause the line search object to immediately proceed
|
75
|
+
* with this mechanism when FindAcceptableTrialPoint() is call.
|
76
|
+
*
|
77
|
+
* @return false, if no fallback mechanism is available.
|
78
|
+
*/
|
79
|
+
virtual bool ActivateFallbackMechanism() = 0;
|
80
|
+
|
81
|
+
private:
|
82
|
+
/**@name Default Compiler Generated Methods
|
83
|
+
* (Hidden to avoid implicit creation/calling).
|
84
|
+
*
|
85
|
+
* These methods are not implemented and
|
86
|
+
* we do not want the compiler to implement
|
87
|
+
* them for us, so we declare them private
|
88
|
+
* and do not define them. This ensures that
|
89
|
+
* they will not be implicitly created/called.
|
90
|
+
*/
|
91
|
+
///@{
|
92
|
+
/** Copy Constructor */
|
93
|
+
LineSearch(
|
94
|
+
const LineSearch&
|
95
|
+
);
|
96
|
+
|
97
|
+
void operator=(
|
98
|
+
const LineSearch&
|
99
|
+
);
|
100
|
+
///@}
|
101
|
+
|
102
|
+
};
|
103
|
+
|
104
|
+
} // namespace Ipopt
|
105
|
+
|
106
|
+
#endif
|
@@ -0,0 +1,46 @@
|
|
1
|
+
// Copyright (C) 2021 COIN-OR Foundation
|
2
|
+
// All Rights Reserved.
|
3
|
+
// This code is published under the Eclipse Public License.
|
4
|
+
|
5
|
+
#ifndef __IPLINEARSOLVERS_H__
|
6
|
+
#define __IPLINEARSOLVERS_H__
|
7
|
+
|
8
|
+
#include "IpoptConfig.h"
|
9
|
+
#include "IpTypes.h"
|
10
|
+
|
11
|
+
#define IPOPTLINEARSOLVER_MA27 0x001u
|
12
|
+
#define IPOPTLINEARSOLVER_MA57 0x002u
|
13
|
+
#define IPOPTLINEARSOLVER_MA77 0x004u
|
14
|
+
#define IPOPTLINEARSOLVER_MA86 0x008u
|
15
|
+
#define IPOPTLINEARSOLVER_MA97 0x010u
|
16
|
+
#define IPOPTLINEARSOLVER_MC19 0x020u
|
17
|
+
#define IPOPTLINEARSOLVER_ALLHSL (IPOPTLINEARSOLVER_MA27 | IPOPTLINEARSOLVER_MA57 | IPOPTLINEARSOLVER_MA77 | IPOPTLINEARSOLVER_MA86 | IPOPTLINEARSOLVER_MA97 | IPOPTLINEARSOLVER_MC19)
|
18
|
+
|
19
|
+
#define IPOPTLINEARSOLVER_PARDISO 0x040u
|
20
|
+
#define IPOPTLINEARSOLVER_PARDISOMKL 0x080u
|
21
|
+
#define IPOPTLINEARSOLVER_SPRAL 0x100u
|
22
|
+
#define IPOPTLINEARSOLVER_WSMP 0x200u
|
23
|
+
#define IPOPTLINEARSOLVER_MUMPS 0x400u
|
24
|
+
|
25
|
+
#ifdef __cplusplus
|
26
|
+
extern "C"
|
27
|
+
{
|
28
|
+
#endif
|
29
|
+
|
30
|
+
typedef unsigned int IpoptLinearSolver;
|
31
|
+
|
32
|
+
/** get bitflags indicating which linear solvers (and mc19) are available to Ipopt
|
33
|
+
*
|
34
|
+
* If buildinonly if set to a nonzero value, then only report linear solvers that have been linked into Ipopt.
|
35
|
+
* Otherwise, also linear solvers are reported which are loaded from a shared library at runtime, if this feature has been compiled.
|
36
|
+
* @since 3.14.0
|
37
|
+
*/
|
38
|
+
IPOPTLIB_EXPORT IpoptLinearSolver IPOPT_CALLCONV IpoptGetAvailableLinearSolvers(
|
39
|
+
int buildinonly
|
40
|
+
);
|
41
|
+
|
42
|
+
#ifdef __cplusplus
|
43
|
+
}
|
44
|
+
#endif
|
45
|
+
|
46
|
+
#endif /* __IPLINEARSOLVERS_H__ */
|