Open Lightup1 opened 10 months ago
This seems somewhat fundamental. At a programming level what's going on is that the array type is then wrapped in a ExtendedJumpArray when it's a variable rate jump of this form. However, dynamical ODEs want a partitionedarray, and so the ExtendedJumpArray{PartitionedArray{Array}} isn't hitting the right dispatches. One may thing you can fix this by just fixing the dispatches it would hit, but the issue there is that the ExtendedJumpArray is adding ODEs to the system which aren't quite part of the dynamical structure, so there isn't a clean way to map it to the partitionedarray.
There are two ways to do this. One, the way that should be recommended, is just use Coevolve which does the variable rate jumps by rejection instead of extension, and thus the problem is immediately gone.
What would need to be done here is that the variable rate jump method should do an implementation via callback like https://docs.sciml.ai/DiffEqCallbacks/stable/integrating/.
Minimal Reproducible Example of ODE👇
Error & Stacktrace ⚠️
Minimal Reproducible Example of SDE👇
Error & Stacktrace ⚠️