Hello all,
I guess somebody must have covered this topic before, but I have a question about how Dynasim handles with additive noise in ODEs.
In the example of Izhikevich model, the input current has a fluctuating component,
'I(t) = Iapp*(t>ton & t<toff).*(1+0.5*rand(1,Npop))'
If I choose the solver as ‘euler', then in the generated solve_ode.m file, it updates variables using the regular Euler’s method:
pop1_v(n)=pop1_v(n-1)+dt*pop1_v_k1;
pop1_u(n)=pop1_u(n-1)+dt*pop1_u_k1;
where pop1_v_k1 and pop1_u_k1 are the r.h.s of ODEs.
But since the current is an additive noise term, shouldn’t we use the Euler-Mayamara method:
pop1_v(n)=pop1_v(n-1)+dt*deterministic_part + sqrt(dt)*sigma*randn() ?
It seems other solvers (rk2,rk4,all Matlab ode solvers) are doing the regular dt-update, which is designed for ODEs. But is there any solver that can deal with SDEs instead? Or did I miss something here?
Thanks for the help!
Best,
Bolun Chen