norse.torch.functional.lif_feed_forward_step

norse.torch.functional.lif_feed_forward_step#

norse.torch.functional.lif_feed_forward_step(input_spikes: Tensor, state: LIFFeedForwardState, p: LIFParameters, dt: float = 0.001) Tuple[Tensor, LIFFeedForwardState][source]#

Computes a single euler-integration step for a lif neuron-model. It takes as input the input current as generated by an arbitrary torch module or function. More specifically it implements one integration step of the following ODE

\[\begin{split}\begin{align*} \dot{v} &= 1/\tau_{\text{mem}} (v_{\text{leak}} - v + i) \\ \dot{i} &= -1/\tau_{\text{syn}} i \end{align*}\end{split}\]

together with the jump condition

\[z = \Theta(v - v_{\text{th}})\]

and transition equations

\[\begin{split}\begin{align*} v &= (1-z) v + z v_{\text{reset}} \\ i &= i + i_{\text{in}} \end{align*}\end{split}\]

where \(i_{\text{in}}\) is meant to be the result of applying an arbitrary pytorch module (such as a convolution) to input spikes.

Parameters:

input_tensor (torch.Tensor): the input spikes at the current time step state (LIFFeedForwardState): current state of the LIF neuron p (LIFParameters): parameters of a leaky integrate and fire neuron dt (float): Integration timestep to use