Callbacks are skipped in various settings

Hello!

I am working on simulations related to spiking neuron networks (with discontinuous models, like LIF, and possible delays), and I have run into several problems with callbacks in DifferentialEquations.jl.

I opened 2 bug reports:

I’d be pretty happy to help to debug/fix these issues, but some pointers as to where to look or start would be very helpful (and hence I am opening this thread).

Thanks a lot (for the awesome DifferentialEquations.jl :))

3 Likes

Yeah we’ll follow up in those issues. Currently on a flight so I can’t spawn stuff, but definitely worth digging into.

For the DDE one, I’d look at whether there’s an odd intersection there between the DDE discontinuity propagation and the presettimecallback if it lands on a discontinuity time point, since that’s handled via the callback mechanism itself, maybe it has a case where the two can clash if they land on the same time point. My guess is that the discontinuity handling triggers its callback and heads straight into the next integration step, when it should then trigger a discrete callback resolution.

The other one is tricky. My guess off the top of my head is that, since it’s a VCC, you might be having multiple conditions hitting at almost the same time, and so then because it doesn’t do simultaneous resolution it might be missing the second one. I think the solution there is to finally finish simultanious resolution.