Only support t_eval path in solve_ivp
The problem
We currently support specifying t_eval or t_max in solve_ivp. This is a maintenance headache.
Definition of "done"
-
remove support for t_max from solve_ivp -
test that max_steps is used in the t_eval path (to avoid having solvers just run forever) -
test that we only run until time_eval % value_last_boundand interpolate back onto the intended time if the stepper goes over. Doing this will help with re-starting. See comment here: https://gitlab.com/magicc/fgen/-/blob/d7206713c82b2681bbb755481abf9b34ad7315a7/src/libfgen/solvers/ivp.f90#L330
Additional context
Discussed offline. @lewisjarednz shout if I have missed anything here
Edited by Zebedee Nicholls