casadi 3.6.7__cp313-none-win_amd64.whl → 3.7.0__cp313-none-win_amd64.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- casadi/_casadi.pyd +0 -0
- casadi/blasfeo.lib +0 -0
- casadi/casadi-cli.exe +0 -0
- casadi/casadi.lib +0 -0
- casadi/casadi.py +6070 -3038
- casadi/cbc.exe +0 -0
- casadi/clp.exe +0 -0
- casadi/cmake/casadi-config-version.cmake +1 -1
- casadi/cmake/casadi-targets-release.cmake +5 -5
- casadi/cmake/casadi-targets.cmake +5 -5
- casadi/{lib/cmake/tinyxml2/tinyxml2-config-version.cmake → cmake/ghc_filesystem/ghc_filesystem-config-version.cmake} +19 -10
- casadi/cmake/ghc_filesystem/ghc_filesystem-config.cmake +30 -0
- casadi/cmake/ghc_filesystem/ghc_filesystem-targets.cmake +99 -0
- casadi/cmake/highs/highs-config.cmake +1 -0
- casadi/cmake/highs/highs-targets.cmake +2 -2
- casadi/cmake/libzip/libzip-config-version.cmake +48 -0
- casadi/cmake/libzip/libzip-config.cmake +69 -0
- casadi/cmake/libzip/libzip-targets-release.cmake +19 -0
- casadi/{lib/cmake/tinyxml2/tinyxml2-shared-targets.cmake → cmake/libzip/libzip-targets.cmake} +11 -7
- casadi/cmake/libzip/modules/FindMbedTLS.cmake +141 -0
- casadi/cmake/libzip/modules/FindNettle.cmake +141 -0
- casadi/cmake/libzip/modules/Findzstd.cmake +186 -0
- casadi/daqp.lib +0 -0
- casadi/fatrop.lib +0 -0
- casadi/highs.exe +0 -0
- casadi/highs.lib +0 -0
- casadi/hpipm.lib +0 -0
- casadi/include/casadi/casadi.i +194 -44
- casadi/include/casadi/config.h +11 -11
- casadi/include/casadi/core/archiver.hpp +58 -0
- casadi/include/casadi/core/blazing_spline.hpp +47 -0
- casadi/include/casadi/core/calculus.hpp +57 -2
- casadi/include/casadi/core/casadi_common.hpp +37 -0
- casadi/include/casadi/core/casadi_meta.hpp +15 -0
- casadi/include/casadi/core/casadi_misc.hpp +7 -0
- casadi/include/casadi/core/code_generator.hpp +95 -17
- casadi/include/casadi/core/core.hpp +5 -0
- casadi/include/casadi/core/dae_builder.hpp +283 -141
- casadi/include/casadi/core/dm.hpp +3 -0
- casadi/include/casadi/core/filesystem.hpp +58 -0
- casadi/include/casadi/core/fmu.hpp +51 -16
- casadi/include/casadi/core/function.hpp +19 -0
- casadi/include/casadi/core/generic_matrix.hpp +214 -7
- casadi/include/casadi/core/generic_shared.hpp +318 -0
- casadi/include/casadi/core/generic_shared_impl.hpp +214 -0
- casadi/include/casadi/core/generic_shared_internal.hpp +215 -0
- casadi/include/casadi/core/generic_type.hpp +3 -0
- casadi/include/casadi/core/global_options.hpp +10 -0
- casadi/include/casadi/core/integrator.hpp +41 -7
- casadi/include/casadi/core/matrix_decl.hpp +67 -0
- casadi/include/casadi/core/mx.hpp +63 -2
- casadi/include/casadi/core/options.hpp +6 -3
- casadi/include/casadi/core/optistack.hpp +43 -9
- casadi/include/casadi/core/printable.hpp +8 -0
- casadi/include/casadi/core/resource.hpp +107 -0
- casadi/include/casadi/core/runtime/casadi_blazing_1d_boor_eval.hpp +112 -0
- casadi/include/casadi/core/runtime/casadi_blazing_2d_boor_eval.hpp +311 -0
- casadi/include/casadi/core/runtime/casadi_blazing_3d_boor_eval.hpp +645 -0
- casadi/include/casadi/core/runtime/casadi_blazing_de_boor.hpp +101 -0
- casadi/include/casadi/core/runtime/casadi_nlp.hpp +8 -2
- casadi/include/casadi/core/runtime/casadi_printme.hpp +25 -0
- casadi/include/casadi/core/serializer.hpp +12 -4
- casadi/include/casadi/core/serializing_stream.hpp +3 -0
- casadi/include/casadi/core/shared_object.hpp +73 -161
- casadi/include/casadi/core/sparsity.hpp +13 -1
- casadi/include/casadi/core/sparsity_interface.hpp +19 -1
- casadi/include/casadi/core/sx.hpp +41 -0
- casadi/include/casadi/core/sx_elem.hpp +25 -0
- casadi/include/casadi/core/xml_node.hpp +5 -0
- casadi/include/casadi/doc.i +9703 -6539
- casadi/include/casadi/doc_merged.i +6483 -4447
- casadi/include/casadi/valgrind-casadi.supp +138 -0
- casadi/include/casadi/valgrind-python.supp +2470 -0
- casadi/include/fatrop/blasfeo_wrapper/LinearAlgebraBlasfeo.hpp +4 -1
- casadi/include/ghc/filesystem.hpp +6083 -0
- casadi/include/ghc/fs_fwd.hpp +38 -0
- casadi/include/ghc/fs_impl.hpp +35 -0
- casadi/include/ghc/fs_std.hpp +60 -0
- casadi/include/ghc/fs_std_fwd.hpp +63 -0
- casadi/include/ghc/fs_std_impl.hpp +46 -0
- casadi/include/highs/HConfig.h +7 -5
- casadi/include/highs/Highs.h +260 -86
- casadi/include/highs/filereaderlp/reader.hpp +10 -10
- casadi/include/highs/interfaces/highs_c_api.h +195 -22
- casadi/include/highs/io/Filereader.h +4 -6
- casadi/include/highs/io/FilereaderEms.h +0 -3
- casadi/include/highs/io/FilereaderLp.h +0 -3
- casadi/include/highs/io/FilereaderMps.h +0 -3
- casadi/include/highs/io/HMPSIO.h +1 -4
- casadi/include/highs/io/HMpsFF.h +8 -5
- casadi/include/highs/io/HighsIO.h +10 -5
- casadi/include/highs/io/LoadOptions.h +0 -3
- casadi/include/highs/ipm/IpxSolution.h +0 -3
- casadi/include/highs/ipm/IpxWrapper.h +4 -7
- casadi/include/highs/ipm/ipx/control.h +1 -0
- casadi/include/highs/ipm/ipx/ipx_parameters.h +1 -0
- casadi/include/highs/ipm/ipx/lp_solver.h +3 -2
- casadi/include/highs/ipm/ipx/model.h +7 -3
- casadi/include/highs/lp_data/HConst.h +21 -6
- casadi/include/highs/lp_data/HStruct.h +40 -4
- casadi/include/highs/lp_data/HighsAnalysis.h +0 -3
- casadi/include/highs/lp_data/HighsCallback.h +10 -3
- casadi/include/highs/lp_data/HighsCallbackStruct.h +3 -3
- casadi/include/highs/lp_data/HighsDebug.h +0 -3
- casadi/include/highs/lp_data/HighsIis.h +62 -0
- casadi/include/highs/lp_data/HighsInfo.h +50 -43
- casadi/include/highs/lp_data/HighsInfoDebug.h +0 -3
- casadi/include/highs/lp_data/HighsLp.h +2 -3
- casadi/include/highs/lp_data/HighsLpSolverObject.h +0 -3
- casadi/include/highs/lp_data/HighsLpUtils.h +38 -6
- casadi/include/highs/lp_data/HighsModelUtils.h +21 -18
- casadi/include/highs/lp_data/HighsOptions.h +134 -22
- casadi/include/highs/lp_data/HighsRanging.h +0 -3
- casadi/include/highs/lp_data/HighsSolution.h +10 -3
- casadi/include/highs/lp_data/HighsSolutionDebug.h +0 -3
- casadi/include/highs/lp_data/HighsSolve.h +0 -3
- casadi/include/highs/lp_data/HighsStatus.h +0 -3
- casadi/include/highs/mip/HighsCliqueTable.h +3 -3
- casadi/include/highs/mip/HighsConflictPool.h +0 -3
- casadi/include/highs/mip/HighsCutGeneration.h +13 -3
- casadi/include/highs/mip/HighsCutPool.h +0 -3
- casadi/include/highs/mip/HighsDebugSol.h +0 -3
- casadi/include/highs/mip/HighsDomain.h +16 -4
- casadi/include/highs/mip/HighsDomainChange.h +0 -3
- casadi/include/highs/mip/HighsDynamicRowMatrix.h +0 -3
- casadi/include/highs/mip/HighsGFkSolve.h +3 -6
- casadi/include/highs/mip/HighsImplications.h +29 -5
- casadi/include/highs/mip/HighsLpAggregator.h +0 -3
- casadi/include/highs/mip/HighsLpRelaxation.h +0 -3
- casadi/include/highs/mip/HighsMipAnalysis.h +52 -0
- casadi/include/highs/mip/HighsMipSolver.h +11 -4
- casadi/include/highs/mip/HighsMipSolverData.h +67 -6
- casadi/include/highs/mip/HighsModkSeparator.h +1 -4
- casadi/include/highs/mip/HighsNodeQueue.h +0 -3
- casadi/include/highs/mip/HighsObjectiveFunction.h +0 -3
- casadi/include/highs/mip/HighsPathSeparator.h +1 -4
- casadi/include/highs/mip/HighsPrimalHeuristics.h +7 -5
- casadi/include/highs/mip/HighsPseudocost.h +0 -3
- casadi/include/highs/mip/HighsRedcostFixing.h +0 -3
- casadi/include/highs/mip/HighsSearch.h +0 -3
- casadi/include/highs/mip/HighsSeparation.h +0 -3
- casadi/include/highs/mip/HighsSeparator.h +1 -5
- casadi/include/highs/mip/HighsTableauSeparator.h +1 -4
- casadi/include/highs/mip/HighsTransformedLp.h +0 -3
- casadi/include/highs/mip/MipTimer.h +471 -0
- casadi/include/highs/parallel/HighsBinarySemaphore.h +1 -1
- casadi/include/highs/parallel/HighsCacheAlign.h +1 -1
- casadi/include/highs/parallel/HighsCombinable.h +1 -1
- casadi/include/highs/parallel/HighsMutex.h +1 -1
- casadi/include/highs/parallel/HighsRaceTimer.h +1 -1
- casadi/include/highs/parallel/HighsSchedulerConstants.h +1 -1
- casadi/include/highs/parallel/HighsSplitDeque.h +1 -1
- casadi/include/highs/parallel/HighsTaskExecutor.h +68 -55
- casadi/include/highs/pdlp/CupdlpWrapper.h +18 -7
- casadi/include/highs/pdlp/cupdlp/cupdlp_cs.h +2 -3
- casadi/include/highs/pdlp/cupdlp/cupdlp_defs.h +16 -6
- casadi/include/highs/pdlp/cupdlp/cupdlp_linalg.h +10 -4
- casadi/include/highs/pdlp/cupdlp/cupdlp_proj.h +3 -3
- casadi/include/highs/pdlp/cupdlp/cupdlp_restart.h +6 -6
- casadi/include/highs/pdlp/cupdlp/cupdlp_scaling.h +26 -0
- casadi/include/highs/pdlp/cupdlp/cupdlp_solver.h +11 -11
- casadi/include/highs/pdlp/cupdlp/cupdlp_step.h +8 -4
- casadi/include/highs/pdlp/cupdlp/cupdlp_utils.c +253 -172
- casadi/include/highs/presolve/HPresolve.h +50 -10
- casadi/include/highs/presolve/HPresolveAnalysis.h +0 -3
- casadi/include/highs/presolve/HighsPostsolveStack.h +39 -6
- casadi/include/highs/presolve/HighsSymmetry.h +0 -3
- casadi/include/highs/presolve/ICrash.h +0 -3
- casadi/include/highs/presolve/ICrashUtil.h +1 -4
- casadi/include/highs/presolve/ICrashX.h +0 -3
- casadi/include/highs/presolve/PresolveComponent.h +0 -3
- casadi/include/highs/qpsolver/a_asm.hpp +20 -17
- casadi/include/highs/qpsolver/a_quass.hpp +5 -9
- casadi/include/highs/qpsolver/basis.hpp +12 -10
- casadi/include/highs/qpsolver/crashsolution.hpp +4 -3
- casadi/include/highs/qpsolver/dantzigpricing.hpp +3 -2
- casadi/include/highs/qpsolver/devexpricing.hpp +3 -1
- casadi/include/highs/qpsolver/factor.hpp +6 -5
- casadi/include/highs/qpsolver/feasibility_bounded.hpp +31 -29
- casadi/include/highs/qpsolver/feasibility_highs.hpp +94 -70
- casadi/include/highs/qpsolver/gradient.hpp +1 -1
- casadi/include/highs/qpsolver/instance.hpp +1 -1
- casadi/include/highs/qpsolver/pricing.hpp +2 -2
- casadi/include/highs/qpsolver/qpconst.hpp +2 -2
- casadi/include/highs/qpsolver/quass.hpp +2 -2
- casadi/include/highs/qpsolver/runtime.hpp +2 -2
- casadi/include/highs/qpsolver/settings.hpp +20 -8
- casadi/include/highs/qpsolver/steepestedgepricing.hpp +38 -39
- casadi/include/highs/simplex/HApp.h +88 -34
- casadi/include/highs/simplex/HEkk.h +24 -11
- casadi/include/highs/simplex/HEkkDual.h +2 -4
- casadi/include/highs/simplex/HEkkDualRHS.h +0 -3
- casadi/include/highs/simplex/HEkkDualRow.h +0 -3
- casadi/include/highs/simplex/HEkkPrimal.h +1 -5
- casadi/include/highs/simplex/HSimplex.h +0 -3
- casadi/include/highs/simplex/HSimplexDebug.h +0 -3
- casadi/include/highs/simplex/HSimplexNla.h +0 -26
- casadi/include/highs/simplex/HSimplexReport.h +0 -3
- casadi/include/highs/simplex/HighsSimplexAnalysis.h +5 -8
- casadi/include/highs/simplex/SimplexConst.h +10 -11
- casadi/include/highs/simplex/SimplexStruct.h +9 -12
- casadi/include/highs/simplex/SimplexTimer.h +83 -101
- casadi/include/highs/test/DevKkt.h +0 -3
- casadi/include/highs/test/KktCh2.h +0 -3
- casadi/include/highs/util/FactorTimer.h +39 -64
- casadi/include/highs/util/HFactor.h +4 -4
- casadi/include/highs/util/HFactorConst.h +0 -3
- casadi/include/highs/util/HFactorDebug.h +0 -3
- casadi/include/highs/util/HSet.h +0 -3
- casadi/include/highs/util/HVector.h +0 -3
- casadi/include/highs/util/HVectorBase.h +1 -4
- casadi/include/highs/util/HighsCDouble.h +12 -3
- casadi/include/highs/util/HighsComponent.h +0 -3
- casadi/include/highs/util/HighsDataStack.h +0 -3
- casadi/include/highs/util/HighsDisjointSets.h +0 -3
- casadi/include/highs/util/HighsHash.h +9 -12
- casadi/include/highs/util/HighsHashTree.h +15 -11
- casadi/include/highs/util/HighsInt.h +0 -3
- casadi/include/highs/util/HighsIntegers.h +0 -3
- casadi/include/highs/util/HighsLinearSumBounds.h +0 -3
- casadi/include/highs/util/HighsMatrixPic.h +0 -3
- casadi/include/highs/util/HighsMatrixSlice.h +3 -6
- casadi/include/highs/util/HighsMatrixUtils.h +0 -3
- casadi/include/highs/util/HighsMemoryAllocation.h +11 -3
- casadi/include/highs/util/HighsRandom.h +3 -6
- casadi/include/highs/util/HighsRbTree.h +0 -3
- casadi/include/highs/util/HighsSort.h +0 -3
- casadi/include/highs/util/HighsSparseMatrix.h +6 -3
- casadi/include/highs/util/HighsSparseVectorSum.h +0 -3
- casadi/include/highs/util/HighsSplay.h +0 -3
- casadi/include/highs/util/HighsTimer.h +94 -56
- casadi/include/highs/util/HighsUtils.h +10 -3
- casadi/include/highs/util/stringutil.h +14 -12
- casadi/include/licenses/ghc-external/LICENSE +19 -0
- casadi/include/licenses/libz-external/LICENSE +22 -0
- casadi/include/licenses/libz-external/contrib/dotzlib/LICENSE_1_0.txt +23 -0
- casadi/include/licenses/libzip-external/LICENSE +31 -0
- casadi/include/zconf.h +545 -0
- casadi/include/zip.h +528 -0
- casadi/include/zipconf.h +48 -0
- casadi/include/zlib.h +1938 -0
- casadi/ipopt.lib +0 -0
- casadi/lapack.lib +0 -0
- casadi/libCbc-3.dll +0 -0
- casadi/libCbc.dll.a +0 -0
- casadi/libCbcSolver-3.dll +0 -0
- casadi/libCbcSolver.dll.a +0 -0
- casadi/libCgl-1.dll +0 -0
- casadi/libCgl.dll.a +0 -0
- casadi/libClp-1.dll +0 -0
- casadi/libClp.dll.a +0 -0
- casadi/libClpSolver-1.dll +0 -0
- casadi/libClpSolver.dll.a +0 -0
- casadi/libCoinUtils-3.dll +0 -0
- casadi/libCoinUtils.dll.a +0 -0
- casadi/libOsi-1.dll +0 -0
- casadi/libOsi.dll.a +0 -0
- casadi/libOsiCbc-3.dll +0 -0
- casadi/libOsiCbc.dll.a +0 -0
- casadi/libOsiClp-1.dll +0 -0
- casadi/libOsiClp.dll.a +0 -0
- casadi/libOsiCommonTests-1.dll +0 -0
- casadi/libOsiCommonTests.dll.a +0 -0
- casadi/libalpaqa.dll +0 -0
- casadi/libalpaqa.dll.a +0 -0
- casadi/libblasfeo.dll +0 -0
- casadi/libblasfeo.dll.a +0 -0
- casadi/libbonmin-4.dll +0 -0
- casadi/libbonmin.dll.a +0 -0
- casadi/libcasadi-tp-openblas.dll +0 -0
- casadi/libcasadi-tp-openblas.dll.a +0 -0
- casadi/libcasadi.dll +0 -0
- casadi/libcasadi.dll.a +0 -0
- casadi/libcasadi.lib +0 -0
- casadi/libcasadi_archiver_libzip.dll +0 -0
- casadi/libcasadi_archiver_libzip.dll.a +0 -0
- casadi/libcasadi_conic_cbc.dll +0 -0
- casadi/libcasadi_conic_cbc.dll.a +0 -0
- casadi/libcasadi_conic_clp.dll +0 -0
- casadi/libcasadi_conic_clp.dll.a +0 -0
- casadi/libcasadi_conic_cplex.dll +0 -0
- casadi/libcasadi_conic_cplex.dll.a +0 -0
- casadi/libcasadi_conic_daqp.dll +0 -0
- casadi/libcasadi_conic_daqp.dll.a +0 -0
- casadi/libcasadi_conic_fatrop.dll +0 -0
- casadi/libcasadi_conic_fatrop.dll.a +0 -0
- casadi/libcasadi_conic_gurobi.dll +0 -0
- casadi/libcasadi_conic_gurobi.dll.a +0 -0
- casadi/libcasadi_conic_highs.dll +0 -0
- casadi/libcasadi_conic_highs.dll.a +0 -0
- casadi/libcasadi_conic_hpipm.dll +0 -0
- casadi/libcasadi_conic_hpipm.dll.a +0 -0
- casadi/libcasadi_conic_ipqp.dll +0 -0
- casadi/libcasadi_conic_ipqp.dll.a +0 -0
- casadi/libcasadi_conic_nlpsol.dll +0 -0
- casadi/libcasadi_conic_nlpsol.dll.a +0 -0
- casadi/libcasadi_conic_osqp.dll +0 -0
- casadi/libcasadi_conic_osqp.dll.a +0 -0
- casadi/libcasadi_conic_proxqp.dll +0 -0
- casadi/libcasadi_conic_proxqp.dll.a +0 -0
- casadi/libcasadi_conic_qpoases.dll +0 -0
- casadi/libcasadi_conic_qpoases.dll.a +0 -0
- casadi/libcasadi_conic_qrqp.dll +0 -0
- casadi/libcasadi_conic_qrqp.dll.a +0 -0
- casadi/libcasadi_conic_superscs.dll +0 -0
- casadi/libcasadi_conic_superscs.dll.a +0 -0
- casadi/libcasadi_filesystem_ghc.dll +0 -0
- casadi/libcasadi_filesystem_ghc.dll.a +0 -0
- casadi/libcasadi_importer_shell.dll +0 -0
- casadi/libcasadi_importer_shell.dll.a +0 -0
- casadi/libcasadi_integrator_collocation.dll +0 -0
- casadi/libcasadi_integrator_collocation.dll.a +0 -0
- casadi/libcasadi_integrator_cvodes.dll +0 -0
- casadi/libcasadi_integrator_cvodes.dll.a +0 -0
- casadi/libcasadi_integrator_idas.dll +0 -0
- casadi/libcasadi_integrator_idas.dll.a +0 -0
- casadi/libcasadi_integrator_rk.dll +0 -0
- casadi/libcasadi_integrator_rk.dll.a +0 -0
- casadi/libcasadi_interpolant_bspline.dll +0 -0
- casadi/libcasadi_interpolant_bspline.dll.a +0 -0
- casadi/libcasadi_interpolant_linear.dll +0 -0
- casadi/libcasadi_interpolant_linear.dll.a +0 -0
- casadi/libcasadi_linsol_csparse.dll +0 -0
- casadi/libcasadi_linsol_csparse.dll.a +0 -0
- casadi/libcasadi_linsol_csparsecholesky.dll +0 -0
- casadi/libcasadi_linsol_csparsecholesky.dll.a +0 -0
- casadi/libcasadi_linsol_lapacklu.dll +0 -0
- casadi/libcasadi_linsol_lapacklu.dll.a +0 -0
- casadi/libcasadi_linsol_lapackqr.dll +0 -0
- casadi/libcasadi_linsol_lapackqr.dll.a +0 -0
- casadi/libcasadi_linsol_ldl.dll +0 -0
- casadi/libcasadi_linsol_ldl.dll.a +0 -0
- casadi/libcasadi_linsol_lsqr.dll +0 -0
- casadi/libcasadi_linsol_lsqr.dll.a +0 -0
- casadi/libcasadi_linsol_ma27.dll +0 -0
- casadi/libcasadi_linsol_ma27.dll.a +0 -0
- casadi/libcasadi_linsol_mumps.dll +0 -0
- casadi/libcasadi_linsol_mumps.dll.a +0 -0
- casadi/libcasadi_linsol_qr.dll +0 -0
- casadi/libcasadi_linsol_qr.dll.a +0 -0
- casadi/libcasadi_linsol_symbolicqr.dll +0 -0
- casadi/libcasadi_linsol_symbolicqr.dll.a +0 -0
- casadi/libcasadi_linsol_tridiag.dll +0 -0
- casadi/libcasadi_linsol_tridiag.dll.a +0 -0
- casadi/libcasadi_nlpsol_alpaqa.dll +0 -0
- casadi/libcasadi_nlpsol_alpaqa.dll.a +0 -0
- casadi/libcasadi_nlpsol_ampl.dll +0 -0
- casadi/libcasadi_nlpsol_ampl.dll.a +0 -0
- casadi/libcasadi_nlpsol_blocksqp.dll +0 -0
- casadi/libcasadi_nlpsol_blocksqp.dll.a +0 -0
- casadi/libcasadi_nlpsol_bonmin.dll +0 -0
- casadi/libcasadi_nlpsol_bonmin.dll.a +0 -0
- casadi/libcasadi_nlpsol_fatrop.dll +0 -0
- casadi/libcasadi_nlpsol_fatrop.dll.a +0 -0
- casadi/libcasadi_nlpsol_feasiblesqpmethod.dll +0 -0
- casadi/libcasadi_nlpsol_feasiblesqpmethod.dll.a +0 -0
- casadi/libcasadi_nlpsol_ipopt.dll +0 -0
- casadi/libcasadi_nlpsol_ipopt.dll.a +0 -0
- casadi/libcasadi_nlpsol_knitro.dll +0 -0
- casadi/libcasadi_nlpsol_knitro.dll.a +0 -0
- casadi/libcasadi_nlpsol_madnlp.dll +0 -0
- casadi/libcasadi_nlpsol_madnlp.dll.a +0 -0
- casadi/libcasadi_nlpsol_qrsqp.dll +0 -0
- casadi/libcasadi_nlpsol_qrsqp.dll.a +0 -0
- casadi/libcasadi_nlpsol_scpgen.dll +0 -0
- casadi/libcasadi_nlpsol_scpgen.dll.a +0 -0
- casadi/libcasadi_nlpsol_sleqp.dll +0 -0
- casadi/libcasadi_nlpsol_sleqp.dll.a +0 -0
- casadi/libcasadi_nlpsol_snopt.dll +0 -0
- casadi/libcasadi_nlpsol_snopt.dll.a +0 -0
- casadi/libcasadi_nlpsol_sqpmethod.dll +0 -0
- casadi/libcasadi_nlpsol_sqpmethod.dll.a +0 -0
- casadi/libcasadi_nlpsol_worhp.dll +0 -0
- casadi/libcasadi_nlpsol_worhp.dll.a +0 -0
- casadi/libcasadi_rootfinder_fast_newton.dll +0 -0
- casadi/libcasadi_rootfinder_fast_newton.dll.a +0 -0
- casadi/libcasadi_rootfinder_kinsol.dll +0 -0
- casadi/libcasadi_rootfinder_kinsol.dll.a +0 -0
- casadi/libcasadi_rootfinder_newton.dll +0 -0
- casadi/libcasadi_rootfinder_newton.dll.a +0 -0
- casadi/libcasadi_rootfinder_nlpsol.dll +0 -0
- casadi/libcasadi_rootfinder_nlpsol.dll.a +0 -0
- casadi/libcasadi_sundials_common.dll +0 -0
- casadi/libcasadi_sundials_common.dll.a +0 -0
- casadi/libcasadi_xmlfile_tinyxml.dll +0 -0
- casadi/libcasadi_xmlfile_tinyxml.dll.a +0 -0
- casadi/libcoinmetis-2.dll +0 -0
- casadi/libcoinmetis.dll.a +0 -0
- casadi/libcoinmumps-3.dll +0 -0
- casadi/libcoinmumps.dll.a +0 -0
- casadi/libcplex_adaptor.dll +0 -0
- casadi/libdaqp.dll +0 -0
- casadi/libdaqp.dll.a +0 -0
- casadi/libdl.dll +0 -0
- casadi/libdl.dll.a +0 -0
- casadi/libfatrop.dll +0 -0
- casadi/libfatrop.dll.a +0 -0
- casadi/libgurobi_adaptor.dll +0 -0
- casadi/libhighs.dll +0 -0
- casadi/libhighs.dll.a +0 -0
- casadi/libhpipm.dll +0 -0
- casadi/libhpipm.dll.a +0 -0
- casadi/libipopt-3.dll +0 -0
- casadi/libipopt.dll.a +0 -0
- casadi/libmatlab_ipc.dll +0 -0
- casadi/libmatlab_ipc.dll.a +0 -0
- casadi/libosqp.dll +0 -0
- casadi/libosqp.dll.a +0 -0
- casadi/libqdldl.dll +0 -0
- casadi/libqdldl.dll.a +0 -0
- casadi/libsipopt-3.dll +0 -0
- casadi/libsipopt.dll.a +0 -0
- casadi/libsleqp.dll +0 -0
- casadi/libsleqp.dll.a +0 -0
- casadi/libtrlib.dll +0 -0
- casadi/libtrlib.dll.a +0 -0
- casadi/libzip.a +0 -0
- casadi/libzlib.dll +0 -0
- casadi/libzlib.dll.a +0 -0
- casadi/libzlibstatic.a +0 -0
- casadi/matlab_ipc.lib +0 -0
- casadi/osqp.lib +0 -0
- casadi/pkgconfig/casadi.pc +1 -1
- casadi/pkgconfig/highs.pc +1 -1
- casadi/pkgconfig/libzip.pc +14 -0
- casadi/sleqp.lib +0 -0
- casadi/spral_ssids.exe +0 -0
- casadi/std-e414687e404555e5.dll +0 -0
- casadi/tools/__init__.py +3 -1
- casadi/tools/graph/graph.py +1 -1
- casadi/tools/structure3.py +2 -2
- {casadi-3.6.7.dist-info → casadi-3.7.0.dist-info}/METADATA +1 -1
- {casadi-3.6.7.dist-info → casadi-3.7.0.dist-info}/RECORD +434 -393
- casadi/bin/libtinyxml2.dll +0 -0
- casadi/include/tinyxml2.h +0 -2380
- casadi/lib/cmake/tinyxml2/tinyxml2-config.cmake +0 -57
- casadi/lib/cmake/tinyxml2/tinyxml2-shared-targets-release.cmake +0 -19
- casadi/lib/libtinyxml2.dll.a +0 -0
- casadi/lib/pkgconfig/tinyxml2.pc +0 -10
- casadi/libtinyxml2.dll +0 -0
- casadi/tools/structure.py +0 -1446
- {casadi-3.6.7.dist-info → casadi-3.7.0.dist-info}/WHEEL +0 -0
@@ -87,15 +87,23 @@ class CASADI_EXPORT DaeBuilder
|
|
87
87
|
|
88
88
|
/** @name Variables and equations */
|
89
89
|
///@{
|
90
|
+
/** \brief Expression for independent variable (usually time)
|
91
|
+
|
92
|
+
\identifier{2by} */
|
93
|
+
const MX& time() const;
|
94
|
+
|
90
95
|
/** \brief Independent variable (usually time)
|
91
96
|
|
92
|
-
\identifier{
|
93
|
-
const
|
97
|
+
\identifier{2bz} */
|
98
|
+
std::vector<std::string> t_new() const {return all("t");}
|
94
99
|
|
95
100
|
/** \brief Differential states
|
96
101
|
|
97
102
|
\identifier{5f} */
|
98
|
-
std::vector<std::string> x() const;
|
103
|
+
std::vector<std::string> x() const {return all("x");}
|
104
|
+
|
105
|
+
/// Outputs */
|
106
|
+
std::vector<std::string> y() const;
|
99
107
|
|
100
108
|
/** \brief Ordinary differential equations (ODE)
|
101
109
|
|
@@ -105,7 +113,7 @@ class CASADI_EXPORT DaeBuilder
|
|
105
113
|
/** \brief Algebraic variables
|
106
114
|
|
107
115
|
\identifier{5h} */
|
108
|
-
std::vector<std::string> z() const;
|
116
|
+
std::vector<std::string> z() const {return all("z");}
|
109
117
|
|
110
118
|
/** \brief Algebraic equations
|
111
119
|
|
@@ -115,17 +123,17 @@ class CASADI_EXPORT DaeBuilder
|
|
115
123
|
/** \brief Quadrature states
|
116
124
|
|
117
125
|
\identifier{5j} */
|
118
|
-
std::vector<std::string> q() const;
|
126
|
+
std::vector<std::string> q() const {return all("q");}
|
119
127
|
|
120
128
|
/** \brief Quadrature equations
|
121
129
|
|
122
130
|
\identifier{5k} */
|
123
131
|
std::vector<MX> quad() const;
|
124
132
|
|
125
|
-
/** \brief
|
133
|
+
/** \brief Zero-crossing functions
|
126
134
|
|
127
|
-
\identifier{
|
128
|
-
std::vector<
|
135
|
+
\identifier{2b0} */
|
136
|
+
std::vector<MX> zero() const;
|
129
137
|
|
130
138
|
/** \brief Definitions of output variables
|
131
139
|
|
@@ -135,17 +143,17 @@ class CASADI_EXPORT DaeBuilder
|
|
135
143
|
/** \brief Free controls
|
136
144
|
|
137
145
|
\identifier{5n} */
|
138
|
-
std::vector<std::string> u() const;
|
146
|
+
std::vector<std::string> u() const {return all("u");}
|
139
147
|
|
140
148
|
/** \brief Parameters
|
141
149
|
|
142
150
|
\identifier{5o} */
|
143
|
-
std::vector<std::string> p() const;
|
151
|
+
std::vector<std::string> p() const {return all("p");}
|
144
152
|
|
145
153
|
/** \brief Named constants
|
146
154
|
|
147
155
|
\identifier{5p} */
|
148
|
-
std::vector<std::string> c() const;
|
156
|
+
std::vector<std::string> c() const {return all("c");}
|
149
157
|
|
150
158
|
/** \brief Definitions of named constants
|
151
159
|
|
@@ -155,7 +163,7 @@ class CASADI_EXPORT DaeBuilder
|
|
155
163
|
/** \brief Dependent parameters
|
156
164
|
|
157
165
|
\identifier{5r} */
|
158
|
-
std::vector<std::string> d() const;
|
166
|
+
std::vector<std::string> d() const {return all("d");}
|
159
167
|
|
160
168
|
/** \brief Definitions of dependent parameters
|
161
169
|
|
@@ -167,7 +175,7 @@ class CASADI_EXPORT DaeBuilder
|
|
167
175
|
/** \brief Dependent variables
|
168
176
|
|
169
177
|
\identifier{5t} */
|
170
|
-
std::vector<std::string> w() const;
|
178
|
+
std::vector<std::string> w() const {return all("w");}
|
171
179
|
|
172
180
|
/** \brief Dependent variables and corresponding definitions
|
173
181
|
|
@@ -176,36 +184,15 @@ class CASADI_EXPORT DaeBuilder
|
|
176
184
|
\identifier{5u} */
|
177
185
|
std::vector<MX> wdef() const;
|
178
186
|
|
179
|
-
/** \brief Auxiliary variables: Used e.g. to define functions
|
180
|
-
|
181
|
-
\identifier{5v} */
|
182
|
-
const std::vector<MX>& aux() const;
|
183
|
-
|
184
187
|
/** \brief Initial conditions, left-hand-side
|
185
188
|
|
186
|
-
\identifier{
|
187
|
-
|
189
|
+
\identifier{2b1} */
|
190
|
+
std::vector<MX> init_lhs() const;
|
188
191
|
|
189
192
|
/** \brief Initial conditions, right-hand-side
|
190
193
|
|
191
|
-
\identifier{
|
192
|
-
|
193
|
-
|
194
|
-
/** \brief When statement: triggering condition
|
195
|
-
|
196
|
-
\identifier{5y} */
|
197
|
-
const std::vector<MX>& when_cond() const;
|
198
|
-
|
199
|
-
/** \brief When statement: left-hand-side
|
200
|
-
|
201
|
-
\identifier{5z} */
|
202
|
-
const std::vector<MX>& when_lhs() const;
|
203
|
-
|
204
|
-
/** \brief When statement: right-hand-side
|
205
|
-
|
206
|
-
\identifier{60} */
|
207
|
-
const std::vector<MX>& when_rhs() const;
|
208
|
-
///@}
|
194
|
+
\identifier{2b2} */
|
195
|
+
std::vector<MX> init_rhs() const;
|
209
196
|
|
210
197
|
/** \brief Model structure: outputs
|
211
198
|
|
@@ -245,6 +232,11 @@ class CASADI_EXPORT DaeBuilder
|
|
245
232
|
\identifier{67} */
|
246
233
|
casadi_int nq() const;
|
247
234
|
|
235
|
+
/** \brief Zero-crossing functions
|
236
|
+
|
237
|
+
\identifier{2cb} */
|
238
|
+
casadi_int nzero() const;
|
239
|
+
|
248
240
|
/** \brief Output variables
|
249
241
|
|
250
242
|
\identifier{68} */
|
@@ -280,62 +272,123 @@ class CASADI_EXPORT DaeBuilder
|
|
280
272
|
* Formulate a dynamic system model
|
281
273
|
*/
|
282
274
|
///@{
|
283
|
-
|
275
|
+
|
276
|
+
/// Add a new model variable
|
277
|
+
MX add(const std::string& name,
|
278
|
+
const std::string& causality,
|
279
|
+
const std::string& variability,
|
280
|
+
const Dict& opts=Dict());
|
281
|
+
|
282
|
+
/// Add a new model variable, default variability
|
283
|
+
MX add(const std::string& name,
|
284
|
+
const std::string& causality,
|
285
|
+
const Dict& opts=Dict());
|
286
|
+
|
287
|
+
/// Add a new model variable, default variability and causality
|
288
|
+
MX add(const std::string& name,
|
289
|
+
const Dict& opts=Dict());
|
290
|
+
|
291
|
+
/// Add a new model variable, symbolic expression already available
|
292
|
+
void add(const std::string& name,
|
293
|
+
const std::string& causality,
|
294
|
+
const std::string& variability,
|
295
|
+
const MX& expr,
|
296
|
+
const Dict& opts=Dict());
|
297
|
+
|
298
|
+
#ifdef WITH_DEPRECATED_FEATURES
|
299
|
+
/// [DEPRECATED] Renamed "time"
|
300
|
+
const MX& t() const { return time();}
|
301
|
+
|
302
|
+
/// [DEPRECATED] Replaced by add
|
284
303
|
MX add_t(const std::string& name="t");
|
285
304
|
|
286
|
-
///
|
305
|
+
/// [DEPRECATED] Replaced by add
|
287
306
|
MX add_p(const std::string& name=std::string());
|
288
307
|
|
289
|
-
///
|
308
|
+
/// [DEPRECATED] Replaced by add
|
290
309
|
MX add_u(const std::string& name=std::string());
|
291
310
|
|
292
|
-
///
|
311
|
+
/// [DEPRECATED] Replaced by add
|
293
312
|
MX add_x(const std::string& name=std::string());
|
294
313
|
|
295
|
-
///
|
314
|
+
/// [DEPRECATED] Replaced by add
|
296
315
|
MX add_z(const std::string& name=std::string());
|
297
316
|
|
298
|
-
///
|
317
|
+
/// [DEPRECATED] Replaced by add
|
299
318
|
MX add_q(const std::string& name=std::string());
|
300
319
|
|
301
|
-
///
|
320
|
+
/// [DEPRECATED] Replaced by add and eq
|
302
321
|
MX add_c(const std::string& name, const MX& new_cdef);
|
303
322
|
|
304
|
-
///
|
323
|
+
/// [DEPRECATED] Replaced by add and eq
|
305
324
|
MX add_d(const std::string& name, const MX& new_ddef);
|
306
325
|
|
307
|
-
///
|
326
|
+
/// [DEPRECATED] Replaced by add and eq
|
308
327
|
MX add_w(const std::string& name, const MX& new_wdef);
|
309
328
|
|
310
|
-
///
|
329
|
+
/// [DEPRECATED] Replaced by add and eq
|
311
330
|
MX add_y(const std::string& name, const MX& new_ydef);
|
312
331
|
|
313
|
-
///
|
314
|
-
void
|
332
|
+
/// [DEPRECATED] Replaced by eq
|
333
|
+
void set_beq(const std::string& name, const MX& val);
|
334
|
+
|
335
|
+
#endif // WITH_DEPRECATED_FEATURES
|
336
|
+
|
337
|
+
/// Add a simple equation
|
338
|
+
void eq(const MX& lhs, const MX& rhs, const Dict& opts=Dict());
|
315
339
|
|
316
|
-
///
|
317
|
-
void
|
340
|
+
/// Add when equations
|
341
|
+
void when(const MX& cond, const std::vector<std::string>& eqs, const Dict& opts=Dict());
|
318
342
|
|
319
|
-
///
|
320
|
-
|
343
|
+
/// Assignment inside a when-equation or if-else equation
|
344
|
+
std::string assign(const std::string& name, const MX& val);
|
321
345
|
|
322
|
-
///
|
323
|
-
|
346
|
+
/// Reinitialize a state inside when-equations
|
347
|
+
std::string reinit(const std::string& name, const MX& val);
|
324
348
|
|
325
|
-
///
|
326
|
-
void
|
349
|
+
/// Specify the initial equation for a variable
|
350
|
+
void set_init(const std::string& name, const MX& init_rhs);
|
351
|
+
|
352
|
+
#ifdef WITH_DEPRECATED_FEATURES
|
353
|
+
/// [DEPRECATED] Replaced by eq
|
354
|
+
void set_ode(const std::string& name, const MX& ode_rhs) {
|
355
|
+
eq(var(name), ode_rhs);
|
356
|
+
}
|
357
|
+
|
358
|
+
/// [DEPRECATED] Replaced by eq
|
359
|
+
void set_alg(const std::string& name, const MX& alg_rhs) {
|
360
|
+
(void)name;
|
361
|
+
eq(0, alg_rhs);
|
362
|
+
}
|
363
|
+
|
364
|
+
/// [DEPRECATED] Replaced by set_init
|
365
|
+
void add_init(const MX& lhs, const MX& rhs) {
|
366
|
+
set_init(lhs.name(), rhs);
|
367
|
+
}
|
368
|
+
|
369
|
+
/// [DEPRECATED] Replaced by nzero()
|
370
|
+
casadi_int ne() const {return nzero();}
|
371
|
+
|
372
|
+
/// [DEPRECATED] Use all("zero") */
|
373
|
+
std::vector<std::string> e() const {return all("zero");}
|
374
|
+
|
375
|
+
#endif // WITH_DEPRECATED_FEATURES
|
327
376
|
|
328
377
|
/// Check if dimensions match
|
329
378
|
void sanity_check() const;
|
330
379
|
///@}
|
331
380
|
|
332
|
-
///
|
381
|
+
/// Reorder variables in a category
|
382
|
+
void reorder(const std::string& cat, const std::vector<std::string>& v);
|
383
|
+
|
384
|
+
#ifdef WITH_DEPRECATED_FEATURES
|
385
|
+
/// [DEPRECATED] Use set_variability, set_causality or set_category to change variable category
|
333
386
|
void clear_all(const std::string& v);
|
334
387
|
|
335
|
-
///
|
388
|
+
/// [DEPRECATED] Use set_variability, set_causality, set_category and/or reorder
|
336
389
|
void set_all(const std::string& v, const std::vector<std::string>& name);
|
337
390
|
|
338
|
-
/** @name Register an existing variable */
|
391
|
+
/** @name [DEPRECATED] Register an existing variable */
|
339
392
|
///@{
|
340
393
|
void register_t(const std::string& name);
|
341
394
|
void register_p(const std::string& name);
|
@@ -347,48 +400,44 @@ class CASADI_EXPORT DaeBuilder
|
|
347
400
|
void register_d(const std::string& name);
|
348
401
|
void register_w(const std::string& name);
|
349
402
|
void register_y(const std::string& name);
|
403
|
+
void register_e(const std::string& name);
|
350
404
|
///@}
|
351
405
|
|
352
|
-
|
353
|
-
|
354
|
-
///@{
|
355
|
-
void set_u(const std::vector<std::string>& name) { set_all("u", name);}
|
356
|
-
void set_x(const std::vector<std::string>& name) { set_all("x", name);}
|
357
|
-
void set_z(const std::vector<std::string>& name,
|
358
|
-
const std::vector<std::string>& alg = std::vector<std::string>());
|
359
|
-
void set_q(const std::vector<std::string>& name) { set_all("q", name);}
|
360
|
-
void set_y(const std::vector<std::string>& name) { set_all("y", name);}
|
361
|
-
///@}
|
362
|
-
#endif // WITH_DEPRECATED_FEATURES
|
363
|
-
|
364
|
-
/** @name Manipulation
|
365
|
-
* Reformulate the dynamic optimization problem.
|
366
|
-
*/
|
367
|
-
///@{
|
406
|
+
/// [DEPRECATED] Use eliminate("d")
|
407
|
+
void eliminate_d();
|
368
408
|
|
369
|
-
|
370
|
-
/// [DEPRECATED] Clear input variable: Replaced by clear_all
|
371
|
-
void clear_in(const std::string& v) { clear_all(v);}
|
372
|
-
#endif // WITH_DEPRECATED_FEATURES
|
373
|
-
|
374
|
-
/// Eliminate all dependent variables
|
409
|
+
/// [DEPRECATED] Use eliminate("w")
|
375
410
|
void eliminate_w();
|
376
411
|
|
377
|
-
///
|
378
|
-
void lift(bool lift_shared = true, bool lift_calls = true);
|
379
|
-
|
380
|
-
/// Eliminate quadrature states and turn them into ODE states
|
412
|
+
/// [DEPRECATED] Use eliminate("q")
|
381
413
|
void eliminate_quad();
|
382
414
|
|
383
|
-
///
|
415
|
+
/// [DEPRECATED] Use sort("d")
|
384
416
|
void sort_d();
|
385
417
|
|
386
|
-
///
|
418
|
+
/// [DEPRECATED] Use sort("w")
|
387
419
|
void sort_w();
|
388
420
|
|
389
|
-
///
|
421
|
+
/// [DEPRECATED] Use reorder("z", new_order)
|
390
422
|
void sort_z(const std::vector<std::string>& z_order);
|
391
423
|
|
424
|
+
#endif // WITH_DEPRECATED_FEATURES
|
425
|
+
|
426
|
+
/** @name Manipulation
|
427
|
+
* Reformulate the dynamic optimization problem.
|
428
|
+
*/
|
429
|
+
///@{
|
430
|
+
|
431
|
+
|
432
|
+
/// Eliminate all dependent parameters
|
433
|
+
void eliminate(const std::string& cat);
|
434
|
+
|
435
|
+
/// Sort dependent parameters
|
436
|
+
void sort(const std::string& cat);
|
437
|
+
|
438
|
+
/// Lift problem formulation by extracting shared subexpressions
|
439
|
+
void lift(bool lift_shared = true, bool lift_calls = true);
|
440
|
+
|
392
441
|
/// Prune unused controls
|
393
442
|
void prune(bool prune_p = true, bool prune_u = true);
|
394
443
|
|
@@ -433,7 +482,10 @@ class CASADI_EXPORT DaeBuilder
|
|
433
482
|
void parse_fmi(const std::string& filename) {load_fmi_description(filename); }
|
434
483
|
|
435
484
|
/// Does the FMU provide support for analytic derivatives
|
436
|
-
bool
|
485
|
+
bool provides_directional_derivatives() const;
|
486
|
+
|
487
|
+
/// Does the FMU provide support for analytic derivatives (FMI 2 naming)
|
488
|
+
bool provides_directional_derivative() const {return provides_directional_derivatives();}
|
437
489
|
|
438
490
|
/// Import problem description from FMI or XML
|
439
491
|
void load_fmi_description(const std::string& filename);
|
@@ -463,34 +515,60 @@ class CASADI_EXPORT DaeBuilder
|
|
463
515
|
const Dict& opts=Dict()) const;
|
464
516
|
///@}
|
465
517
|
|
466
|
-
/** \brief
|
518
|
+
/** \brief Create a function with standard integrator DAE signature
|
467
519
|
|
468
520
|
\param name Name assigned to the resulting function object
|
469
521
|
\param opts Optional settings
|
470
522
|
|
471
|
-
\identifier{
|
472
|
-
Function create(const std::string&
|
523
|
+
\identifier{2c0} */
|
524
|
+
Function create(const std::string& fname, const Dict& opts=Dict()) const;
|
525
|
+
|
526
|
+
/** \brief Create a function with standard integrator DAE signature, default naming
|
527
|
+
|
528
|
+
\identifier{2c1} */
|
529
|
+
Function create() const {return create(name() + "_dae");}
|
473
530
|
|
474
531
|
/// Construct a function for evaluating dependent parameters
|
475
532
|
Function dependent_fun(const std::string& fname,
|
476
533
|
const std::vector<std::string>& s_in,
|
477
534
|
const std::vector<std::string>& s_out) const;
|
478
535
|
|
536
|
+
/// Construct a function describing transition at a specific events
|
537
|
+
Function transition(const std::string& fname, casadi_int index) const;
|
538
|
+
|
539
|
+
/// Construct a function describing transition at any events
|
540
|
+
Function transition(const std::string& fname) const;
|
541
|
+
|
542
|
+
/// Construct an event transition function, default naming
|
543
|
+
Function transition() const {return transition(name() + "_transition");}
|
544
|
+
|
479
545
|
///@{
|
480
546
|
/// Get variable expression by name
|
481
547
|
MX var(const std::string& name) const;
|
482
548
|
MX operator()(const std::string& name) const {return var(name);}
|
483
549
|
///@}
|
484
550
|
|
485
|
-
/// Get the time derivative of
|
551
|
+
/// Get the time derivative of model variables
|
486
552
|
std::vector<std::string> der(const std::vector<std::string>& name) const;
|
487
553
|
|
488
554
|
///@{
|
489
|
-
///
|
490
|
-
MX
|
491
|
-
|
555
|
+
/// Differentiate an expression with respect to time
|
556
|
+
MX der(const MX& v) const;
|
557
|
+
MX der(const MX& v);
|
492
558
|
///@}
|
493
559
|
|
560
|
+
/// Get the pre-variables of model variables
|
561
|
+
std::vector<std::string> pre(const std::vector<std::string>& name) const;
|
562
|
+
|
563
|
+
/// Get the pre-expression given variable expression
|
564
|
+
MX pre(const MX& v) const;
|
565
|
+
|
566
|
+
/// Does a variable have a binding equation?
|
567
|
+
bool has_beq(const std::string& name) const;
|
568
|
+
|
569
|
+
/// Get the binding equation for a variable
|
570
|
+
MX beq(const std::string& name) const;
|
571
|
+
|
494
572
|
///@{
|
495
573
|
/// Get/set value reference
|
496
574
|
casadi_int value_reference(const std::string& name) const;
|
@@ -509,17 +587,53 @@ class CASADI_EXPORT DaeBuilder
|
|
509
587
|
void set_type(const std::string& name, const std::string& val);
|
510
588
|
///@}
|
511
589
|
|
512
|
-
|
513
|
-
/// Get/set the causality
|
590
|
+
/// Get the causality
|
514
591
|
std::string causality(const std::string& name) const;
|
592
|
+
|
593
|
+
/** \brief Set the causality, if permitted
|
594
|
+
|
595
|
+
The following changes are permitted:
|
596
|
+
* For controls 'u' (variability 'continuous', causality 'input'), free parameters 'p'
|
597
|
+
(variability 'tunable', causality 'parameter') and fixed parameters 'c' (variability
|
598
|
+
'fixed', causality 'parameter'), causality can only be changed indirectly, by updating
|
599
|
+
the variability
|
600
|
+
* Add or remove an output 'y' by setting the causality to 'output' or 'local',
|
601
|
+
respectively
|
602
|
+
|
603
|
+
No other changes are permitted.
|
604
|
+
|
605
|
+
\identifier{2c2} */
|
515
606
|
void set_causality(const std::string& name, const std::string& val);
|
516
|
-
///@}
|
517
607
|
|
518
|
-
|
519
|
-
/// Get/set the variability
|
608
|
+
/// Get the variability
|
520
609
|
std::string variability(const std::string& name) const;
|
610
|
+
|
611
|
+
/** \brief Set the variability, if permitted
|
612
|
+
|
613
|
+
For controls 'u' (variability 'continuous', causality 'input'), free parameters 'p'
|
614
|
+
(variability 'tunable', causality 'parameter') and fixed parameters 'c'
|
615
|
+
(variability 'fixed', causality 'parameter'), update variability in
|
616
|
+
order to change the category. Causality is updated accordingly.
|
617
|
+
|
618
|
+
Other changes are not permitted
|
619
|
+
|
620
|
+
\identifier{2c3} */
|
521
621
|
void set_variability(const std::string& name, const std::string& val);
|
522
|
-
|
622
|
+
|
623
|
+
/// Get the variable category
|
624
|
+
std::string category(const std::string& name) const;
|
625
|
+
|
626
|
+
/** \brief Set the variable category, if permitted
|
627
|
+
|
628
|
+
The following changes are permitted:
|
629
|
+
* Controls 'u' can be changed to/from tunable parameters 'p' or fixed parameters 'c'
|
630
|
+
* Differential states that do not appear in the right-hand-sides can be changed between
|
631
|
+
regular states 'x' and quadrature states 'q'
|
632
|
+
|
633
|
+
Other changes are not permitted. Causality and variability is updated accordingly.
|
634
|
+
|
635
|
+
\identifier{2c4} */
|
636
|
+
void set_category(const std::string& name, const std::string& val);
|
523
637
|
|
524
638
|
///@{
|
525
639
|
/// Get/set the initial property
|
@@ -545,12 +659,39 @@ class CASADI_EXPORT DaeBuilder
|
|
545
659
|
/// Get the dimensions of a variable
|
546
660
|
std::vector<casadi_int> dimension(const std::string& name) const;
|
547
661
|
|
662
|
+
/// Get the start time
|
663
|
+
double start_time() const;
|
664
|
+
|
665
|
+
/// Set the start time
|
666
|
+
void set_start_time(double val);
|
667
|
+
|
668
|
+
/// Get the stop time
|
669
|
+
double stop_time() const;
|
670
|
+
|
671
|
+
/// Set the stop time
|
672
|
+
void set_stop_time(double val);
|
673
|
+
|
674
|
+
/// Get the tolerance
|
675
|
+
double tolerance() const;
|
676
|
+
|
677
|
+
/// Set the tolerance
|
678
|
+
void set_tolerance(double val);
|
679
|
+
|
680
|
+
/// Get the step size
|
681
|
+
double step_size() const;
|
682
|
+
|
683
|
+
/// Set the step size
|
684
|
+
void set_step_size(double val);
|
685
|
+
|
548
686
|
// The following routines are not needed in MATLAB and would cause ambiguity
|
549
687
|
// Note that a multirow strings can be interpreted as a vector of strings
|
550
688
|
#if !(defined(SWIG) && defined(SWIGMATLAB))
|
551
|
-
/// Get the time derivative of
|
689
|
+
/// Get the time derivative of model variables, single variable
|
552
690
|
std::string der(const std::string& name) const;
|
553
691
|
|
692
|
+
/// Get the pre-variables of model variables
|
693
|
+
std::string pre(const std::string& name) const;
|
694
|
+
|
554
695
|
/// Get an attribute, single variable
|
555
696
|
double attribute(const std::string& a, const std::string& name) const;
|
556
697
|
|
@@ -576,11 +717,14 @@ class CASADI_EXPORT DaeBuilder
|
|
576
717
|
void set_nominal(const std::string& name, double val);
|
577
718
|
|
578
719
|
/// Get the start attribute, single variable
|
579
|
-
double start(const std::string& name) const;
|
720
|
+
std::vector<double> start(const std::string& name) const;
|
580
721
|
|
581
722
|
/// Set the start attribute, single variable
|
582
723
|
void set_start(const std::string& name, double val);
|
583
724
|
|
725
|
+
/// Set the start attribute, vector argument
|
726
|
+
void set_start(const std::string& name, const std::vector<double>& val);
|
727
|
+
|
584
728
|
// Clear all set values
|
585
729
|
void reset();
|
586
730
|
|
@@ -635,29 +779,40 @@ class CASADI_EXPORT DaeBuilder
|
|
635
779
|
/// Evaluate the values for a set of variables at the initial time
|
636
780
|
std::vector<GenericType> get(const std::vector<std::string>& name) const;
|
637
781
|
|
638
|
-
///
|
782
|
+
/// Check if a particular variable exists
|
783
|
+
bool has(const std::string& name) const;
|
784
|
+
|
785
|
+
/// Get a list of all variables
|
786
|
+
std::vector<std::string> all() const;
|
787
|
+
|
788
|
+
/// Get a list of all variables of a particular category
|
789
|
+
std::vector<std::string> all(const std::string& cat) const;
|
790
|
+
|
791
|
+
#ifdef WITH_DEPRECATED_FEATURES
|
792
|
+
/// [DEPRECATED] Use add
|
639
793
|
MX add_variable(const std::string& name, casadi_int n=1);
|
640
794
|
|
641
|
-
///
|
795
|
+
/// [DEPRECATED] Use add
|
642
796
|
MX add_variable(const std::string& name, const Sparsity& sp);
|
643
797
|
|
644
798
|
/// Add a new variable from symbolic expressions
|
645
799
|
void add_variable(const MX& new_v);
|
646
800
|
|
647
|
-
///
|
801
|
+
/// [DEPRECATED] Use add
|
648
802
|
size_t add_variable_new(const std::string& name, casadi_int n=1);
|
649
803
|
|
650
|
-
///
|
804
|
+
/// [DEPRECATED] Use add
|
651
805
|
size_t add_variable_new(const std::string& name, const Sparsity& sp);
|
652
806
|
|
653
|
-
///
|
807
|
+
/// [DEPRECATED] Use add
|
654
808
|
size_t add_variable_new(const MX& new_v);
|
655
809
|
|
656
|
-
///
|
657
|
-
bool has_variable(const std::string& name) const;
|
810
|
+
/// [DEPRECATED] Ranamed "has"
|
811
|
+
bool has_variable(const std::string& name) const {return has(name);}
|
658
812
|
|
659
813
|
/// Get a list of all variables
|
660
|
-
std::vector<std::string> all_variables() const;
|
814
|
+
std::vector<std::string> all_variables() const {return all();}
|
815
|
+
#endif // WITH_DEPRECATED_FEATURES
|
661
816
|
|
662
817
|
/// Get the (cached) oracle, SX or MX
|
663
818
|
Function oracle(bool sx = false, bool elim_w = false, bool lifted_calls = false) const;
|
@@ -669,21 +824,30 @@ class CASADI_EXPORT DaeBuilder
|
|
669
824
|
const std::vector<std::string>& inames) const;
|
670
825
|
|
671
826
|
#ifndef SWIG
|
672
|
-
|
827
|
+
#ifdef WITH_DEPRECATED_FEATURES
|
828
|
+
/// [DEPRECATED] Use add
|
673
829
|
Variable& new_variable(const std::string& name, casadi_int numel = 1);
|
674
830
|
|
675
831
|
///@{
|
676
|
-
/// Access
|
832
|
+
/// [DEPRECATED] Access to internal class and corresponding indexing removed
|
677
833
|
Variable& variable(const std::string& name);
|
678
834
|
const Variable& variable(const std::string& name) const;
|
835
|
+
Variable& variable(size_t ind);
|
836
|
+
const Variable& variable(size_t ind) const;
|
837
|
+
size_t find(const std::string& name) const;
|
838
|
+
std::vector<size_t> find(const std::vector<std::string>& name) const;
|
839
|
+
const std::string& name(size_t ind) const;
|
840
|
+
std::vector<std::string> name(const std::vector<size_t>& ind) const;
|
679
841
|
///@}
|
680
842
|
|
681
843
|
///@{
|
682
|
-
///
|
683
|
-
|
684
|
-
const
|
844
|
+
/// [DEPRECATED] Use string name, not internal index to access variables
|
845
|
+
const MX& var(size_t ind) const;
|
846
|
+
std::vector<MX> var(const std::vector<size_t>& ind) const;
|
685
847
|
///@}
|
686
848
|
|
849
|
+
#endif // WITH_DEPRECATED_FEATURES
|
850
|
+
|
687
851
|
/// Access a member function or object
|
688
852
|
const DaeBuilderInternal* operator->() const;
|
689
853
|
|
@@ -693,28 +857,6 @@ class CASADI_EXPORT DaeBuilder
|
|
693
857
|
/// Check if a particular cast is allowed
|
694
858
|
static bool test_cast(const SharedObjectInternal* ptr);
|
695
859
|
|
696
|
-
/// Get single variable expression by index
|
697
|
-
const MX& var(size_t ind) const;
|
698
|
-
|
699
|
-
/// Get variable expressions by index
|
700
|
-
std::vector<MX> var(const std::vector<size_t>& ind) const;
|
701
|
-
|
702
|
-
/// Get index of variable
|
703
|
-
size_t find(const std::string& name) const;
|
704
|
-
|
705
|
-
/// Get indices of variable
|
706
|
-
std::vector<size_t> find(const std::vector<std::string>& name) const;
|
707
|
-
|
708
|
-
/** \brief Get variable name by index
|
709
|
-
|
710
|
-
\identifier{6h} */
|
711
|
-
const std::string& name(size_t ind) const;
|
712
|
-
|
713
|
-
/** \brief Get variable names by indices
|
714
|
-
|
715
|
-
\identifier{6i} */
|
716
|
-
std::vector<std::string> name(const std::vector<size_t>& ind) const;
|
717
|
-
|
718
860
|
#endif // SWIG
|
719
861
|
};
|
720
862
|
|
@@ -65,6 +65,9 @@ namespace casadi {
|
|
65
65
|
std::vector<DM> DM::
|
66
66
|
cse(const std::vector<DM>& e);
|
67
67
|
|
68
|
+
template<>
|
69
|
+
std::vector<double> DM::call(const Function& f, const std::vector<double>& dep);
|
70
|
+
|
68
71
|
template<> void DM::export_code(const std::string& lang,
|
69
72
|
std::ostream &stream, const Dict& options) const;
|
70
73
|
|