SciML / diffeqpy

Solving differential equations in Python using DifferentialEquations.jl and the SciML Scientific Machine Learning organization
MIT License
531 stars 39 forks source link

Error when using solvers other than Tsit5 #94

Closed GrandadsJumper closed 3 years ago

GrandadsJumper commented 3 years ago

Problem building and calling solver;

        from diffeqpy import ode
        prob = ode.ODEProblem(self.ODE_function, y0, t0, tf)
        solution = ode.solve(prob, ode.lsoda(), saveat= value, abstol=atol, reltol=rtol)

Error that occurs for most solvers including lsoda (above), except Tsit5 (runs perfectly then):

Traceback (most recent call last): File "", line 1, in File "C:\Program Files\JetBrains\PyCharm Community Edition 2021.1.1\plugins\python-ce\helpers\pydev_pydev_bundle\pydev_umd.py", line 197, in runfile pydev_imports.execfile(filename, global_vars, local_vars) # execute the script File "C:\Program Files\JetBrains\PyCharm Community Edition 2021.1.1\plugins\python-ce\helpers\pydev_pydev_imps_pydev_execfile.py", line 18, in execfile exec(compile(contents+"\n", file, 'exec'), glob, loc) File "C:/Users/Kiera/Documents/GitHub/GenericCompartmentModelling/Simulate.py", line 1222, in Solution() File "C:/Users/Kiera/Documents/GitHub/GenericCompartmentModelling/Simulate.py", line 184, in init self.sol = self.run() File "C:/Users/Kiera/Documents/GitHub/GenericCompartmentModelling/Simulate.py", line 1024, in run solution = ode.solve(prob, ode.Rodas5(), saveat= value, abstol=self.numericalsolversettings.atol, reltol=self.numericalsolversettings.rtol) RuntimeError: <PyCall.jlwrap (in a Julia function called from Python) JULIA: MethodError: no method matching Float64(::ForwardDiff.Dual{ForwardDiff.Tag{SciMLBase.TimeDerivativeWrapper{SciMLBase.ODEFunction{false, PyObject, LinearAlgebra.UniformScaling{Bool}, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, typeof(SciMLBase.DEFAULT_OBSERVED), Nothing}, Vector{Float64}, SciMLBase.NullParameters}, Float64}, Float64, 1}) Closest candidates are: (::Type{T})(::Real, !Matched::RoundingMode) where T<:AbstractFloat at rounding.jl:200 (::Type{T})(::T) where T<:Number at boot.jl:760 (::Type{T})(!Matched::AbstractChar) where T<:Union{AbstractChar, Number} at char.jl:50 ... Stacktrace: [1] convert(#unused#::Type{Float64}, x::ForwardDiff.Dual{ForwardDiff.Tag{SciMLBase.TimeDerivativeWrapper{SciMLBase.ODEFunction{false, PyObject, LinearAlgebra.UniformScaling{Bool}, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, typeof(SciMLBase.DEFAULT_OBSERVED), Nothing}, Vector{Float64}, SciMLBase.NullParameters}, Float64}, Float64, 1}) @ Base .\number.jl:7 [2] cconvert(T::Type, x::ForwardDiff.Dual{ForwardDiff.Tag{SciMLBase.TimeDerivativeWrapper{SciMLBase.ODEFunction{false, PyObject, LinearAlgebra.UniformScaling{Bool}, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, typeof(SciMLBase.DEFAULT_OBSERVED), Nothing}, Vector{Float64}, SciMLBase.NullParameters}, Float64}, Float64, 1}) @ Base .\essentials.jl:396 [3] macro expansion @ C:\Users\Kiera.julia\packages\PyCall\BD546\src\exception.jl:95 [inlined] [4] PyObject(r::ForwardDiff.Dual{ForwardDiff.Tag{SciMLBase.TimeDerivativeWrapper{SciMLBase.ODEFunction{false, PyObject, LinearAlgebra.UniformScaling{Bool}, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, typeof(SciMLBase.DEFAULT_OBSERVED), Nothing}, Vector{Float64}, SciMLBase.NullParameters}, Float64}, Float64, 1}) @ PyCall C:\Users\Kiera.julia\packages\PyCall\BD546\src\conversions.jl:23 [5] _pycall!(ret::PyObject, o::PyObject, args::Tuple{Vector{Float64}, SciMLBase.NullParameters, ForwardDiff.Dual{ForwardDiff.Tag{SciMLBase.TimeDerivativeWrapper{SciMLBase.ODEFunction{false, PyObject, LinearAlgebra.UniformScaling{Bool}, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, typeof(SciMLBase.DEFAULT_OBSERVED), Nothing}, Vector{Float64}, SciMLBase.NullParameters}, Float64}, Float64, 1}}, nargs::Int64, kw::Ptr{Nothing}) @ PyCall C:\Users\Kiera.julia\packages\PyCall\BD546\src\pyfncall.jl:24 [6] pycall! @ C:\Users\Kiera.julia\packages\PyCall\BD546\src\pyfncall.jl:11 [inlined] [7] ##114 @ C:\Users\Kiera.julia\packages\PyCall\BD546\src\pyfncall.jl:86 [inlined] [8] PyObject @ C:\Users\Kiera.julia\packages\PyCall\BD546\src\pyfncall.jl:86 [inlined] [9] ODEFunction @ C:\Users\Kiera.julia\packages\SciMLBase\DXiE6\src\scimlfunctions.jl:334 [inlined] [10] TimeDerivativeWrapper @ C:\Users\Kiera.julia\packages\SciMLBase\DXiE6\src\function_wrappers.jl:23 [inlined] [11] derivative(f::SciMLBase.TimeDerivativeWrapper{SciMLBase.ODEFunction{false, PyObject, LinearAlgebra.UniformScaling{Bool}, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, typeof(SciMLBase.DEFAULT_OBSERVED), Nothing}, Vector{Float64}, SciMLBase.NullParameters}, x::Float64) @ ForwardDiff C:\Users\Kiera.julia\packages\ForwardDiff\QOqCN\src\derivative.jl:14 [12] derivative(f::Function, x::Float64, integrator::OrdinaryDiffEq.ODEIntegrator{OrdinaryDiffEq.Rodas5{0, true, DiffEqBase.DefaultLinSolve, DataType}, false, Vector{Float64}, Nothing, Float64, SciMLBase.NullParameters, Float64, Float64, Float64, Float64, Vector{Vector{Float64}}, SciMLBase.ODESolution{Float64, 2, Vector{Vector{Float64}}, Nothing, Nothing, Vector{Float64}, Vector{Vector{Vector{Float64}}}, SciMLBase.ODEProblem{Vector{Float64}, Tuple{Float64, Float64}, false, SciMLBase.NullParameters, SciMLBase.ODEFunction{false, PyObject, LinearAlgebra.UniformScaling{Bool}, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, typeof(SciMLBase.DEFAULT_OBSERVED), Nothing}, Base.Iterators.Pairs{Union{}, Union{}, Tuple{}, NamedTuple{(), Tuple{}}}, SciMLBase.StandardODEProblem}, OrdinaryDiffEq.Rodas5{0, true, DiffEqBase.DefaultLinSolve, DataType}, OrdinaryDiffEq.InterpolationData{SciMLBase.ODEFunction{false, PyObject, LinearAlgebra.UniformScaling{Bool}, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, typeof(SciMLBase.DEFAULT_OBSERVED), Nothing}, Vector{Vector{Float64}}, Vector{Float64}, Vector{Vector{Vector{Float64}}}, OrdinaryDiffEq.Rosenbrock5ConstantCache{SciMLBase.TimeDerivativeWrapper{SciMLBase.ODEFunction{false, PyObject, LinearAlgebra.UniformScaling{Bool}, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, typeof(SciMLBase.DEFAULT_OBSERVED), Nothing}, Vector{Float64}, SciMLBase.NullParameters}, SciMLBase.UDerivativeWrapper{SciMLBase.ODEFunction{false, PyObject, LinearAlgebra.UniformScaling{Bool}, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, typeof(SciMLBase.DEFAULT_OBSERVED), Nothing}, Float64, SciMLBase.NullParameters}, OrdinaryDiffEq.Rodas5Tableau{Float64, Float64}, Matrix{Float64}, LinearAlgebra.LU{Float64, Matrix{Float64}}, DiffEqBase.DefaultLinSolve}}, DiffEqBase.DEStats}, SciMLBase.ODEFunction{false, PyObject, LinearAlgebra.UniformScaling{Bool}, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, typeof(SciMLBase.DEFAULT_OBSERVED), Nothing}, OrdinaryDiffEq.Rosenbrock5ConstantCache{SciMLBase.TimeDerivativeWrapper{SciMLBase.ODEFunction{false, PyObject, LinearAlgebra.UniformScaling{Bool}, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, typeof(SciMLBase.DEFAULT_OBSERVED), Nothing}, Vector{Float64}, SciMLBase.NullParameters}, SciMLBase.UDerivativeWrapper{SciMLBase.ODEFunction{false, PyObject, LinearAlgebra.UniformScaling{Bool}, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, typeof(SciMLBase.DEFAULT_OBSERVED), Nothing}, Float64, SciMLBase.NullParameters}, OrdinaryDiffEq.Rodas5Tableau{Float64, Float64}, Matrix{Float64}, LinearAlgebra.LU{Float64, Matrix{Float64}}, DiffEqBase.DefaultLinSolve}, OrdinaryDiffEq.DEOptions{Float64, Float64, Float64, Float64, OrdinaryDiffEq.PIController{Rational{Int64}}, typeof(DiffEqBase.ODE_DEFAULT_NORM), typeof(LinearAlgebra.opnorm), Nothing, DiffEqBase.CallbackSet{Tuple{}, Tuple{}}, typeof(DiffEqBase.ODE_DEFAULT_ISOUTOFDOMAIN), typeof(DiffEqBase.ODE_DEFAULT_PROG_MESSAGE), typeof(DiffEqBase.ODE_DEFAULT_UNSTABLE_CHECK), DataStructures.BinaryMinHeap{Float64}, DataStructures.BinaryMinHeap{Float64}, Nothing, Nothing, Int64, Tuple{}, Float64, Tuple{}}, Vector{Float64}, Float64, Nothing, OrdinaryDiffEq.DefaultInit}) @ OrdinaryDiffEq C:\Users\Kiera.julia\packages\OrdinaryDiffEq\vNuN5\src\derivative_wrappers.jl:30 [13] calc_tderivative @ C:\Users\Kiera.julia\packages\OrdinaryDiffEq\vNuN5\src\derivative_utils.jl:33 [inlined] [14] perform_step!(integrator::OrdinaryDiffEq.ODEIntegrator{OrdinaryDiffEq.Rodas5{0, true, DiffEqBase.DefaultLinSolve, DataType}, false, Vector{Float64}, Nothing, Float64, SciMLBase.NullParameters, Float64, Float64, Float64, Float64, Vector{Vector{Float64}}, SciMLBase.ODESolution{Float64, 2, Vector{Vector{Float64}}, Nothing, Nothing, Vector{Float64}, Vector{Vector{Vector{Float64}}}, SciMLBase.ODEProblem{Vector{Float64}, Tuple{Float64, Float64}, false, SciMLBase.NullParameters, SciMLBase.ODEFunction{false, PyObject, LinearAlgebra.UniformScaling{Bool}, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, typeof(SciMLBase.DEFAULT_OBSERVED), Nothing}, Base.Iterators.Pairs{Union{}, Union{}, Tuple{}, NamedTuple{(), Tuple{}}}, SciMLBase.StandardODEProblem}, OrdinaryDiffEq.Rodas5{0, true, DiffEqBase.DefaultLinSolve, DataType}, OrdinaryDiffEq.InterpolationData{SciMLBase.ODEFunction{false, PyObject, LinearAlgebra.UniformScaling{Bool}, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, typeof(SciMLBase.DEFAULT_OBSERVED), Nothing}, Vector{Vector{Float64}}, Vector{Float64}, Vector{Vector{Vector{Float64}}}, OrdinaryDiffEq.Rosenbrock5ConstantCache{SciMLBase.TimeDerivativeWrapper{SciMLBase.ODEFunction{false, PyObject, LinearAlgebra.UniformScaling{Bool}, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, typeof(SciMLBase.DEFAULT_OBSERVED), Nothing}, Vector{Float64}, SciMLBase.NullParameters}, SciMLBase.UDerivativeWrapper{SciMLBase.ODEFunction{false, PyObject, LinearAlgebra.UniformScaling{Bool}, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, typeof(SciMLBase.DEFAULT_OBSERVED), Nothing}, Float64, SciMLBase.NullParameters}, OrdinaryDiffEq.Rodas5Tableau{Float64, Float64}, Matrix{Float64}, LinearAlgebra.LU{Float64, Matrix{Float64}}, DiffEqBase.DefaultLinSolve}}, DiffEqBase.DEStats}, SciMLBase.ODEFunction{false, PyObject, LinearAlgebra.UniformScaling{Bool}, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, typeof(SciMLBase.DEFAULT_OBSERVED), Nothing}, OrdinaryDiffEq.Rosenbrock5ConstantCache{SciMLBase.TimeDerivativeWrapper{SciMLBase.ODEFunction{false, PyObject, LinearAlgebra.UniformScaling{Bool}, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, typeof(SciMLBase.DEFAULT_OBSERVED), Nothing}, Vector{Float64}, SciMLBase.NullParameters}, SciMLBase.UDerivativeWrapper{SciMLBase.ODEFunction{false, PyObject, LinearAlgebra.UniformScaling{Bool}, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, typeof(SciMLBase.DEFAULT_OBSERVED), Nothing}, Float64, SciMLBase.NullParameters}, OrdinaryDiffEq.Rodas5Tableau{Float64, Float64}, Matrix{Float64}, LinearAlgebra.LU{Float64, Matrix{Float64}}, DiffEqBase.DefaultLinSolve}, OrdinaryDiffEq.DEOptions{Float64, Float64, Float64, Float64, OrdinaryDiffEq.PIController{Rational{Int64}}, typeof(DiffEqBase.ODE_DEFAULT_NORM), typeof(LinearAlgebra.opnorm), Nothing, DiffEqBase.CallbackSet{Tuple{}, Tuple{}}, typeof(DiffEqBase.ODE_DEFAULT_ISOUTOFDOMAIN), typeof(DiffEqBase.ODE_DEFAULT_PROG_MESSAGE), typeof(DiffEqBase.ODE_DEFAULT_UNSTABLE_CHECK), DataStructures.BinaryMinHeap{Float64}, DataStructures.BinaryMinHeap{Float64}, Nothing, Nothing, Int64, Tuple{}, Float64, Tuple{}}, Vector{Float64}, Float64, Nothing, OrdinaryDiffEq.DefaultInit}, cache::OrdinaryDiffEq.Rosenbrock5ConstantCache{SciMLBase.TimeDerivativeWrapper{SciMLBase.ODEFunction{false, PyObject, LinearAlgebra.UniformScaling{Bool}, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, typeof(SciMLBase.DEFAULT_OBSERVED), Nothing}, Vector{Float64}, SciMLBase.NullParameters}, SciMLBase.UDerivativeWrapper{SciMLBase.ODEFunction{false, PyObject, LinearAlgebra.UniformScaling{Bool}, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, typeof(SciMLBase.DEFAULT_OBSERVED), Nothing}, Float64, SciMLBase.NullParameters}, OrdinaryDiffEq.Rodas5Tableau{Float64, Float64}, Matrix{Float64}, LinearAlgebra.LU{Float64, Matrix{Float64}}, DiffEqBase.DefaultLinSolve}, repeat_step::Bool) @ OrdinaryDiffEq C:\Users\Kiera.julia\packages\OrdinaryDiffEq\vNuN5\src\perform_step\rosenbrock_perform_step.jl:933 [15] perform_step! @ C:\Users\Kiera.julia\packages\OrdinaryDiffEq\vNuN5\src\perform_step\rosenbrock_perform_step.jl:889 [inlined] [16] solve!(integrator::OrdinaryDiffEq.ODEIntegrator{OrdinaryDiffEq.Rodas5{0, true, DiffEqBase.DefaultLinSolve, DataType}, false, Vector{Float64}, Nothing, Float64, SciMLBase.NullParameters, Float64, Float64, Float64, Float64, Vector{Vector{Float64}}, SciMLBase.ODESolution{Float64, 2, Vector{Vector{Float64}}, Nothing, Nothing, Vector{Float64}, Vector{Vector{Vector{Float64}}}, SciMLBase.ODEProblem{Vector{Float64}, Tuple{Float64, Float64}, false, SciMLBase.NullParameters, SciMLBase.ODEFunction{false, PyObject, LinearAlgebra.UniformScaling{Bool}, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, typeof(SciMLBase.DEFAULT_OBSERVED), Nothing}, Base.Iterators.Pairs{Union{}, Union{}, Tuple{}, NamedTuple{(), Tuple{}}}, SciMLBase.StandardODEProblem}, OrdinaryDiffEq.Rodas5{0, true, DiffEqBase.DefaultLinSolve, DataType}, OrdinaryDiffEq.InterpolationData{SciMLBase.ODEFunction{false, PyObject, LinearAlgebra.UniformScaling{Bool}, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, typeof(SciMLBase.DEFAULT_OBSERVED), Nothing}, Vector{Vector{Float64}}, Vector{Float64}, Vector{Vector{Vector{Float64}}}, OrdinaryDiffEq.Rosenbrock5ConstantCache{SciMLBase.TimeDerivativeWrapper{SciMLBase.ODEFunction{false, PyObject, LinearAlgebra.UniformScaling{Bool}, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, typeof(SciMLBase.DEFAULT_OBSERVED), Nothing}, Vector{Float64}, SciMLBase.NullParameters}, SciMLBase.UDerivativeWrapper{SciMLBase.ODEFunction{false, PyObject, LinearAlgebra.UniformScaling{Bool}, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, typeof(SciMLBase.DEFAULT_OBSERVED), Nothing}, Float64, SciMLBase.NullParameters}, OrdinaryDiffEq.Rodas5Tableau{Float64, Float64}, Matrix{Float64}, LinearAlgebra.LU{Float64, Matrix{Float64}}, DiffEqBase.DefaultLinSolve}}, DiffEqBase.DEStats}, SciMLBase.ODEFunction{false, PyObject, LinearAlgebra.UniformScaling{Bool}, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, typeof(SciMLBase.DEFAULT_OBSERVED), Nothing}, OrdinaryDiffEq.Rosenbrock5ConstantCache{SciMLBase.TimeDerivativeWrapper{SciMLBase.ODEFunction{false, PyObject, LinearAlgebra.UniformScaling{Bool}, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, typeof(SciMLBase.DEFAULT_OBSERVED), Nothing}, Vector{Float64}, SciMLBase.NullParameters}, SciMLBase.UDerivativeWrapper{SciMLBase.ODEFunction{false, PyObject, LinearAlgebra.UniformScaling{Bool}, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, typeof(SciMLBase.DEFAULT_OBSERVED), Nothing}, Float64, SciMLBase.NullParameters}, OrdinaryDiffEq.Rodas5Tableau{Float64, Float64}, Matrix{Float64}, LinearAlgebra.LU{Float64, Matrix{Float64}}, DiffEqBase.DefaultLinSolve}, OrdinaryDiffEq.DEOptions{Float64, Float64, Float64, Float64, OrdinaryDiffEq.PIController{Rational{Int64}}, typeof(DiffEqBase.ODE_DEFAULT_NORM), typeof(LinearAlgebra.opnorm), Nothing, DiffEqBase.CallbackSet{Tuple{}, Tuple{}}, typeof(DiffEqBase.ODE_DEFAULT_ISOUTOFDOMAIN), typeof(DiffEqBase.ODE_DEFAULT_PROG_MESSAGE), typeof(DiffEqBase.ODE_DEFAULT_UNSTABLE_CHECK), DataStructures.BinaryMinHeap{Float64}, DataStructures.BinaryMinHeap{Float64}, Nothing, Nothing, Int64, Tuple{}, Float64, Tuple{}}, Vector{Float64}, Float64, Nothing, OrdinaryDiffEq.DefaultInit}) @ OrdinaryDiffEq C:\Users\Kiera.julia\packages\OrdinaryDiffEq\vNuN5\src\solve.jl:478 [17] #__solve#466 @ C:\Users\Kiera.julia\packages\OrdinaryDiffEq\vNuN5\src\solve.jl:5 [inlined] [18] #solve_call#58 @ C:\Users\Kiera.julia\packages\DiffEqBase\dCe5g\src\solve.jl:61 [inlined] [19] solve_up(prob::SciMLBase.ODEProblem{Vector{Float64}, Tuple{Float64, Float64}, false, SciMLBase.NullParameters, SciMLBase.ODEFunction{false, PyObject, LinearAlgebra.UniformScaling{Bool}, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, typeof(SciMLBase.DEFAULTOBSERVED), Nothing}, Base.Iterators.Pairs{Union{}, Union{}, Tuple{}, NamedTuple{(), Tuple{}}}, SciMLBase.StandardODEProblem}, sensealg::Nothing, u0::Vector{Float64}, p::SciMLBase.NullParameters, args::OrdinaryDiffEq.Rodas5{0, true, DiffEqBase.DefaultLinSolve, DataType}; kwargs::Base.Iterators.Pairs{Symbol, Float64, Tuple{Symbol, Symbol, Symbol}, NamedTuple{(:saveat, :abstol, :reltol), Tuple{Float64, Float64, Float64}}}) @ DiffEqBase C:\Users\Kiera.julia\packages\DiffEqBase\dCe5g\src\solve.jl:82 [20] #solve#59 @ C:\Users\Kiera.julia\packages\DiffEqBase\dCe5g\src\solve.jl:70 [inlined] [21] #64#65 @ C:\Users\Kiera.julia\packages\PyCall\BD546\src\callback.jl:98 [inlined] [22] ##59 @ C:\Users\Kiera.julia\packages\PyCall\BD546\src\callback.jl:56 [inlined] [23] invokelatest(::Any, ::Any, ::Vararg{Any, N} where N; kwargs::Base.Iterators.Pairs{Symbol, Float64, Tuple{Symbol, Symbol, Symbol}, NamedTuple{(:saveat, :abstol, :reltol), Tuple{Float64, Float64, Float64}}}) @ Base .\essentials.jl:710 [24] _pyjlwrapcall(f::PyCall.FuncWrapper{Tuple{Vararg{PyAny, N} where N}, PyCall.var"#64#70"{PyCall.var"#64#65#71"{typeof(CommonSolve.solve)}}}, args::Ptr{PyCall.PyObjectstruct}, kw::Ptr{PyCall.PyObject_struct}) @ PyCall C:\Users\Kiera.julia\packages\PyCall\BD546\src\callback.jl:32 [25] pyjlwrapcall(self::Ptr{PyCall.PyObjectstruct}, args::Ptr{PyCall.PyObjectstruct}, kw::Ptr{PyCall.PyObject_struct}) @ PyCall C:\Users\Kiera.julia\packages\PyCall\BD546\src\callback.jl:44>

ChrisRackauckas commented 3 years ago

That's the autodiff error mentioned here: https://github.com/SciML/diffeqpy#known-limitations

GrandadsJumper commented 3 years ago

Thanks Chris