diff --git a/Project.toml b/Project.toml index b97c8cc8f..3d07b89ee 100644 --- a/Project.toml +++ b/Project.toml @@ -27,14 +27,14 @@ JuMPExt = "JuMP" FastBroadcast = "0.3.5" JuMP = "1.28" LinearAlgebra = "1" -LinearSolve = "3.7.1" +LinearSolve = "3.54" MuladdMacro = "0.2.4" -OrdinaryDiffEqCore = "1.21, 2" +OrdinaryDiffEqCore = "3" RecipesBase = "1.3.4" Reexport = "1.2.2" -SciMLBase = "2.78" +SciMLBase = "2.128" SparseArrays = "1" StaticArrays = "1.9.7" Statistics = "1" -SymbolicIndexingInterface = "0.3.36" +SymbolicIndexingInterface = "0.3.43" julia = "1.10" diff --git a/src/mpdec.jl b/src/mpdec.jl index b6f46bbf4..bda3fc247 100644 --- a/src/mpdec.jl +++ b/src/mpdec.jl @@ -242,7 +242,8 @@ end function alg_cache(alg::MPDeC, u, rate_prototype, ::Type{uEltypeNoUnits}, ::Type{uBottomEltypeNoUnits}, ::Type{tTypeNoUnits}, uprev, uprev2, f, t, dt, reltol, p, calck, - ::Val{false}) where {uEltypeNoUnits, uBottomEltypeNoUnits, tTypeNoUnits} + ::Val{false}, + verbose) where {uEltypeNoUnits, uBottomEltypeNoUnits, tTypeNoUnits} if !(f isa PDSFunction || f isa ConservativePDSFunction) throw(ArgumentError("MPDeC can only be applied to production-destruction systems")) end @@ -641,7 +642,8 @@ get_tmp_cache(integrator, ::MPDeC, cache::OrdinaryDiffEqMutableCache) = (cache. function alg_cache(alg::MPDeC, u, rate_prototype, ::Type{uEltypeNoUnits}, ::Type{uBottomEltypeNoUnits}, ::Type{tTypeNoUnits}, uprev, uprev2, f, t, dt, reltol, p, calck, - ::Val{true}) where {uEltypeNoUnits, uBottomEltypeNoUnits, tTypeNoUnits} + ::Val{true}, + verbose) where {uEltypeNoUnits, uBottomEltypeNoUnits, tTypeNoUnits} nodes, theta = get_constant_parameters(alg, uEltypeNoUnits) tab = MPDeCConstantCache(alg.K, alg.M, nodes, theta, alg.small_constant_function(uEltypeNoUnits), Val(alg.M)) diff --git a/src/mprk.jl b/src/mprk.jl index 856da30d4..1b7e602b5 100644 --- a/src/mprk.jl +++ b/src/mprk.jl @@ -454,7 +454,8 @@ end function alg_cache(alg::MPE, u, rate_prototype, ::Type{uEltypeNoUnits}, ::Type{uBottomEltypeNoUnits}, ::Type{tTypeNoUnits}, uprev, uprev2, f, t, dt, reltol, p, calck, - ::Val{false}) where {uEltypeNoUnits, uBottomEltypeNoUnits, tTypeNoUnits} + ::Val{false}, + verbose) where {uEltypeNoUnits, uBottomEltypeNoUnits, tTypeNoUnits} if !(f isa PDSFunction || f isa ConservativePDSFunction) throw(ArgumentError("MPE can only be applied to production-destruction systems")) end @@ -503,7 +504,8 @@ get_tmp_cache(integrator, ::MPE, cache::OrdinaryDiffEqMutableCache) = (cache.σ, function alg_cache(alg::MPE, u, rate_prototype, ::Type{uEltypeNoUnits}, ::Type{uBottomEltypeNoUnits}, ::Type{tTypeNoUnits}, uprev, uprev2, f, t, dt, reltol, p, calck, - ::Val{true}) where {uEltypeNoUnits, uBottomEltypeNoUnits, tTypeNoUnits} + ::Val{true}, + verbose) where {uEltypeNoUnits, uBottomEltypeNoUnits, tTypeNoUnits} P = p_prototype(u, f) σ = zero(u) tab = MPEConstantCache(alg.small_constant_function(uEltypeNoUnits)) @@ -679,7 +681,8 @@ end function alg_cache(alg::MPRK22, u, rate_prototype, ::Type{uEltypeNoUnits}, ::Type{uBottomEltypeNoUnits}, ::Type{tTypeNoUnits}, uprev, uprev2, f, t, dt, reltol, p, calck, - ::Val{false}) where {uEltypeNoUnits, uBottomEltypeNoUnits, tTypeNoUnits} + ::Val{false}, + verbose) where {uEltypeNoUnits, uBottomEltypeNoUnits, tTypeNoUnits} if !(f isa PDSFunction || f isa ConservativePDSFunction) throw(ArgumentError("MPRK22 can only be applied to production-destruction systems")) end @@ -761,7 +764,8 @@ get_tmp_cache(integrator, ::MPRK22, cache::OrdinaryDiffEqMutableCache) = (cache. function alg_cache(alg::MPRK22, u, rate_prototype, ::Type{uEltypeNoUnits}, ::Type{uBottomEltypeNoUnits}, ::Type{tTypeNoUnits}, uprev, uprev2, f, t, dt, reltol, p, calck, - ::Val{true}) where {uEltypeNoUnits, uBottomEltypeNoUnits, tTypeNoUnits} + ::Val{true}, + verbose) where {uEltypeNoUnits, uBottomEltypeNoUnits, tTypeNoUnits} a21, b1, b2 = get_constant_parameters(alg) tab = MPRK22ConstantCache(a21, b1, b2, alg.small_constant_function(uEltypeNoUnits)) tmp = zero(u) @@ -1121,7 +1125,8 @@ end function alg_cache(alg::Union{MPRK43I, MPRK43II}, u, rate_prototype, ::Type{uEltypeNoUnits}, ::Type{uBottomEltypeNoUnits}, ::Type{tTypeNoUnits}, uprev, uprev2, f, t, dt, reltol, p, calck, - ::Val{false}) where {uEltypeNoUnits, uBottomEltypeNoUnits, tTypeNoUnits} + ::Val{false}, + verbose) where {uEltypeNoUnits, uBottomEltypeNoUnits, tTypeNoUnits} if !(f isa PDSFunction || f isa ConservativePDSFunction) throw(ArgumentError("MPRK43 can only be applied to production-destruction systems")) end @@ -1230,7 +1235,8 @@ end function alg_cache(alg::Union{MPRK43I, MPRK43II}, u, rate_prototype, ::Type{uEltypeNoUnits}, ::Type{uBottomEltypeNoUnits}, ::Type{tTypeNoUnits}, uprev, uprev2, f, t, dt, reltol, p, calck, - ::Val{true}) where {uEltypeNoUnits, uBottomEltypeNoUnits, tTypeNoUnits} + ::Val{true}, + verbose) where {uEltypeNoUnits, uBottomEltypeNoUnits, tTypeNoUnits} a21, a31, a32, b1, b2, b3, c2, c3, beta1, beta2, q1, q2 = get_constant_parameters(alg) tab = MPRK43ConstantCache(a21, a31, a32, b1, b2, b3, c2, c3, beta1, beta2, q1, q2, diff --git a/src/sspmprk.jl b/src/sspmprk.jl index 5b615257a..3cff589f9 100644 --- a/src/sspmprk.jl +++ b/src/sspmprk.jl @@ -106,7 +106,8 @@ end function alg_cache(alg::SSPMPRK22, u, rate_prototype, ::Type{uEltypeNoUnits}, ::Type{uBottomEltypeNoUnits}, ::Type{tTypeNoUnits}, uprev, uprev2, f, t, dt, reltol, p, calck, - ::Val{false}) where {uEltypeNoUnits, uBottomEltypeNoUnits, tTypeNoUnits} + ::Val{false}, + verbose) where {uEltypeNoUnits, uBottomEltypeNoUnits, tTypeNoUnits} if !(f isa PDSFunction || f isa ConservativePDSFunction) throw(ArgumentError("SSPMPRK22 can only be applied to production-destruction systems")) end @@ -199,7 +200,8 @@ get_tmp_cache(integrator, ::SSPMPRK22, cache::OrdinaryDiffEqMutableCache) = (cac function alg_cache(alg::SSPMPRK22, u, rate_prototype, ::Type{uEltypeNoUnits}, ::Type{uBottomEltypeNoUnits}, ::Type{tTypeNoUnits}, uprev, uprev2, f, t, dt, reltol, p, calck, - ::Val{true}) where {uEltypeNoUnits, uBottomEltypeNoUnits, tTypeNoUnits} + ::Val{true}, + verbose) where {uEltypeNoUnits, uBottomEltypeNoUnits, tTypeNoUnits} a21, a10, a20, b10, b20, b21, s, τ = get_constant_parameters(alg) tab = SSPMPRK22ConstantCache(a21, a10, a20, b10, b20, b21, s, τ, alg.small_constant_function(uEltypeNoUnits)) @@ -491,7 +493,8 @@ end function alg_cache(alg::SSPMPRK43, u, rate_prototype, ::Type{uEltypeNoUnits}, ::Type{uBottomEltypeNoUnits}, ::Type{tTypeNoUnits}, uprev, uprev2, f, t, dt, reltol, p, calck, - ::Val{false}) where {uEltypeNoUnits, uBottomEltypeNoUnits, tTypeNoUnits} + ::Val{false}, + verbose) where {uEltypeNoUnits, uBottomEltypeNoUnits, tTypeNoUnits} if !(f isa PDSFunction || f isa ConservativePDSFunction) throw(ArgumentError("SSPMPRK43 can only be applied to production-destruction systems")) end @@ -611,7 +614,8 @@ get_tmp_cache(integrator, ::SSPMPRK43, cache::OrdinaryDiffEqMutableCache) = (cac function alg_cache(alg::SSPMPRK43, u, rate_prototype, ::Type{uEltypeNoUnits}, ::Type{uBottomEltypeNoUnits}, ::Type{tTypeNoUnits}, uprev, uprev2, f, t, dt, reltol, p, calck, - ::Val{true}) where {uEltypeNoUnits, uBottomEltypeNoUnits, tTypeNoUnits} + ::Val{true}, + verbose) where {uEltypeNoUnits, uBottomEltypeNoUnits, tTypeNoUnits} n1, n2, z, η1, η2, η3, η4, η5, η6, s, α10, α20, α21, α30, α31, α32, β10, β20, β21, β30, β31, β32, c3 = get_constant_parameters(alg) tab = SSPMPRK43ConstantCache(n1, n2, z, η1, η2, η3, η4, η5, η6, s, α10, α20, α21, α30, α31, α32, diff --git a/test/Project.toml b/test/Project.toml index a4c714f20..00d623421 100644 --- a/test/Project.toml +++ b/test/Project.toml @@ -22,22 +22,22 @@ Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40" Unitful = "1986cc42-f94f-5a68-af5c-568840ba703d" [compat] -ADTypes = "1.14" +ADTypes = "1.16" Aqua = "0.8" Clarabel = "0.11" DoubleFloats = "1.4.3" ExplicitImports = "1.0.1" JuMP = "1.28" LinearAlgebra = "1" -LinearSolve = "3.7.1" -OrdinaryDiffEqLowOrderRK = "1.2" -OrdinaryDiffEqRosenbrock = "1.9" -OrdinaryDiffEqSDIRK = "1.3" -OrdinaryDiffEqTsit5 = "1.1" -OrdinaryDiffEqVerner = "1.1" -Plots = "1.25.11" +LinearSolve = "3.54" +OrdinaryDiffEqLowOrderRK = "1.10" +OrdinaryDiffEqRosenbrock = "1.22" +OrdinaryDiffEqSDIRK = "1.11" +OrdinaryDiffEqTsit5 = "1.9" +OrdinaryDiffEqVerner = "1.10" +Plots = "1.33" RecipesBase = "1.3.4" -RecursiveFactorization = "0.2.23" +RecursiveFactorization = "0.2.26" SparseArrays = "1" StaticArrays = "1.9.7" Statistics = "1"