The default is surprisingly unstable around steady-state:
Details on options here https://docs.scipy.org/doc/scipy/reference/generated/scipy.integrate.solve_ivp.html
@afeilberg has already found that method = 'LSODA' is better.
It seems it is from ODEPACK, as are the solvers in the R package deSolve, and presumably it is the same as the deSolve::lsoda() function, which we use in ABM and in general seems to work well.
So maybe we should just switch to LSODA.
The default is surprisingly unstable around steady-state:
Details on options here https://docs.scipy.org/doc/scipy/reference/generated/scipy.integrate.solve_ivp.html @afeilberg has already found that
method = 'LSODA'
is better. It seems it is from ODEPACK, as are the solvers in the R package deSolve, and presumably it is the same as thedeSolve::lsoda()
function, which we use in ABM and in general seems to work well. So maybe we should just switch toLSODA
.