Ask `TerminateSteadyState` Callback to only start after a certain amount of time

I’m using the DiffEqCallback.jl library’s TerminateSteadyState callback to help me terminate a long simulation if it reaches some steady state, but I’m wondering if there’s a way to only have the function start looking for a steady state after some certain time point?

Essentially I’m running a simulation where I change a parameter at t = 1 and then again at t = 100, and then I want TerminateSteadyState to start looking to end the sim after t=100, but in some instances, the dynamics settle down enough by t = ~30 that the sim gets cut short before the second parameter change at t = 100.

Is there any way to do this? I don’t really want to break the simulation up, hoping for a general case solution where I can tell TerminateSteadyState to begin looking at some time t instead of at the beginning of the sim. Any thoughts appreciated!!

Open an issue. That would be easy to implement.

1 Like

Will do, thanks!