Duration of the spiking signal

Considering the LIF model, theoretically the spiking signal is a delta function where the duration of the spike is really small.

But how small is really small? and given a time-step, how can we generate a signal with the duration smaller than the time-step.
Do we consider the duration of the spike is one time-step unit in Nengo? (for example, if the time-step is 1sec, then the spiking signal is more like a square wave with the on duration of 1sec?)

Hi @corricvale,

Yup! Time in Nengo is discretized into “timesteps”. In the Nengo code, there are some places where we use interpolation to determine the intermediate values of continuous valued signals (e.g., to get a better approximation of when \tau_{ref} resets), but for input and output signals (including spikes), the signals are considered static (at one value) for each timestep. That is to say, if you create a nengo.Simulator with dt=1, a spike will have a duration of 1 second. In Nengo, it’s currently not possible to generate signals that take intermediate values within one timestep.

I should also note that in Nengo, the area of the spike is always 1. That is to say, if you were to multiply the duration of the spike with the amplitude of the spike, the result will always be 1 regardless of what value is used for the simulation’s dt. As an example, for the default dt (default is 0.001s), the amplitude of a spike is 1/dt = 1000. For a dt=1s, the amplitude of a spike is 1/1 = 1. In Nengo, this is done so that the convolution of spike trains with synaptic filters is independent of the value of dt (i.e., no compensation is needed if dt is changed).