Hi,
I was wondering about the implementation of vectorised solutions - is it intended to solve functions within the same ODE simultaneously? Or does it allow for vectorising solutions of the same ODE with different input parameters, a la heyoka's batch mode?
I'm needing to solve many ODEs with different input parameters very quickly as part of some discrete-time simulations (between 100 and 10000 solutions every time step for ~75000 time steps), but I can only use a single CPU core to solve these (owing to other levels of parallelisation running each of these discrete-time simulations with different inputs). I have already noticed an improvement using Ascent vs odeint which is very nice, but I think vectorising solutions over inputs rather than solving in a for loop (as I am doing) would be faster. Do you know if Ascent can help with this?
Cheers,
Nick
Hi,
I was wondering about the implementation of vectorised solutions - is it intended to solve functions within the same ODE simultaneously? Or does it allow for vectorising solutions of the same ODE with different input parameters, a la heyoka's batch mode?
I'm needing to solve many ODEs with different input parameters very quickly as part of some discrete-time simulations (between 100 and 10000 solutions every time step for ~75000 time steps), but I can only use a single CPU core to solve these (owing to other levels of parallelisation running each of these discrete-time simulations with different inputs). I have already noticed an improvement using Ascent vs odeint which is very nice, but I think vectorising solutions over inputs rather than solving in a for loop (as I am doing) would be faster. Do you know if Ascent can help with this?
Cheers,
Nick