iaf_psc_exp – Leaky integrate-and-fire neuron model with exponential PSCs

Description

iaf_psc_exp is an implementation of a leaky integrate-and-fire model with exponential shaped postsynaptic currents (PSCs) according to 1. Thus, postsynaptic currents have an infinitely short rise time.

The threshold crossing is followed by an absolute refractory period (t_ref) during which the membrane potential is clamped to the resting potential and spiking is prohibited.

The linear subthreshold dynamics is integrated by the Exact Integration scheme 2. The neuron dynamics is solved on the time grid given by the computation step size. Incoming as well as emitted spikes are forced to that grid.

An additional state variable and the corresponding differential equation represents a piecewise constant external current.

The general framework for the consistent formulation of systems with neuron like dynamics interacting by point events is described in 2. A flow chart can be found in 3.

Spiking in this model can be either deterministic (delta=0) or stochastic (delta > 0). In the stochastic case this model implements a type of spike response model with escape noise 4.

Remarks:

The present implementation uses individual variables for the components of the state vector and the non-zero matrix elements of the propagator. Because the propagator is a lower triangular matrix, no full matrix multiplication needs to be carried out and the computation can be done “in place”, i.e. no temporary state vector object is required.

The template support of recent C++ compilers enables a more succinct formulation without loss of runtime performance already at minimal optimization levels. A future version of iaf_psc_exp will probably address the problem of efficient usage of appropriate vector and matrix objects.

Note

If tau_m is very close to tau_syn_ex or tau_syn_in, the model will numerically behave as if tau_m is equal to tau_syn_ex or tau_syn_in, respectively, to avoid numerical instabilities.

For implementation details see the IAF_neurons_singularity notebook.

iaf_psc_exp can handle current input in two ways: Current input through receptor_type 0 are handled as stepwise constant current input as in other iaf models, i.e., this current directly enters the membrane potential equation. Current input through receptor_type 1, in contrast, is filtered through an exponential kernel with the time constant of the excitatory synapse, tau_syn_ex. For an example application, see 4.

For conversion between postsynaptic potentials (PSPs) and PSCs, please refer to the postsynaptic_potential_to_current function in PyNEST Microcircuit: Helper Functions.

Parameters

The following parameters can be set in the status dictionary.

E_L

mV

Resting membrane potential

C_m

pF

Capacity of the membrane

tau_m

ms

Membrane time constant

tau_syn_ex

ms

Exponential decay time constant of excitatory synaptic current kernel

tau_syn_in

ms

Exponential decay time constant of inhibitory synaptic current kernel

t_ref

ms

Duration of refractory period (V_m = V_reset)

V_m

mV

Membrane potential in mV

V_th

mV

Spike threshold in mV

V_reset

mV

Reset membrane potential after a spike

I_e

pA

Constant input current

t_spike

ms

Point in time of last spike

References

1

Tsodyks M, Uziel A, Markram H (2000). Synchrony generation in recurrent networks with frequency-dependent synapses. The Journal of Neuroscience, 20,RC50:1-5. URL: https://infoscience.epfl.ch/record/183402

2(1,2)

Rotter S, Diesmann M (1999). Exact simulation of time-invariant linear systems with applications to neuronal modeling. Biologial Cybernetics 81:381-402. DOI: https://doi.org/10.1007/s004220050570

3

Diesmann M, Gewaltig M-O, Rotter S, & Aertsen A (2001). State space analysis of synchronous spiking in cortical neural networks. Neurocomputing 38-40:565-571. DOI: https://doi.org/10.1016/S0925-2312(01)00409-X

4(1,2)

Schuecker J, Diesmann M, Helias M (2015). Modulated escape from a metastable state driven by colored noise. Physical Review E 92:052119 DOI: https://doi.org/10.1103/PhysRevE.92.052119

Sends

SpikeEvent

Receives

SpikeEvent, CurrentEvent, DataLoggingRequest