casadi 3.6.5__cp39-none-macosx_11_0_arm64.whl → 3.6.7__cp39-none-macosx_11_0_arm64.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- casadi/_casadi.so +0 -0
- casadi/casadi-cli +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/casadi-targets.cmake +10 -6
- casadi/cmake/highs/highs-config.cmake +6 -13
- casadi/cmake/highs/highs-targets-release.cmake +13 -13
- casadi/cmake/highs/highs-targets.cmake +25 -22
- casadi/cmake/osqp/osqp-targets.cmake +10 -6
- casadi/cmake/proxsuite/proxsuiteConfigVersion.cmake +0 -5
- casadi/cmake/proxsuite/proxsuiteTargets.cmake +12 -12
- casadi/cmake/qdldl/qdldl-targets.cmake +10 -6
- casadi/cmake/sleqp/sleqp-config-version.cmake +0 -5
- casadi/cmake/sleqp/sleqp-targets.cmake +10 -6
- casadi/cmake/trlib/trlib-config-release.cmake +1 -1
- casadi/cmake/trlib/trlib-config-version.cmake +0 -5
- casadi/cmake/trlib/trlib-config.cmake +12 -12
- casadi/highs +0 -0
- casadi/include/casadi/casadi.i +3 -0
- casadi/include/casadi/casadi_c.h +2 -0
- casadi/include/casadi/config.h +9 -9
- casadi/include/casadi/core/casadi_common.hpp +1 -0
- casadi/include/casadi/core/casadi_export.h +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/fatrop/auxiliary/Common.hpp +34 -0
- casadi/include/fatrop/auxiliary/DynamicLib.hpp +34 -0
- casadi/include/fatrop/auxiliary/FatropOptions.hpp +68 -0
- casadi/include/fatrop/auxiliary/FatropVector.hpp +143 -0
- casadi/include/fatrop/auxiliary/LinearAlgebra.hpp +88 -0
- casadi/include/fatrop/auxiliary/VectorUtils.hpp +54 -0
- casadi/include/fatrop/blasfeo_wrapper/LinearAlgebraBlasfeo.hpp +493 -0
- casadi/include/fatrop/fatrop.hpp +39 -0
- casadi/include/fatrop/function_evaluation/CasadiCodegen.hpp +104 -0
- casadi/include/fatrop/function_evaluation/FunctionEvaluation.hpp +60 -0
- casadi/include/fatrop/json/json.h +946 -0
- casadi/include/fatrop/ocp/CasadiCApiUserdataWrap.hpp +87 -0
- casadi/include/fatrop/ocp/DuInfEvaluator.hpp +38 -0
- casadi/include/fatrop/ocp/FatropOCP.hpp +161 -0
- casadi/include/fatrop/ocp/FatropOCPBuilder.hpp +52 -0
- casadi/include/fatrop/ocp/FatropOCPResto.hpp +299 -0
- casadi/include/fatrop/ocp/OCP.hpp +82 -0
- casadi/include/fatrop/ocp/OCPAbstract.hpp +254 -0
- casadi/include/fatrop/ocp/OCPAdapter.hpp +197 -0
- casadi/include/fatrop/ocp/OCPCInterface.h +289 -0
- casadi/include/fatrop/ocp/OCPDims.hpp +60 -0
- casadi/include/fatrop/ocp/OCPInitializer.hpp +41 -0
- casadi/include/fatrop/ocp/OCPKKT.hpp +69 -0
- casadi/include/fatrop/ocp/OCPLSRiccati.hpp +198 -0
- casadi/include/fatrop/ocp/OCPLSScaler.hpp +66 -0
- casadi/include/fatrop/ocp/OCPLinearSolver.hpp +75 -0
- casadi/include/fatrop/ocp/OCPNoScaling.hpp +42 -0
- casadi/include/fatrop/ocp/OCPScalingMethod.hpp +42 -0
- casadi/include/fatrop/ocp/StageOCP.hpp +592 -0
- casadi/include/fatrop/ocp/StageOCPApplication.hpp +242 -0
- casadi/include/fatrop/ocp/StageOCPExpressions.hpp +182 -0
- casadi/include/fatrop/ocp/UStageEvalAbstract.hpp +168 -0
- casadi/include/fatrop/ocp/UStageOCPImpl.hpp +152 -0
- casadi/include/fatrop/quasi_newton/bfgs.hpp +159 -0
- casadi/include/fatrop/solver/AlgBuilder.hpp +76 -0
- casadi/include/fatrop/solver/AlgStrategy.hpp +33 -0
- casadi/include/fatrop/solver/FatropAlg.hpp +121 -0
- casadi/include/fatrop/solver/FatropData.hpp +188 -0
- casadi/include/fatrop/solver/FatropOptions.hpp +95 -0
- casadi/include/fatrop/solver/FatropPrinter.hpp +65 -0
- casadi/include/fatrop/solver/FatropStats.hpp +63 -0
- casadi/include/fatrop/solver/Filter.hpp +54 -0
- casadi/include/fatrop/solver/IterationData.hpp +56 -0
- casadi/include/fatrop/solver/LineSearch.hpp +86 -0
- casadi/include/fatrop/solver/NLPL1.hpp +263 -0
- casadi/include/fatrop/templates/NLPAlg.hpp +104 -0
- casadi/include/highs/HConfig.h +8 -7
- 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/highs_export.h +43 -0
- casadi/include/licenses/daqp-external/LICENSE +21 -0
- casadi/include/licenses/{alpaqa-external/LICENSE → fatrop-external/LICENSE.txt} +2 -2
- casadi/include/licenses/fatrop-external/external/blasfeo/LICENSE.txt +26 -0
- casadi/include/licenses/fatrop-external/external/pybind11/LICENSE +29 -0
- casadi/include/licenses/fatrop-external/misc/license_header.txt +17 -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/include/sleqp/defs.h +4 -4
- casadi/include/sleqp/export.h +1 -0
- casadi/lib/cmake/tinyxml2/tinyxml2-config-version.cmake +0 -5
- casadi/lib/cmake/tinyxml2/tinyxml2-static-targets.cmake +10 -6
- casadi/lib/libtinyxml2.a +0 -0
- casadi/lib/pkgconfig/tinyxml2.pc +1 -1
- casadi/libCbc.3.10.11.dylib +0 -0
- casadi/libCbc.3.dylib +0 -0
- casadi/libCbc.dylib +0 -0
- casadi/libCbc.la +2 -2
- casadi/libCbcSolver.3.10.11.dylib +0 -0
- casadi/libCbcSolver.3.dylib +0 -0
- casadi/libCbcSolver.dylib +0 -0
- casadi/libCbcSolver.la +2 -2
- casadi/libCgl.1.10.8.dylib +0 -0
- casadi/libCgl.1.dylib +0 -0
- casadi/libCgl.dylib +0 -0
- casadi/libCgl.la +2 -2
- casadi/libClp.1.14.9.dylib +0 -0
- casadi/libClp.1.dylib +0 -0
- casadi/libClp.dylib +0 -0
- casadi/libClp.la +2 -2
- casadi/libClpSolver.1.14.9.dylib +0 -0
- casadi/libClpSolver.1.dylib +0 -0
- casadi/libClpSolver.dylib +0 -0
- casadi/libClpSolver.la +2 -2
- casadi/libCoinUtils.3.11.10.dylib +0 -0
- casadi/libCoinUtils.3.dylib +0 -0
- casadi/libCoinUtils.dylib +0 -0
- casadi/libCoinUtils.la +1 -1
- casadi/libOsi.1.13.9.dylib +0 -0
- casadi/libOsi.1.dylib +0 -0
- casadi/libOsi.dylib +0 -0
- casadi/libOsi.la +2 -2
- casadi/libOsiCbc.3.10.11.dylib +0 -0
- casadi/libOsiCbc.3.dylib +0 -0
- casadi/libOsiCbc.dylib +0 -0
- casadi/libOsiCbc.la +2 -2
- casadi/libOsiClp.1.14.9.dylib +0 -0
- casadi/libOsiClp.1.dylib +0 -0
- casadi/libOsiClp.dylib +0 -0
- casadi/libOsiClp.la +2 -2
- casadi/libOsiCommonTests.1.13.9.dylib +0 -0
- casadi/libOsiCommonTests.1.dylib +0 -0
- casadi/libOsiCommonTests.dylib +0 -0
- casadi/libOsiCommonTests.la +2 -2
- casadi/libblasfeo.dylib +0 -0
- casadi/libbonmin.4.8.9.dylib +0 -0
- casadi/libbonmin.4.dylib +0 -0
- casadi/libbonmin.dylib +0 -0
- casadi/libbonmin.la +2 -2
- casadi/libc++.1.0.dylib +0 -0
- casadi/libcasadi.3.7.dylib +0 -0
- casadi/libcasadi.dylib +0 -0
- casadi/libcasadi_conic_cbc.3.7.dylib +0 -0
- casadi/libcasadi_conic_cbc.dylib +0 -0
- casadi/libcasadi_conic_clp.3.7.dylib +0 -0
- casadi/libcasadi_conic_clp.dylib +0 -0
- casadi/libcasadi_conic_cplex.3.7.dylib +0 -0
- casadi/libcasadi_conic_cplex.dylib +0 -0
- casadi/libcasadi_conic_daqp.3.7.dylib +0 -0
- casadi/libcasadi_conic_daqp.dylib +0 -0
- casadi/libcasadi_conic_fatrop.3.7.dylib +0 -0
- casadi/libcasadi_conic_fatrop.dylib +0 -0
- casadi/libcasadi_conic_gurobi.3.7.dylib +0 -0
- casadi/libcasadi_conic_gurobi.dylib +0 -0
- casadi/libcasadi_conic_highs.3.7.dylib +0 -0
- casadi/libcasadi_conic_highs.dylib +0 -0
- casadi/libcasadi_conic_ipqp.3.7.dylib +0 -0
- casadi/libcasadi_conic_ipqp.dylib +0 -0
- casadi/libcasadi_conic_nlpsol.3.7.dylib +0 -0
- casadi/libcasadi_conic_nlpsol.dylib +0 -0
- casadi/libcasadi_conic_osqp.3.7.dylib +0 -0
- casadi/libcasadi_conic_osqp.dylib +0 -0
- casadi/libcasadi_conic_proxqp.3.7.dylib +0 -0
- casadi/libcasadi_conic_proxqp.dylib +0 -0
- casadi/libcasadi_conic_qpoases.3.7.dylib +0 -0
- casadi/libcasadi_conic_qpoases.dylib +0 -0
- casadi/libcasadi_conic_qrqp.3.7.dylib +0 -0
- casadi/libcasadi_conic_qrqp.dylib +0 -0
- casadi/libcasadi_conic_superscs.3.7.dylib +0 -0
- casadi/libcasadi_conic_superscs.dylib +0 -0
- casadi/libcasadi_importer_shell.3.7.dylib +0 -0
- casadi/libcasadi_importer_shell.dylib +0 -0
- casadi/libcasadi_integrator_collocation.3.7.dylib +0 -0
- casadi/libcasadi_integrator_collocation.dylib +0 -0
- casadi/libcasadi_integrator_cvodes.3.7.dylib +0 -0
- casadi/libcasadi_integrator_cvodes.dylib +0 -0
- casadi/libcasadi_integrator_idas.3.7.dylib +0 -0
- casadi/libcasadi_integrator_idas.dylib +0 -0
- casadi/libcasadi_integrator_rk.3.7.dylib +0 -0
- casadi/libcasadi_integrator_rk.dylib +0 -0
- casadi/libcasadi_interpolant_bspline.3.7.dylib +0 -0
- casadi/libcasadi_interpolant_bspline.dylib +0 -0
- casadi/libcasadi_interpolant_linear.3.7.dylib +0 -0
- casadi/libcasadi_interpolant_linear.dylib +0 -0
- casadi/libcasadi_linsol_csparse.3.7.dylib +0 -0
- casadi/libcasadi_linsol_csparse.dylib +0 -0
- casadi/libcasadi_linsol_csparsecholesky.3.7.dylib +0 -0
- casadi/libcasadi_linsol_csparsecholesky.dylib +0 -0
- casadi/libcasadi_linsol_lapacklu.3.7.dylib +0 -0
- casadi/libcasadi_linsol_lapacklu.dylib +0 -0
- casadi/libcasadi_linsol_lapackqr.3.7.dylib +0 -0
- casadi/libcasadi_linsol_lapackqr.dylib +0 -0
- casadi/libcasadi_linsol_ldl.3.7.dylib +0 -0
- casadi/libcasadi_linsol_ldl.dylib +0 -0
- casadi/libcasadi_linsol_lsqr.3.7.dylib +0 -0
- casadi/libcasadi_linsol_lsqr.dylib +0 -0
- casadi/libcasadi_linsol_ma27.3.7.dylib +0 -0
- casadi/libcasadi_linsol_ma27.dylib +0 -0
- casadi/libcasadi_linsol_mumps.3.7.dylib +0 -0
- casadi/libcasadi_linsol_mumps.dylib +0 -0
- casadi/libcasadi_linsol_qr.3.7.dylib +0 -0
- casadi/libcasadi_linsol_qr.dylib +0 -0
- casadi/libcasadi_linsol_symbolicqr.3.7.dylib +0 -0
- casadi/libcasadi_linsol_symbolicqr.dylib +0 -0
- casadi/libcasadi_linsol_tridiag.3.7.dylib +0 -0
- casadi/libcasadi_linsol_tridiag.dylib +0 -0
- casadi/libcasadi_nlpsol_ampl.3.7.dylib +0 -0
- casadi/libcasadi_nlpsol_ampl.dylib +0 -0
- casadi/libcasadi_nlpsol_blocksqp.3.7.dylib +0 -0
- casadi/libcasadi_nlpsol_blocksqp.dylib +0 -0
- casadi/libcasadi_nlpsol_bonmin.3.7.dylib +0 -0
- casadi/libcasadi_nlpsol_bonmin.dylib +0 -0
- casadi/libcasadi_nlpsol_fatrop.3.7.dylib +0 -0
- casadi/libcasadi_nlpsol_fatrop.dylib +0 -0
- casadi/libcasadi_nlpsol_feasiblesqpmethod.3.7.dylib +0 -0
- casadi/libcasadi_nlpsol_feasiblesqpmethod.dylib +0 -0
- casadi/libcasadi_nlpsol_ipopt.3.7.dylib +0 -0
- casadi/libcasadi_nlpsol_ipopt.dylib +0 -0
- casadi/libcasadi_nlpsol_knitro.3.7.dylib +0 -0
- casadi/libcasadi_nlpsol_knitro.dylib +0 -0
- casadi/libcasadi_nlpsol_madnlp.3.7.dylib +0 -0
- casadi/libcasadi_nlpsol_madnlp.dylib +0 -0
- casadi/libcasadi_nlpsol_qrsqp.3.7.dylib +0 -0
- casadi/libcasadi_nlpsol_qrsqp.dylib +0 -0
- casadi/libcasadi_nlpsol_scpgen.3.7.dylib +0 -0
- casadi/libcasadi_nlpsol_scpgen.dylib +0 -0
- casadi/libcasadi_nlpsol_sleqp.3.7.dylib +0 -0
- casadi/libcasadi_nlpsol_sleqp.dylib +0 -0
- casadi/libcasadi_nlpsol_snopt.3.7.dylib +0 -0
- casadi/libcasadi_nlpsol_snopt.dylib +0 -0
- casadi/libcasadi_nlpsol_sqpmethod.3.7.dylib +0 -0
- casadi/libcasadi_nlpsol_sqpmethod.dylib +0 -0
- casadi/libcasadi_rootfinder_fast_newton.3.7.dylib +0 -0
- casadi/libcasadi_rootfinder_fast_newton.dylib +0 -0
- casadi/libcasadi_rootfinder_kinsol.3.7.dylib +0 -0
- casadi/libcasadi_rootfinder_kinsol.dylib +0 -0
- casadi/libcasadi_rootfinder_newton.3.7.dylib +0 -0
- casadi/libcasadi_rootfinder_newton.dylib +0 -0
- casadi/libcasadi_rootfinder_nlpsol.3.7.dylib +0 -0
- casadi/libcasadi_rootfinder_nlpsol.dylib +0 -0
- casadi/libcasadi_sundials_common.3.7.dylib +0 -0
- casadi/libcasadi_sundials_common.dylib +0 -0
- casadi/libcasadi_xmlfile_tinyxml.3.7.dylib +0 -0
- casadi/libcasadi_xmlfile_tinyxml.dylib +0 -0
- casadi/libcoinmetis.2.dylib +0 -0
- casadi/libcoinmetis.dylib +0 -0
- casadi/libcoinmetis.la +1 -1
- casadi/libcoinmumps.3.dylib +0 -0
- casadi/libcoinmumps.dylib +0 -0
- casadi/libcoinmumps.la +2 -2
- casadi/libcplex_adaptor.dylib +0 -0
- casadi/{libamd.3.0.3.dylib → libdaqp.dylib} +0 -0
- casadi/libdaqpstat.a +0 -0
- casadi/libfatrop.dylib +0 -0
- casadi/libgcc_s.1.1.dylib +0 -0
- casadi/libgfortran.5.dylib +0 -0
- casadi/libgurobi_adaptor.dylib +0 -0
- casadi/libhighs.1.7.dylib +0 -0
- casadi/libhighs.1.dylib +0 -0
- casadi/libhighs.dylib +0 -0
- casadi/libindirect.a +0 -0
- casadi/libipopt.3.dylib +0 -0
- casadi/libipopt.dylib +0 -0
- casadi/libipopt.la +2 -2
- casadi/liblinsys.a +0 -0
- casadi/{libsuitesparseconfig.7.0.1.dylib → libmatlab_ipc.dylib} +0 -0
- casadi/libosqp.a +0 -0
- casadi/libosqp.dylib +0 -0
- casadi/libqdldl.a +0 -0
- casadi/libqdldl.dylib +0 -0
- casadi/libquadmath.0.dylib +0 -0
- casadi/libsipopt.3.dylib +0 -0
- casadi/libsipopt.dylib +0 -0
- casadi/libsipopt.la +2 -2
- casadi/libsleqp.1.0.1.dylib +0 -0
- casadi/libsleqp.dylib +0 -0
- casadi/libsuperscs.a +0 -0
- casadi/libtrlib.0.4.dylib +0 -0
- casadi/libtrlib.dylib +0 -0
- casadi/libz.1.2.13.dylib +0 -0
- casadi/pkgconfig/bonmin.pc +1 -1
- casadi/pkgconfig/casadi.pc +5 -5
- casadi/pkgconfig/cbc.pc +1 -1
- casadi/pkgconfig/cgl.pc +1 -1
- casadi/pkgconfig/clp.pc +1 -1
- casadi/pkgconfig/coinmetis.pc +1 -1
- casadi/pkgconfig/coinmumps.pc +2 -2
- casadi/pkgconfig/coinutils.pc +2 -2
- casadi/pkgconfig/highs.pc +4 -4
- casadi/pkgconfig/ipopt.pc +2 -2
- casadi/pkgconfig/osi-cbc.pc +1 -1
- casadi/pkgconfig/osi-clp.pc +1 -1
- casadi/pkgconfig/osi-unittests.pc +1 -1
- casadi/pkgconfig/osi.pc +1 -1
- casadi/pkgconfig/sleqp.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 +532 -477
- casadi/cmake/alpaqa/alpaqaConfig.cmake +0 -24
- casadi/cmake/alpaqa/alpaqaConfigVersion.cmake +0 -70
- casadi/cmake/alpaqa/alpaqaTargets-release.cmake +0 -19
- casadi/cmake/alpaqa/alpaqaTargets.cmake +0 -116
- casadi/include/alpaqa/accelerators/anderson.hpp +0 -133
- casadi/include/alpaqa/accelerators/internal/anderson-helpers.hpp +0 -92
- casadi/include/alpaqa/accelerators/internal/limited-memory-qr.hpp +0 -295
- casadi/include/alpaqa/accelerators/lbfgs.hpp +0 -244
- casadi/include/alpaqa/accelerators/steihaugcg.hpp +0 -143
- casadi/include/alpaqa/alpaqa.hpp +0 -3
- casadi/include/alpaqa/casadi/CasADiControlProblem.hpp +0 -185
- casadi/include/alpaqa/casadi/CasADiFunctionWrapper.hpp +0 -104
- casadi/include/alpaqa/casadi/CasADiProblem.hpp +0 -102
- casadi/include/alpaqa/casadi-loader-export.hpp +0 -15
- casadi/include/alpaqa/casadi-ocp-loader-export.hpp +0 -15
- casadi/include/alpaqa/config/config.hpp +0 -165
- casadi/include/alpaqa/dl/dl-problem.h +0 -476
- casadi/include/alpaqa/dl/dl-problem.hpp +0 -301
- casadi/include/alpaqa/export.h +0 -42
- casadi/include/alpaqa/export.hpp +0 -30
- casadi/include/alpaqa/implementation/accelerators/lbfgs.tpp +0 -240
- casadi/include/alpaqa/implementation/casadi/CasADiControlProblem.tpp +0 -594
- casadi/include/alpaqa/implementation/casadi/CasADiLoader-util.hpp +0 -50
- casadi/include/alpaqa/implementation/casadi/CasADiProblem.tpp +0 -425
- casadi/include/alpaqa/implementation/inner/directions/panoc/structured-lbfgs.tpp +0 -164
- casadi/include/alpaqa/implementation/inner/panoc-helpers.tpp +0 -389
- casadi/include/alpaqa/implementation/inner/panoc-ocp.tpp +0 -798
- casadi/include/alpaqa/implementation/inner/panoc.tpp +0 -448
- casadi/include/alpaqa/implementation/inner/pantr.tpp +0 -474
- casadi/include/alpaqa/implementation/inner/zerofpr.tpp +0 -482
- casadi/include/alpaqa/implementation/outer/alm.tpp +0 -228
- casadi/include/alpaqa/implementation/outer/internal/alm-helpers.tpp +0 -80
- casadi/include/alpaqa/implementation/params/params.tpp +0 -158
- casadi/include/alpaqa/implementation/problem/ocproblem.tpp +0 -56
- casadi/include/alpaqa/implementation/problem/type-erased-problem.tpp +0 -211
- casadi/include/alpaqa/implementation/util/io/csv.tpp +0 -120
- casadi/include/alpaqa/implementation/util/print.tpp +0 -151
- casadi/include/alpaqa/inner/directions/panoc/anderson.hpp +0 -98
- casadi/include/alpaqa/inner/directions/panoc/lbfgs.hpp +0 -94
- casadi/include/alpaqa/inner/directions/panoc/structured-lbfgs.hpp +0 -146
- casadi/include/alpaqa/inner/directions/panoc/structured-newton.hpp +0 -264
- casadi/include/alpaqa/inner/directions/panoc-direction-update.hpp +0 -96
- casadi/include/alpaqa/inner/directions/panoc-ocp/lqr.hpp +0 -181
- casadi/include/alpaqa/inner/directions/panoc-ocp/ocp-vars.hpp +0 -492
- casadi/include/alpaqa/inner/directions/pantr/newton-tr.hpp +0 -192
- casadi/include/alpaqa/inner/directions/pantr/pantr-direction.hpp +0 -99
- casadi/include/alpaqa/inner/inner-solve-options.hpp +0 -30
- casadi/include/alpaqa/inner/internal/lipschitz.hpp +0 -27
- casadi/include/alpaqa/inner/internal/panoc-helpers.hpp +0 -10
- casadi/include/alpaqa/inner/internal/panoc-stop-crit.hpp +0 -124
- casadi/include/alpaqa/inner/internal/solverstatus.hpp +0 -42
- casadi/include/alpaqa/inner/panoc-ocp.hpp +0 -302
- casadi/include/alpaqa/inner/panoc.hpp +0 -274
- casadi/include/alpaqa/inner/pantr.hpp +0 -284
- casadi/include/alpaqa/inner/zerofpr.hpp +0 -274
- casadi/include/alpaqa/ipopt/ipopt-adapter.hpp +0 -81
- casadi/include/alpaqa/ipopt/ipopt-enums.hpp +0 -35
- casadi/include/alpaqa/lbfgsb/lbfgsb-adapter.hpp +0 -111
- casadi/include/alpaqa/newton-tr-pantr-alm.hpp +0 -27
- casadi/include/alpaqa/outer/alm.hpp +0 -190
- casadi/include/alpaqa/outer/internal/alm-helpers.hpp +0 -10
- casadi/include/alpaqa/panoc-alm.hpp +0 -27
- casadi/include/alpaqa/panoc-anderson-alm.hpp +0 -27
- casadi/include/alpaqa/params/params.hpp +0 -60
- casadi/include/alpaqa/problem/box-constr-problem.hpp +0 -220
- casadi/include/alpaqa/problem/box.hpp +0 -82
- casadi/include/alpaqa/problem/functional-problem.hpp +0 -73
- casadi/include/alpaqa/problem/kkt-error.hpp +0 -43
- casadi/include/alpaqa/problem/ocproblem-counters.hpp +0 -116
- casadi/include/alpaqa/problem/ocproblem.hpp +0 -662
- casadi/include/alpaqa/problem/problem-counters.hpp +0 -116
- casadi/include/alpaqa/problem/problem-with-counters.hpp +0 -141
- casadi/include/alpaqa/problem/type-erased-problem.hpp +0 -874
- casadi/include/alpaqa/problem/unconstr-problem.hpp +0 -37
- casadi/include/alpaqa/structured-panoc-alm.hpp +0 -27
- casadi/include/alpaqa/structured-zerofpr-alm.hpp +0 -27
- casadi/include/alpaqa/util/alloc-check.hpp +0 -23
- casadi/include/alpaqa/util/atomic-stop-signal.hpp +0 -24
- casadi/include/alpaqa/util/check-dim.hpp +0 -64
- casadi/include/alpaqa/util/copyable_unique_ptr.hpp +0 -32
- casadi/include/alpaqa/util/demangled-typename.hpp +0 -9
- casadi/include/alpaqa/util/enumerate.hpp +0 -70
- casadi/include/alpaqa/util/float.hpp +0 -25
- casadi/include/alpaqa/util/index-set.hpp +0 -97
- casadi/include/alpaqa/util/io/csv.hpp +0 -43
- casadi/include/alpaqa/util/iter-adapter.hpp +0 -68
- casadi/include/alpaqa/util/max-history.hpp +0 -47
- casadi/include/alpaqa/util/noop-delete.hpp +0 -15
- casadi/include/alpaqa/util/not-implemented.hpp +0 -12
- casadi/include/alpaqa/util/print.hpp +0 -78
- casadi/include/alpaqa/util/quadmath/quadmath-print.hpp +0 -20
- casadi/include/alpaqa/util/quadmath/quadmath.hpp +0 -137
- casadi/include/alpaqa/util/required-method.hpp +0 -29
- casadi/include/alpaqa/util/ringbuffer.hpp +0 -212
- casadi/include/alpaqa/util/set-intersection.hpp +0 -129
- casadi/include/alpaqa/util/sparse-ops.hpp +0 -164
- casadi/include/alpaqa/util/timed.hpp +0 -22
- casadi/include/alpaqa/util/type-erasure.hpp +0 -568
- casadi/include/alpaqa/util/type-traits.hpp +0 -58
- casadi/include/alpaqa/zerofpr-alm.hpp +0 -27
- casadi/include/alpaqa/zerofpr-anderson-alm.hpp +0 -27
- casadi/include/alpaqa-version.h +0 -8
- casadi/include/highs/fortran/highs_fortran_api.mod +0 -0
- casadi/include/licenses/alpaqa-external/src/thirdparty/lbfgsb/Lbfgsb.3.0/License.txt +0 -71
- casadi/libFortranHighs.dylib +0 -0
- casadi/libalpaqa.1.0.0.dylib +0 -0
- casadi/libalpaqa.dylib +0 -0
- casadi/libcamd.3.0.3.dylib +0 -0
- casadi/libcasadi_nlpsol_alpaqa.3.7.dylib +0 -0
- casadi/libcasadi_nlpsol_alpaqa.dylib +0 -0
- casadi/libccolamd.3.0.3.dylib +0 -0
- casadi/libcholmod.4.0.3.dylib +0 -0
- casadi/libcholmod_cuda.4.0.3.dylib +0 -0
- casadi/libcolamd.3.0.3.dylib +0 -0
- casadi/libhighs.1.6.0.dylib +0 -0
- casadi/libhighs.1.6.dylib +0 -0
- casadi/libumfpack.6.1.0.dylib +0 -0
- {casadi-3.6.5.dist-info → casadi-3.6.7.dist-info}/WHEEL +0 -0
@@ -1,476 +0,0 @@
|
|
1
|
-
#pragma once
|
2
|
-
|
3
|
-
#include <stddef.h>
|
4
|
-
#include <stdint.h>
|
5
|
-
#include <string.h>
|
6
|
-
|
7
|
-
#define ALPAQA_DL_ABI_VERSION 0xA1A000000001
|
8
|
-
|
9
|
-
#ifdef __cplusplus
|
10
|
-
extern "C" {
|
11
|
-
#define ALPAQA_DL_ABI_VERSION_DEFAULT = ALPAQA_DL_ABI_VERSION
|
12
|
-
#else
|
13
|
-
#define ALPAQA_DL_ABI_VERSION_DEFAULT
|
14
|
-
#endif
|
15
|
-
|
16
|
-
typedef double alpaqa_real_t;
|
17
|
-
typedef ptrdiff_t alpaqa_length_t;
|
18
|
-
typedef alpaqa_length_t alpaqa_index_t;
|
19
|
-
|
20
|
-
typedef struct {
|
21
|
-
uint64_t abi_version ALPAQA_DL_ABI_VERSION_DEFAULT;
|
22
|
-
alpaqa_length_t n, m;
|
23
|
-
|
24
|
-
// clang-format off
|
25
|
-
alpaqa_real_t (*eval_f)(
|
26
|
-
void *instance,
|
27
|
-
const alpaqa_real_t *x);
|
28
|
-
void (*eval_grad_f)(
|
29
|
-
void *instance,
|
30
|
-
const alpaqa_real_t *x,
|
31
|
-
alpaqa_real_t *grad_fx);
|
32
|
-
void (*eval_g)(
|
33
|
-
void *instance,
|
34
|
-
const alpaqa_real_t *x,
|
35
|
-
alpaqa_real_t *gx);
|
36
|
-
void (*eval_grad_g_prod)(
|
37
|
-
void *instance,
|
38
|
-
const alpaqa_real_t *x,
|
39
|
-
const alpaqa_real_t *y,
|
40
|
-
alpaqa_real_t *grad_gxy);
|
41
|
-
void (*eval_jac_g)(
|
42
|
-
void *instance,
|
43
|
-
const alpaqa_real_t *x,
|
44
|
-
alpaqa_index_t *inner_idx,
|
45
|
-
alpaqa_index_t *outer_ptr,
|
46
|
-
alpaqa_real_t *J_values);
|
47
|
-
alpaqa_length_t (*get_jac_g_num_nonzeros)(
|
48
|
-
void *instance);
|
49
|
-
void (*eval_grad_gi)(
|
50
|
-
void *instance,
|
51
|
-
const alpaqa_real_t *x,
|
52
|
-
alpaqa_index_t i,
|
53
|
-
alpaqa_real_t *grad_gi);
|
54
|
-
void (*eval_hess_L_prod)(
|
55
|
-
void *instance,
|
56
|
-
const alpaqa_real_t *x,
|
57
|
-
const alpaqa_real_t *y,
|
58
|
-
alpaqa_real_t scale,
|
59
|
-
const alpaqa_real_t *v,
|
60
|
-
alpaqa_real_t *Hv);
|
61
|
-
void (*eval_hess_L)(
|
62
|
-
void *instance,
|
63
|
-
const alpaqa_real_t *x,
|
64
|
-
const alpaqa_real_t *y,
|
65
|
-
alpaqa_real_t scale,
|
66
|
-
alpaqa_index_t *inner_idx,
|
67
|
-
alpaqa_index_t *outer_ptr,
|
68
|
-
alpaqa_real_t *H_values);
|
69
|
-
alpaqa_length_t (*get_hess_L_num_nonzeros)(
|
70
|
-
void *instance);
|
71
|
-
void (*eval_hess_ψ_prod)(
|
72
|
-
void *instance,
|
73
|
-
const alpaqa_real_t *x,
|
74
|
-
const alpaqa_real_t *y,
|
75
|
-
const alpaqa_real_t *Σ,
|
76
|
-
alpaqa_real_t scale,
|
77
|
-
const alpaqa_real_t *zl,
|
78
|
-
const alpaqa_real_t *zu,
|
79
|
-
const alpaqa_real_t *v,
|
80
|
-
alpaqa_real_t *Hv);
|
81
|
-
void (*eval_hess_ψ)(
|
82
|
-
void *instance,
|
83
|
-
const alpaqa_real_t *x,
|
84
|
-
const alpaqa_real_t *y,
|
85
|
-
const alpaqa_real_t *Σ,
|
86
|
-
alpaqa_real_t scale,
|
87
|
-
const alpaqa_real_t *zl,
|
88
|
-
const alpaqa_real_t *zu,
|
89
|
-
alpaqa_index_t *inner_idx,
|
90
|
-
alpaqa_index_t *outer_ptr,
|
91
|
-
alpaqa_real_t *H_values);
|
92
|
-
alpaqa_length_t (*get_hess_ψ_num_nonzeros)(
|
93
|
-
void *instance);
|
94
|
-
alpaqa_real_t (*eval_f_grad_f)(
|
95
|
-
void *instance,
|
96
|
-
const alpaqa_real_t *x,
|
97
|
-
alpaqa_real_t *grad_fx);
|
98
|
-
alpaqa_real_t (*eval_f_g)(
|
99
|
-
void *instance,
|
100
|
-
const alpaqa_real_t *x,
|
101
|
-
alpaqa_real_t *g);
|
102
|
-
void (*eval_grad_f_grad_g_prod)(
|
103
|
-
void *instance,
|
104
|
-
const alpaqa_real_t *x,
|
105
|
-
const alpaqa_real_t *y,
|
106
|
-
alpaqa_real_t *grad_f,
|
107
|
-
alpaqa_real_t *grad_gxy);
|
108
|
-
void (*eval_grad_L)(
|
109
|
-
void *instance,
|
110
|
-
const alpaqa_real_t *x,
|
111
|
-
const alpaqa_real_t *y,
|
112
|
-
alpaqa_real_t *grad_L,
|
113
|
-
alpaqa_real_t *work_n);
|
114
|
-
alpaqa_real_t (*eval_ψ)(
|
115
|
-
void *instance,
|
116
|
-
const alpaqa_real_t *x,
|
117
|
-
const alpaqa_real_t *y,
|
118
|
-
const alpaqa_real_t *Σ,
|
119
|
-
const alpaqa_real_t *zl,
|
120
|
-
const alpaqa_real_t *zu,
|
121
|
-
alpaqa_real_t *ŷ);
|
122
|
-
void (*eval_grad_ψ)(
|
123
|
-
void *instance,
|
124
|
-
const alpaqa_real_t *x,
|
125
|
-
const alpaqa_real_t *y,
|
126
|
-
const alpaqa_real_t *Σ,
|
127
|
-
const alpaqa_real_t *zl,
|
128
|
-
const alpaqa_real_t *zu,
|
129
|
-
alpaqa_real_t *grad_ψ,
|
130
|
-
alpaqa_real_t *work_n,
|
131
|
-
alpaqa_real_t *work_m);
|
132
|
-
alpaqa_real_t (*eval_ψ_grad_ψ)(
|
133
|
-
void *instance,
|
134
|
-
const alpaqa_real_t *x,
|
135
|
-
const alpaqa_real_t *y,
|
136
|
-
const alpaqa_real_t *Σ,
|
137
|
-
const alpaqa_real_t *zl,
|
138
|
-
const alpaqa_real_t *zu,
|
139
|
-
alpaqa_real_t *grad_ψ,
|
140
|
-
alpaqa_real_t *work_n,
|
141
|
-
alpaqa_real_t *work_m);
|
142
|
-
alpaqa_real_t (*eval_prox_grad_step)(
|
143
|
-
void *instance,
|
144
|
-
alpaqa_real_t γ,
|
145
|
-
const alpaqa_real_t *x,
|
146
|
-
const alpaqa_real_t *grad_ψ,
|
147
|
-
alpaqa_real_t *x̂,
|
148
|
-
alpaqa_real_t *p);
|
149
|
-
void (*initialize_box_C)(
|
150
|
-
void *instance,
|
151
|
-
alpaqa_real_t *lb,
|
152
|
-
alpaqa_real_t *ub);
|
153
|
-
void (*initialize_box_D)(
|
154
|
-
void *instance,
|
155
|
-
alpaqa_real_t *lb,
|
156
|
-
alpaqa_real_t *ub);
|
157
|
-
void (*initialize_l1_reg)(
|
158
|
-
void *instance,
|
159
|
-
alpaqa_real_t *lambda,
|
160
|
-
alpaqa_length_t *size);
|
161
|
-
// clang-format on
|
162
|
-
} alpaqa_problem_functions_t;
|
163
|
-
|
164
|
-
/// Opaque type for a C++-only map of extra functions.
|
165
|
-
typedef struct alpaqa_function_dict_s alpaqa_function_dict_t;
|
166
|
-
|
167
|
-
typedef struct {
|
168
|
-
/// Owning pointer.
|
169
|
-
void *instance;
|
170
|
-
/// Non-owning pointer, lifetime at least as long as @ref instance.
|
171
|
-
alpaqa_problem_functions_t *functions;
|
172
|
-
/// Pointer to the function to clean up @ref instance.
|
173
|
-
void (*cleanup)(void *);
|
174
|
-
/// Pointer to a map of extra functions (C++ only).
|
175
|
-
alpaqa_function_dict_t *extra_functions;
|
176
|
-
} alpaqa_problem_register_t;
|
177
|
-
|
178
|
-
typedef struct {
|
179
|
-
uint64_t abi_version ALPAQA_DL_ABI_VERSION_DEFAULT;
|
180
|
-
alpaqa_length_t N, nx, nu, nh, nh_N, nc, nc_N;
|
181
|
-
|
182
|
-
// clang-format off
|
183
|
-
void (*get_U)(
|
184
|
-
void *instance,
|
185
|
-
alpaqa_real_t *lb,
|
186
|
-
alpaqa_real_t *ub);
|
187
|
-
void (*get_D)(
|
188
|
-
void *instance,
|
189
|
-
alpaqa_real_t *lb,
|
190
|
-
alpaqa_real_t *ub);
|
191
|
-
void (*get_D_N)(
|
192
|
-
void *instance,
|
193
|
-
alpaqa_real_t *lb,
|
194
|
-
alpaqa_real_t *ub);
|
195
|
-
void (*get_x_init)(
|
196
|
-
void *instance,
|
197
|
-
alpaqa_real_t *x_init);
|
198
|
-
void (*eval_f)(
|
199
|
-
void *instance,
|
200
|
-
alpaqa_index_t timestep,
|
201
|
-
const alpaqa_real_t *x,
|
202
|
-
const alpaqa_real_t *u,
|
203
|
-
alpaqa_real_t *fxu);
|
204
|
-
void (*eval_jac_f)(
|
205
|
-
void *instance,
|
206
|
-
alpaqa_index_t timestep,
|
207
|
-
const alpaqa_real_t *x,
|
208
|
-
const alpaqa_real_t *u,
|
209
|
-
alpaqa_real_t *J_fxu);
|
210
|
-
void (*eval_grad_f_prod)(
|
211
|
-
void *instance,
|
212
|
-
alpaqa_index_t timestep,
|
213
|
-
const alpaqa_real_t *x,
|
214
|
-
const alpaqa_real_t *u,
|
215
|
-
const alpaqa_real_t *p,
|
216
|
-
alpaqa_real_t *grad_fxu_p);
|
217
|
-
void (*eval_h)(
|
218
|
-
void *instance,
|
219
|
-
alpaqa_index_t timestep,
|
220
|
-
const alpaqa_real_t *x,
|
221
|
-
const alpaqa_real_t *u,
|
222
|
-
alpaqa_real_t *h);
|
223
|
-
void (*eval_h_N)(
|
224
|
-
void *instance,
|
225
|
-
const alpaqa_real_t *x,
|
226
|
-
alpaqa_real_t *h);
|
227
|
-
alpaqa_real_t (*eval_l)(
|
228
|
-
void *instance,
|
229
|
-
alpaqa_index_t timestep,
|
230
|
-
const alpaqa_real_t *h);
|
231
|
-
alpaqa_real_t (*eval_l_N)(
|
232
|
-
void *instance,
|
233
|
-
const alpaqa_real_t *h);
|
234
|
-
void (*eval_qr)(
|
235
|
-
void *instance,
|
236
|
-
alpaqa_index_t timestep,
|
237
|
-
const alpaqa_real_t *xu,
|
238
|
-
const alpaqa_real_t *h,
|
239
|
-
alpaqa_real_t *qr);
|
240
|
-
void (*eval_q_N)(
|
241
|
-
void *instance,
|
242
|
-
const alpaqa_real_t *x,
|
243
|
-
const alpaqa_real_t *h,
|
244
|
-
alpaqa_real_t *q);
|
245
|
-
void (*eval_add_Q)(
|
246
|
-
void *instance,
|
247
|
-
alpaqa_index_t timestep,
|
248
|
-
const alpaqa_real_t *xu,
|
249
|
-
const alpaqa_real_t *h,
|
250
|
-
alpaqa_real_t *Q);
|
251
|
-
void (*eval_add_Q_N)(
|
252
|
-
void *instance,
|
253
|
-
const alpaqa_real_t *x,
|
254
|
-
const alpaqa_real_t *h,
|
255
|
-
alpaqa_real_t *Q);
|
256
|
-
void (*eval_add_R_masked)(
|
257
|
-
void *instance,
|
258
|
-
alpaqa_index_t timestep,
|
259
|
-
const alpaqa_real_t *xu,
|
260
|
-
const alpaqa_real_t *h,
|
261
|
-
const alpaqa_index_t *mask,
|
262
|
-
alpaqa_real_t *R,
|
263
|
-
alpaqa_real_t *work);
|
264
|
-
void (*eval_add_S_masked)(
|
265
|
-
void *instance,
|
266
|
-
alpaqa_index_t timestep,
|
267
|
-
const alpaqa_real_t *xu,
|
268
|
-
const alpaqa_real_t *h,
|
269
|
-
const alpaqa_index_t *mask,
|
270
|
-
alpaqa_real_t *S,
|
271
|
-
alpaqa_real_t *work);
|
272
|
-
void (*eval_add_R_prod_masked)(
|
273
|
-
void *instance,
|
274
|
-
alpaqa_index_t timestep,
|
275
|
-
const alpaqa_real_t *xu,
|
276
|
-
const alpaqa_real_t *h,
|
277
|
-
const alpaqa_index_t *mask_J,
|
278
|
-
const alpaqa_index_t *mask_K,
|
279
|
-
const alpaqa_real_t *v,
|
280
|
-
alpaqa_real_t *out,
|
281
|
-
alpaqa_real_t *work);
|
282
|
-
void (*eval_add_S_prod_masked)(
|
283
|
-
void *instance,
|
284
|
-
alpaqa_index_t timestep,
|
285
|
-
const alpaqa_real_t *xu,
|
286
|
-
const alpaqa_real_t *h,
|
287
|
-
const alpaqa_index_t *mask_K,
|
288
|
-
const alpaqa_real_t *v,
|
289
|
-
alpaqa_real_t *out,
|
290
|
-
alpaqa_real_t *work);
|
291
|
-
alpaqa_length_t (*get_R_work_size)(
|
292
|
-
void *instance);
|
293
|
-
alpaqa_length_t (*get_S_work_size)(
|
294
|
-
void *instance);
|
295
|
-
void (*eval_constr)(
|
296
|
-
void *instance,
|
297
|
-
alpaqa_index_t timestep,
|
298
|
-
const alpaqa_real_t *x,
|
299
|
-
alpaqa_real_t *c);
|
300
|
-
void (*eval_constr_N)(
|
301
|
-
void *instance,
|
302
|
-
const alpaqa_real_t *x,
|
303
|
-
alpaqa_real_t *c);
|
304
|
-
void (*eval_grad_constr_prod)(
|
305
|
-
void *instance,
|
306
|
-
alpaqa_index_t timestep,
|
307
|
-
const alpaqa_real_t *x,
|
308
|
-
const alpaqa_real_t *p,
|
309
|
-
alpaqa_real_t *grad_cx_p);
|
310
|
-
void (*eval_grad_constr_prod_N)(
|
311
|
-
void *instance,
|
312
|
-
const alpaqa_real_t *x,
|
313
|
-
const alpaqa_real_t *p,
|
314
|
-
alpaqa_real_t *grad_cx_p);
|
315
|
-
void (*eval_add_gn_hess_constr)(
|
316
|
-
void *instance,
|
317
|
-
alpaqa_index_t timestep,
|
318
|
-
const alpaqa_real_t *x,
|
319
|
-
const alpaqa_real_t *M,
|
320
|
-
alpaqa_real_t *out);
|
321
|
-
void (*eval_add_gn_hess_constr_N)(
|
322
|
-
void *instance,
|
323
|
-
const alpaqa_real_t *x,
|
324
|
-
const alpaqa_real_t *M,
|
325
|
-
alpaqa_real_t *out);
|
326
|
-
// clang-format on
|
327
|
-
} alpaqa_control_problem_functions_t;
|
328
|
-
|
329
|
-
typedef struct {
|
330
|
-
/// Owning pointer.
|
331
|
-
void *instance;
|
332
|
-
/// Non-owning pointer, lifetime at least as long as @ref instance.
|
333
|
-
alpaqa_control_problem_functions_t *functions;
|
334
|
-
/// Pointer to the function to clean up @ref instance.
|
335
|
-
void (*cleanup)(void *);
|
336
|
-
/// Pointer to a map of extra functions (C++ only).
|
337
|
-
alpaqa_function_dict_t *extra_functions;
|
338
|
-
} alpaqa_control_problem_register_t;
|
339
|
-
|
340
|
-
#ifdef __cplusplus
|
341
|
-
}
|
342
|
-
#endif
|
343
|
-
|
344
|
-
#ifndef __cplusplus
|
345
|
-
#define ALPAQA_PROBLEM_FUNCTIONS_INIT(self) \
|
346
|
-
do { \
|
347
|
-
memset((self), 0, sizeof(*(self))); \
|
348
|
-
(self)->abi_version = ALPAQA_DL_ABI_VERSION; \
|
349
|
-
} while (0)
|
350
|
-
#endif
|
351
|
-
|
352
|
-
#if defined(__cplusplus) && __cplusplus > 201703L
|
353
|
-
|
354
|
-
#include <any>
|
355
|
-
#include <functional>
|
356
|
-
#include <map>
|
357
|
-
#include <string>
|
358
|
-
|
359
|
-
struct alpaqa_function_dict_s {
|
360
|
-
std::map<std::string, std::any> dict{};
|
361
|
-
};
|
362
|
-
|
363
|
-
namespace alpaqa {
|
364
|
-
|
365
|
-
using function_dict_t = alpaqa_function_dict_t;
|
366
|
-
using problem_register_t = alpaqa_problem_register_t;
|
367
|
-
using control_problem_register_t = alpaqa_control_problem_register_t;
|
368
|
-
using problem_functions_t = alpaqa_problem_functions_t;
|
369
|
-
using control_problem_functions_t = alpaqa_control_problem_functions_t;
|
370
|
-
|
371
|
-
/// Make the given function available to alpaqa.
|
372
|
-
/// @see @ref alpaqa::dl::DLProblem::call_extra_func
|
373
|
-
/// @see @ref alpaqa::dl::DLControlProblem::call_extra_func
|
374
|
-
template <class Func>
|
375
|
-
void register_function(function_dict_t *&extra_functions, std::string name,
|
376
|
-
Func &&func) {
|
377
|
-
if (extra_functions == nullptr)
|
378
|
-
extra_functions = new function_dict_t{};
|
379
|
-
extra_functions->dict.insert_or_assign(
|
380
|
-
std::move(name), std::function{std::forward<Func>(func)});
|
381
|
-
}
|
382
|
-
|
383
|
-
template <class Func>
|
384
|
-
void register_function(problem_register_t &result, std::string name,
|
385
|
-
Func &&func) {
|
386
|
-
register_function(result.extra_functions, std::move(name),
|
387
|
-
std::forward<Func>(func));
|
388
|
-
}
|
389
|
-
|
390
|
-
template <class Func>
|
391
|
-
void register_function(control_problem_register_t &result, std::string name,
|
392
|
-
Func &&func) {
|
393
|
-
register_function(result.extra_functions, std::move(name),
|
394
|
-
std::forward<Func>(func));
|
395
|
-
}
|
396
|
-
|
397
|
-
template <class Result, class T, class Ret, class... Args>
|
398
|
-
void register_member_function(Result &result, std::string name,
|
399
|
-
Ret (T::*member)(Args...)) {
|
400
|
-
register_function(result, std::move(name),
|
401
|
-
[member](void *self_, Args... args) -> Ret {
|
402
|
-
auto *self = reinterpret_cast<T *>(self_);
|
403
|
-
return (self->*member)(std::forward<Args>(args)...);
|
404
|
-
});
|
405
|
-
}
|
406
|
-
|
407
|
-
template <class Result, class T, class Ret, class... Args>
|
408
|
-
void register_member_function(Result &result, std::string name,
|
409
|
-
Ret (T::*member)(Args...) const) {
|
410
|
-
register_function(result, std::move(name),
|
411
|
-
[member](const void *self_, Args... args) -> Ret {
|
412
|
-
const auto *self = reinterpret_cast<const T *>(self_);
|
413
|
-
return (self->*member)(std::forward<Args>(args)...);
|
414
|
-
});
|
415
|
-
}
|
416
|
-
|
417
|
-
namespace detail {
|
418
|
-
template <auto Member, class Class, class Ret, class... Args>
|
419
|
-
static auto member_caller(Ret (Class::*)(Args...)) {
|
420
|
-
return [](void *self_, Args... args) -> Ret {
|
421
|
-
auto *self = reinterpret_cast<Class *>(self_);
|
422
|
-
return (self->*Member)(std::forward<Args>(args)...);
|
423
|
-
};
|
424
|
-
}
|
425
|
-
|
426
|
-
template <auto Member, class Class, class Ret, class... Args>
|
427
|
-
static auto member_caller(Ret (Class::*)(Args...) const) {
|
428
|
-
return []<class Self>(Self * self_, Args... args) -> Ret
|
429
|
-
requires std::is_void_v<Self>
|
430
|
-
{
|
431
|
-
const auto *self = reinterpret_cast<const Class *>(self_);
|
432
|
-
return (self->*Member)(std::forward<Args>(args)...);
|
433
|
-
};
|
434
|
-
}
|
435
|
-
|
436
|
-
template <auto Member, class Class, class Ret>
|
437
|
-
static auto member_caller(Ret Class::*) {
|
438
|
-
return []<class Self>(Self * self_) -> decltype(auto)
|
439
|
-
requires std::is_void_v<Self>
|
440
|
-
{
|
441
|
-
using CClass = std::conditional_t<std::is_const_v<Self>,
|
442
|
-
std::add_const_t<Class>, Class>;
|
443
|
-
auto *self = reinterpret_cast<CClass *>(self_);
|
444
|
-
return self->*Member;
|
445
|
-
};
|
446
|
-
}
|
447
|
-
} // namespace detail
|
448
|
-
|
449
|
-
/// Wrap the given member function of signature into a lambda function that
|
450
|
-
/// accepts the instance as a void pointer.
|
451
|
-
///
|
452
|
-
/// - `Ret Class::member(args...)` → `Ret(void *self, args...)`
|
453
|
-
/// - `Ret Class::member(args...) const` → `Ret(const void *self, args...)`
|
454
|
-
/// - `Type Class::member` → `Type &(void *self)`
|
455
|
-
/// - `Type Class::member` → `const Type &(const void *self)`
|
456
|
-
template <auto Member>
|
457
|
-
static auto member_caller() {
|
458
|
-
return detail::member_caller<Member>(Member);
|
459
|
-
}
|
460
|
-
|
461
|
-
/// Cleans up the extra functions registered by @ref register_function.
|
462
|
-
/// @note This does not need to be called for the functions returned by the
|
463
|
-
/// registration function, those functions will be cleaned up by alpaqa.
|
464
|
-
/// @note The @ref alpaqa_problem_register_t and
|
465
|
-
/// @ref alpaqa_control_problem_register_t structs are part of the C API
|
466
|
-
/// and do not automatically clean up their resources when destroyed,
|
467
|
-
/// you have to do it manually by calling this function.
|
468
|
-
inline void unregister_functions(function_dict_t *&extra_functions) {
|
469
|
-
delete extra_functions;
|
470
|
-
}
|
471
|
-
|
472
|
-
} // namespace alpaqa
|
473
|
-
|
474
|
-
#endif
|
475
|
-
|
476
|
-
#undef ALPAQA_DL_ABI_VERSION_DEFAULT
|