-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathiaf_psc_exp.nestml
92 lines (67 loc) · 3.12 KB
/
iaf_psc_exp.nestml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
"""
iaf_psc_exp_nestml - 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-kernel 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 synaptic input current, however, continues to
be integrated during refractoriness.
The state update is implemented as proposed in [2]_ (Fig.2) and [3_] (Figs.10.1.and 10.2).
.. note::
If tau_m is very close to tau_syn_exc or tau_syn_inh, numerical problems
may arise due to singularities in the propagator matrics. If this is
the case, replace equal-valued parameters by a single parameter.
For details, please see ``IAF_neurons_singularity.ipynb`` in
the NEST source code (``docs/model_details``).
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] Diesmann M, Gewaltig MO, Rotter S, Aertsen A (2001). State space analysis
of synchronous spiking in cortical neural networks. Neurocomputing, 38, 565-571.
.. [3] Morrison A, Diesmann M (2008). Maintaining causality in discrete time neuronal
network simulations. Lectures in Supercomputational Neurosciences: Dynamics in
Complex Brain Networks, 267-278.
"""
neuron iaf_psc_exp:
state:
r integer = 0 # refractory state
V_m mV = 0 mV # membrane potential
equations:
kernel I_kernel_exc = exp(-t / tau_syn_exc)
kernel I_kernel_inh = exp(-t / tau_syn_inh)
recordable inline I_syn pA = convolve(I_kernel_exc, ExcInput) * pA - convolve(I_kernel_inh, InhInput) * pA
V_m' = - (V_m - E_L) / tau_m + (I_syn + I_e + IStim) / C_m
parameters:
C_m pF = 250 pF # membrane capacitance
tau_m ms = 10 ms # membrane time constant
tau_syn_exc ms = 5 ms # time constant of excitatory synapses
tau_syn_inh ms = 5 ms # time constant of inhibitory synapses
t_ref ms = 2 ms # refractory period
E_L mV = 0.0 mV # resting potential
V_reset mV = 0.0 mV # reset potential
V_th mV = 15.0 mV # spike threshold
I_e pA = 0 pA # constant external input current
internals:
RefractoryCounts integer = steps(t_ref) # refractory time in steps
input:
ExcInput <- excitatory spike
InhInput <- inhibitory spike
IStim pA <- continuous
output:
spike
update:
integrate_odes()
if r == 0: # neuron is not refractory
if V_m >= V_th: # threshold crossing
emit_spike()
r = RefractoryCounts
V_m = V_reset
else: # neuron is refractory
V_m = V_reset
r -= 1