-
Notifications
You must be signed in to change notification settings - Fork 357
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Update documentation for iaf_psc_exp
#3084
base: master
Are you sure you want to change the base?
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change | ||||||
---|---|---|---|---|---|---|---|---|
|
@@ -34,43 +34,93 @@ | |||||||
|
||||||||
namespace nest | ||||||||
{ | ||||||||
|
||||||||
// Disable clang-formatting for documentation due to over-wide table. | ||||||||
// clang-format off | ||||||||
/* BeginUserDocs: neuron, integrate-and-fire, current-based | ||||||||
|
||||||||
Short description | ||||||||
+++++++++++++++++ | ||||||||
|
||||||||
Leaky integrate-and-fire neuron model with exponential PSCs | ||||||||
Leaky integrate-and-fire neuron model with exponential shaped input currents. | ||||||||
|
||||||||
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. | ||||||||
``iaf_psc_exp`` a leaky integrate-and-fire model with | ||||||||
|
||||||||
* a hard threshold, | ||||||||
* a fixed refractory period, | ||||||||
* no adaptation mechanisms, | ||||||||
* exponential shaped synaptic input currents according to [1]_ | ||||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Suggested change
|
||||||||
|
||||||||
Membrane potential evolution, spike emission, and refractoriness | ||||||||
................................................................ | ||||||||
|
||||||||
The membrane potential evolves according to | ||||||||
|
||||||||
.. math:: | ||||||||
|
||||||||
\frac{dV_\text{m}}{dt} = -\frac{V_{\text{m}} - E_\text{L}}{\tau_{\text{m}}} + \frac{I_{\text{syn}} + I_\text{e}}{C_{\text{m}}} | ||||||||
|
||||||||
where the synaptic input current :math:`I_{\text{syn}}(t)` is discussed below and :math:`I_\text{e}` is | ||||||||
a constant input current set as a model parameter. | ||||||||
|
||||||||
A spike is emitted at time step :math:`t^*=t_{k+1}` if | ||||||||
|
||||||||
.. math:: | ||||||||
|
||||||||
V_\text{m}(t_k) < V_{th} \quad\text{and}\quad V_\text{m}(t_{k+1})\geq V_\text{th} \;. | ||||||||
|
||||||||
Subsequently, | ||||||||
|
||||||||
.. math:: | ||||||||
|
||||||||
V_\text{m}(t) = V_{\text{reset}} \quad\text{for}\quad t^* \leq t < t^* + t_{\text{ref}} \;, | ||||||||
|
||||||||
that is, the membrane potential is clamped to :math:`V_{\text{reset}}` during the refractory period. | ||||||||
|
||||||||
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. | ||||||||
Synaptic input | ||||||||
.............. | ||||||||
|
||||||||
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. | ||||||||
The synaptic input current has an excitatory and an inhibitory component | ||||||||
|
||||||||
The linear subthreshold dynamics is integrated by the Exact | ||||||||
Integration scheme [2]_, which is more precise, but different from the | ||||||||
implementation in [1]_, which uses the forward Euler integration scheme. | ||||||||
This precludes an exact numerical reproduction of the results from [1]_. | ||||||||
.. math:: | ||||||||
|
||||||||
An additional state variable and the corresponding differential | ||||||||
equation represents a piecewise constant external current. | ||||||||
I_{\text{syn}}(t) = I_{\text{syn, ex}}(t) + I_{\text{syn, in}}(t) | ||||||||
|
||||||||
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]_. | ||||||||
where | ||||||||
|
||||||||
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]_. | ||||||||
.. math:: | ||||||||
|
||||||||
I_{\text{syn, X}}(t) = \sum_{j} w_j \sum_k i_{\text{syn, X}}(t-t_j^k-d_j) \;, | ||||||||
|
||||||||
where :math:`j` indexes either excitatory (:math:`\text{X} = \text{ex}`) | ||||||||
or inhibitory (:math:`\text{X} = \text{in}`) presynaptic neurons, | ||||||||
:math:`k` indexes the spike times of neuron :math:`j`, and :math:`d_j` | ||||||||
is the delay from neuron :math:`j`. | ||||||||
|
||||||||
The individual post-synaptic currents (PSCs) are given by | ||||||||
|
||||||||
.. math:: | ||||||||
|
||||||||
i_{\text{syn, X}}(t) = e^{-\frac{t}{\tau_{\text{syn, X}}}} \Theta(t) | ||||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I would include the weight |
||||||||
|
||||||||
where :math:`\Theta(x)` is the Heaviside step function. The PSCs are normalized to unit maximum, that is, | ||||||||
|
||||||||
.. math:: | ||||||||
|
||||||||
i_{\text{syn, X}}(t= 0) = 1 \;. | ||||||||
|
||||||||
As a consequence, the total charge :math:`q` transferred by a single PSC depends | ||||||||
on the synaptic time constant according to | ||||||||
|
||||||||
.. math:: | ||||||||
|
||||||||
q = \int_0^{\infty} i_{\text{syn, X}}(t) dt = \tau_{\text{syn, X}} \;. | ||||||||
|
||||||||
By default, :math:`V_\text{m}` is not bounded from below. To limit | ||||||||
hyperpolarization to biophysically plausible values, set parameter | ||||||||
:math:`V_{\text{min}}` as lower bound of :math:`V_\text{m}`. | ||||||||
Comment on lines
+121
to
+123
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Suggested change
|
||||||||
|
||||||||
.. note:: | ||||||||
|
||||||||
|
@@ -108,21 +158,32 @@ 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 | ||||||||
=========== ======= ======================================================== | ||||||||
|
||||||||
=============== ================== =============================== ======================================================================== | ||||||||
**Parameter** **Default** **Math equivalent** **Description** | ||||||||
=============== ================== =============================== ======================================================================== | ||||||||
``E_L`` -70 mV :math:`E_\text{L}` Resting membrane potential | ||||||||
``C_m`` 250 pF :math:`C_{\text{m}}` Capacity of the membrane | ||||||||
``tau_m`` 10 ms :math:`\tau_{\text{m}}` Membrane time constant | ||||||||
``t_ref`` 2 ms :math:`t_{\text{ref}}` Duration of refractory period | ||||||||
``V_th`` -55 mV :math:`V_{\text{th}}` Spike threshold | ||||||||
``V_reset`` -70 mV :math:`V_{\text{reset}}` Reset potential of the membrane | ||||||||
``tau_syn_ex`` 2 ms :math:`\tau_{\text{syn, ex}}` Rise time of the excitatory synaptic alpha function | ||||||||
``tau_syn_in`` 2 ms :math:`\tau_{\text{syn, in}}` Rise time of the inhibitory synaptic alpha function | ||||||||
``I_e`` 0 pA :math:`I_\text{e}` Constant input current | ||||||||
``V_min`` :math:`-\infty` mV :math:`V_{\text{min}}` Absolute lower value for the membrane potential | ||||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. A bit surprising, but
Suggested change
|
||||||||
=============== ================== =============================== ======================================================================== | ||||||||
|
||||||||
The following state variables evolve during simulation and are available either as neuron properties or as recordables. | ||||||||
|
||||||||
================== ================= ========================== ================================= | ||||||||
**State variable** **Initial value** **Math equivalent** **Description** | ||||||||
================== ================= ========================== ================================= | ||||||||
``V_m`` -70 mV :math:`V_{\text{m}}` Membrane potential | ||||||||
``I_syn_ex`` 0 pA :math:`I_{\text{syn, ex}}` Excitatory synaptic input current | ||||||||
``I_syn_in`` 0 pA :math:`I_{\text{syn, in}}` Inhibitory synaptic input current | ||||||||
================== ================= ========================== ================================= | ||||||||
|
||||||||
|
||||||||
References | ||||||||
++++++++++ | ||||||||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.