-
-
Notifications
You must be signed in to change notification settings - Fork 214
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
MethodError: no method matching RodasTableau... #2524
Comments
Your MWE isn't runnable. |
The following sample produces the error. using DifferentialEquations |
using OrdinaryDiffEq
function ODE(du, u, t, R, K)
end
params = [1. 0.91758707304098; 1.48439909482661 1.]
u0 = [0.1, 0.1]
tspan = (1.0, 31.0)
R = [0.443280390004304303, 1.172917082211452]
K = [13.470600276901400604, 12.52980757005]
ODE_ = (du, u, params, t) -> ODE(du, u, t, R, K)
odeProblem = ODEProblem(ODE_, u0, tspan, params)
SwitchAlg = OrdinaryDiffEq.AutoVern8(OrdinaryDiffEq.Rodas5(), nonstifftol = 11 / 10)
Solution = solve(odeProblem, SwitchAlg, saveat = 1, abstol = 1.e-12, reltol = 1.e-6, maxiters = 100) julia> Solution = solve(odeProblem, SwitchAlg, saveat = 1, abstol = 1.e-12, reltol = 1.e-6, maxiters = 100)
retcode: Success
Interpolation: 1st order linear
t: 31-element Vector{Float64}:
1.0
2.0
3.0
4.0
⋮
28.0
29.0
30.0
31.0
u: 31-element Vector{Vector{Float64}}:
[0.1, 0.1]
[0.1, 0.1]
[0.1, 0.1]
[0.1, 0.1]
⋮
[0.1, 0.1]
[0.1, 0.1]
[0.1, 0.1]
[0.1, 0.1]
Works fine when I copy pasted it (with a small correction to ODE). Your error message seemed to require BigFloat time or state? Your MWE here only has Float64s though, so I don't see how this MWE is supposed to cover or reproduce that error anyways? |
Sorry for the mistake, you are right, I am using BigFloat. So with |
One line typo that needs a better test when mixing different precisions. Fixed in #2525, should be released in about a day. |
Describe the bug 🐞
Since a few days "Solution= DifferentialEquations.solve(odeProblem, OrdinaryDiffEq.AutoVern8(OrdinaryDiffEq.Rodas5(), nonstifftol = 11 / 10), saveat = 1, abstol=DEAbsTol, reltol=DERelTol, maxiters=DEMaxIter)" sometimes but not always stops and shows the error
ERROR: MethodError: no method matching OrdinaryDiffEqRosenbrock.RodasTableau(::Matrix{…}, ::Matrix{…}, ::Float64, ::Vector{…}, ::Vector{…}, ::Matrix{…})
The type
OrdinaryDiffEqRosenbrock.RodasTableau
exists, but no method is defined for this combination of argument types when trying to construct it.Closest candidates are:
OrdinaryDiffEqRosenbrock.RodasTableau(::Matrix{T}, ::Matrix{T}, ::T, ::Vector{T2}, ::Vector{T}, ::Matrix{T}) where {T, T2}
Minimal Reproducible Example 👇
The error sometimes occurs with
Error & Stacktrace⚠️
Environment (please complete the following information):
using Pkg; Pkg.status()
using Pkg; Pkg.status(; mode = PKGMODE_MANIFEST)
versioninfo()
Additional context
The text was updated successfully, but these errors were encountered: