If I recall correctly, @michaelosthege is writing some solvers to help speed up the computation. The reason I chose odeint is because we could pass different parameters to the solver at the time of solving (see the args
parameter in odeint). At the time, solve_ivp
only had the option to pass args to the ODE in the most recent version of scipy. We decided to stick with odeint so as not to limit dependencies.
I’m not saying this was a good decision, but it was the one we made at the time.
So far as a PR goes, I will let Mike talk more about that.