Open clinssen opened 10 months ago
erf(sqrt(t))**2 * heaviside(t)
)(e / tau_syn_inh) * t * exp(-t / tau_syn_inh)
).Equations block handles continuous input currents, but no convolution allowed right now (only convolution with spiking input ports is allowed).
For example:
equations:
kernel K = delta(t)
V_m' = -V_m / tau_m + convolve(K, spikes) * mV / ms # when does V_m get incremented?
Probably, we want the convolution to happen either just before or just after ODEs are integrated. (N.B. results could be different depending on the numerical integrator that's chosen).
Is the following formulation equivalent?
equations:
V_m' = -V_m / tau_m + spikes * mV # when does V_m get incremented?
Meaning would be in the generated code: spikes
is a weighted sum of the spikes that came in during the last timestep. This could be done by generating an extra auxiliary variable (just as we do for other convolutions with kernels other than the delta) even for delta functions.
A convolution with a delta kernel inside an inline expression results in errors during code generation.
For instance:
Making the inline expression "recordable" does not seem to help.