I am looking to improve the performance of my ODE. Since the expensive operation
g(u,p) (which involves inverting matrices) has to be done anyway to calculate
du/dt, I’d like not to have to reevaluate it at every step for the callback condition too. Is there a clean way of triggering the callback from
f? Maybe by storing additional values?
function f(du,u,p,t) x = g(u,p) du = h(u,x,p) end function condition(u,t,integrator) x = g(u,p) somecheck(x) end affect!(integrator) = ... cb = Callback(condition, affect!) u0 = ... prob = ODEProblem(f, u0, cb, tspan, pars) solve(prob)