All neuron models¶

Back to model directory

class aeif_cond_alpha : public Archiving_Node
#include <aeif_cond_alpha.h>

Name: aeif_cond_alpha - Conductance based exponential integrate-and-fire neuron model according to Brette and Gerstner (2005). Description:

aeif_cond_alpha is the adaptive exponential integrate and fire neuron according to Brette and Gerstner (2005). Synaptic conductances are modelled as alpha-functions.

This implementation uses the embedded 4th order Runge-Kutta-Fehlberg solver with adaptive step size to integrate the differential equation.

The membrane potential is given by the following differential equation:

$\begin{split} C_m \frac{dV}{dt} = -g_L(V-E_L)+g_L\Delta_T\exp\left(\frac{V-V_{th}}{\Delta_T}\right) - g_e(t)(V-E_e) \\ -g_i(t)(V-E_i)-w +I_e \end{split}$

and

$\tau_w \frac{dw}{dt} = a(V-E_L) - w$

Parameters:

The following parameters can be set in the status dictionary.

 Dynamic state variables: V_m mV Membrane potential g_ex nS Excitatory synaptic conductance dg_ex nS/ms First derivative of g_ex g_in nS Inhibitory synaptic conductance dg_in nS/ms First derivative of g_in w pA Spike-adaptation current
 Membrane Parameters C_m pF Capacity of the membrane t_ref ms Duration of refractory period V_reset mV Reset value for V_m after a spike E_L mV Leak reversal potential g_L nS Leak conductance I_e pA Constant external input current
 Spike adaptation parameters a ns Subthreshold adaptation b pA Spike-triggered adaptation Delta_T mV Slope factor tau_w ms Adaptation time constant V_th mV Spike initiation threshold V_peak mV Spike detection threshold
 Synaptic parameters E_ex mV Excitatory reversal potential tau_syn_ex ms Rise time of excitatory synaptic conductance (alpha function) E_in mV Inhibitory reversal potential tau_syn_in ms Rise time of the inhibitory synaptic conductance (alpha function)
 Integration parameters gsl_error_tol real This parameter controls the admissible error of the GSL integrator. Reduce it if NEST complains about numerical instabilities.

Authors: Marc-Oliver Gewaltig; full revision by Tanguy Fardet on December 2016

Sends: SpikeEvent

Receives: SpikeEvent, CurrentEvent, DataLoggingRequest

References:

1

Brette R and Gerstner W (2005). Adaptive Exponential Integrate-and-Fire Model as an Effective Description of Neuronal Activity. J Neurophysiol 94:3637-3642 DOI: https://doi.org/10.1152/jn.00686.2005

SeeAlso: iaf_cond_alpha, aeif_cond_exp

class aeif_cond_alpha_multisynapse : public Archiving_Node
#include <aeif_cond_alpha_multisynapse.h>

Name: aeif_cond_alpha_multisynapse - Conductance based adaptive exponential integrate-and-fire neuron model according to Brette and Gerstner (2005) with multiple synaptic rise time and decay time constants, and synaptic conductance modeled by an alpha function.

Description:

aeif_cond_alpha_multisynapse is a conductance-based adaptive exponential integrate-and-fire neuron model. It allows an arbitrary number of synaptic time constants. Synaptic conductance is modeled by an alpha function, as described by A. Roth and M.C.W. van Rossum in Computational Modeling Methods for Neuroscientists, MIT Press 2013, Chapter 6.

The time constants are supplied by an array, “tau_syn”, and the pertaining synaptic reversal potentials are supplied by the array “E_rev”. Port numbers are automatically assigned in the range from 1 to n_receptors. During connection, the ports are selected with the property “receptor_type”.

The membrane potential is given by the following differential equation:

$C dV/dt = -g_L(V-E_L) + g_L*\Delta_T*\exp((V-V_T)/\Delta_T) + I_{syn_{tot}}(V, t)- w + I_e$
where

$I_{syn_{tot}}(V,t) = \sum_i g_i(t) (V - E_{rev,i}) ,$

the synapse i is excitatory or inhibitory depending on the value of $$E_{rev,i}$$ and the differential equation for the spike-adaptation current w is:

$\tau_w * dw/dt = a(V - E_L) - w$

When the neuron fires a spike, the adaptation current w <- w + b.

Parameters:

The following parameters can be set in the status dictionary.

 Dynamic state variables: V_m mV Membrane potential w pA Spike-adaptation current
 Membrane Parameters C_m pF Capacity of the membrane t_ref ms Duration of refractory period V_reset mV Reset value for V_m after a spike E_L mV Leak reversal potential g_L nS Leak conductance I_e pA Constant external input current Delta_T mV Slope factor V_th mV Spike initiation threshold V_peak mV Spike detection threshold
 Spike adaptation parameters a ns Subthreshold adaptation b pA Spike-triggered adaptation tau_w ms Adaptation time constant
 Synaptic parameters E_rev list of mV Reversal potential tau_syn list of ms Time constant of synaptic conductance
 Integration parameters gsl_error_tol real This parameter controls the admissible error of the GSL integrator. Reduce it if NEST complains about numerical instabilities.

Examples:

import nest
import numpy as np

neuron = nest.Create('aeif_cond_alpha_multisynapse')
nest.SetStatus(neuron, {"V_peak": 0.0, "a": 4.0, "b":80.5})
nest.SetStatus(neuron, {'E_rev':[0.0, 0.0, 0.0, -85.0],
'tau_syn':[1.0, 5.0, 10.0, 8.0]})

spike = nest.Create('spike_generator', params = {'spike_times':
np.array([10.0])})

voltmeter = nest.Create('voltmeter', 1, {'withgid': True})

delays=[1.0, 300.0, 500.0, 700.0]
w=[1.0, 1.0, 1.0, 1.0]
for syn in range(4):
nest.Connect(spike, neuron, syn_spec={'model': 'static_synapse',
'receptor_type': 1 + syn,
'weight': w[syn],
'delay': delays[syn]})

nest.Connect(voltmeter, neuron)

nest.Simulate(1000.0)
dmm = nest.GetStatus(voltmeter)[0]
Vms = dmm["events"]["V_m"]
ts = dmm["events"]["times"]
import pylab
pylab.figure(2)
pylab.plot(ts, Vms)
pylab.show()


Sends: SpikeEvent

Receives: SpikeEvent, CurrentEvent, DataLoggingRequest

Author: Hans Ekkehard Plesser, based on aeif_cond_beta_multisynapse

SeeAlso: aeif_cond_alpha_multisynapse

class aeif_cond_alpha_RK5 : public Archiving_Node
#include <aeif_cond_alpha_RK5.h>

Name: aeif_cond_alpha_RK5 - Conductance based exponential integrate-and-fire neuron model according to Brette and Gerstner (2005)

Description:

aeif_cond_alpha_RK5 is the adaptive exponential integrate and fire neuron according to Brette and Gerstner (2005). Synaptic conductances are modelled as alpha-functions.

This implementation uses a 5th order Runge-Kutta solver with adaptive stepsize to integrate the differential equation (see Numerical Recipes 3rd Edition, Press et al. 2007, Ch. 17.2).

The membrane potential is given by the following differential equation:

$\begin{split} C dV/dt= -g_L(V-E_L)+g_L*\Delta_T*\exp((V-V_T)/\Delta_T)-g_e(t)(V-E_e) \\ -g_i(t)(V-E_i)-w +I_e \end{split}$
and

$\tau_w * dw/dt= a(V-E_L) -w$

Parameters:

The following parameters can be set in the status dictionary.

 Dynamic state variables: V_m mV Membrane potential g_ex nS Excitatory synaptic conductance dg_ex nS/ms First derivative of g_ex g_in nS Inhibitory synaptic conductance dg_in nS/ms First derivative of g_in w pA Spike-adaptation current
 Membrane Parameters C_m pF Capacity of the membrane t_ref ms Duration of refractory period V_reset mV Reset value for V_m after a spike E_L mV Leak reversal potential g_L nS Leak conductance I_e pA Constant external input current
 Spike adaptation parameters a ns Subthreshold adaptation b pA Spike-triggered adaptation Delta_T mV Slope factor tau_w ms Adaptation time constant V_th mV Spike initiation threshold V_peak mV Spike detection threshold
 Synaptic parameters E_ex mV Excitatory reversal potential tau_syn_ex ms Rise time of excitatory synaptic conductance (alpha function) E_in mV Inhibitory reversal potential tau_syn_in ms Rise time of the inhibitory synaptic conductance (alpha function)
 Numerical integration parameters HMIN ms Minimal stepsize for numerical integration (default 0.001ms) MAXERR mV Error estimate tolerance for adaptive stepsize control (steps accepted if err<=MAXERR). Note that the error refers to the difference between the 4th and 5th order RK terms. Default 1e-10 mV.

• Authors: Stefan Bucher, Marc-Oliver Gewaltig.

Sends: SpikeEvent

Receives: SpikeEvent, CurrentEvent, DataLoggingRequest

1

Brette R and Gerstner W (2005). Adaptive Exponential Integrate-and-Fire Model as an Effective Description of Neuronal Activity. J Neurophysiol 94:3637-3642. DOI: https://doi.org/10.1152/jn.00686.2005

class aeif_cond_beta_multisynapse : public Archiving_Node
#include <aeif_cond_beta_multisynapse.h>

Name: aeif_cond_beta_multisynapse - Conductance based adaptive exponential integrate-and-fire neuron model according to Brette and Gerstner (2005) with multiple synaptic rise time and decay time constants, and synaptic conductance modeled by a beta function.

Description:

aeif_cond_beta_multisynapse is a conductance-based adaptive exponential integrate-and-fire neuron model. It allows an arbitrary number of synaptic rise time and decay time constants. Synaptic conductance is modeled by a beta function, as described by A. Roth and M.C.W. van Rossum in Computational Modeling Methods for Neuroscientists, MIT Press 2013, Chapter 6.

The time constants are supplied by two arrays, “tau_rise” and “tau_decay” for the synaptic rise time and decay time, respectively. The synaptic reversal potentials are supplied by the array “E_rev”. The port numbers are automatically assigned in the range from 1 to n_receptors. During connection, the ports are selected with the property “receptor_type”.

The membrane potential is given by the following differential equation:

$C dV/dt = -g_L(V-E_L) + g_L*\Delta_T*\exp((V-V_T)/\Delta_T) + I_{syn_{tot}}(V, t) - w + I_e$

where:

$I_{syn_{tot}}(V,t) = \sum_i g_i(t) (V - E_{rev,i}) ,$

the synapse i is excitatory or inhibitory depending on the value of $$E_{rev,i}$$ and the differential equation for the spike-adaptation current w is:

$\tau_w * dw/dt = a(V - E_L) - w$

When the neuron fires a spike, the adaptation current w <- w + b.

Parameters: The following parameters can be set in the status dictionary.

 Dynamic state variables: V_m mV Membrane potential w pA Spike-adaptation current
 Membrane Parameters C_m pF Capacity of the membrane t_ref ms Duration of refractory period V_reset mV Reset value for V_m after a spike E_L mV Leak reversal potential g_L nS Leak conductance I_e pA Constant external input current Delta_T mV Slope factor V_th mV Spike initiation threshold V_peak mV Spike detection threshold
 Spike adaptation parameters a ns Subthreshold adaptation b pA Spike-triggered adaptation tau_w ms Adaptation time constant
 Synaptic parameters E_rev list of mV Reversal potential tau_syn list of ms Time constant of synaptic conductance
 Integration parameters gsl_error_tol real This parameter controls the admissible error of the GSL integrator. Reduce it if NEST complains about numerical instabilities.

Examples:

import nest
import numpy as np

neuron = nest.Create('aeif_cond_beta_multisynapse')
nest.SetStatus(neuron, {"V_peak": 0.0, "a": 4.0, "b":80.5})
nest.SetStatus(neuron, {'E_rev':[0.0,0.0,0.0,-85.0],
'tau_decay':[50.0,20.0,20.0,20.0],
'tau_rise':[10.0,10.0,1.0,1.0]})

spike = nest.Create('spike_generator', params = {'spike_times':
np.array([10.0])})

voltmeter = nest.Create('voltmeter', 1, {'withgid': True})

delays=[1.0, 300.0, 500.0, 700.0]
w=[1.0, 1.0, 1.0, 1.0]
for syn in range(4):
nest.Connect(spike, neuron, syn_spec={'model': 'static_synapse',
'receptor_type': 1 + syn,
'weight': w[syn],
'delay': delays[syn]})

nest.Connect(voltmeter, neuron)

nest.Simulate(1000.0)
dmm = nest.GetStatus(voltmeter)[0]
Vms = dmm["events"]["V_m"]
ts = dmm["events"]["times"]
import pylab
pylab.figure(2)
pylab.plot(ts, Vms)
pylab.show()


Sends: SpikeEvent

Receives: SpikeEvent, CurrentEvent, DataLoggingRequest

Author: Bruno Golosio 07/10/2016

SeeAlso: aeif_cond_alpha_multisynapse

class aeif_cond_exp : public Archiving_Node
#include <aeif_cond_exp.h>

Name: aeif_cond_exp - Conductance based exponential integrate-and-fire neuron model according to Brette and Gerstner (2005).

Description:

aeif_cond_exp is the adaptive exponential integrate and fire neuron according to Brette and Gerstner (2005), with post-synaptic conductances in the form of truncated exponentials.

This implementation uses the embedded 4th order Runge-Kutta-Fehlberg solver with adaptive stepsize to integrate the differential equation.

The membrane potential is given by the following differential equation:

$\begin{split} C dV/dt= -g_L(V-E_L)+g_L*\Delta_T*\exp((V-V_T)/\Delta_T)-g_e(t)(V-E_e) \\ -g_i(t)(V-E_i)-w +I_e \end{split}$

and

$\tau_w * dw/dt= a(V-E_L) -W$

Note that the spike detection threshold V_peak is automatically set to $$V_th+10 mV$$ to avoid numerical instabilites that may result from setting V_peak too high.

Parameters: The following parameters can be set in the status dictionary.

 Dynamic state variables: V_m mV Membrane potential g_ex nS Excitatory synaptic conductance g_in nS Inhibitory synaptic conductance w pA Spike-adaptation current
 Membrane Parameters C_m pF Capacity of the membrane t_ref ms Duration of refractory period V_reset mV Reset value for V_m after a spike E_L mV Leak reversal potential g_L nS Leak conductance I_e pA Constant external input current
 Spike adaptation parameters a nS Subthreshold adaptation b pA Spike-triggered adaptation Delta_T mV Slope factor tau_w ms Adaptation time constant V_th mV Spike initiation threshold V_peak mV Spike detection threshold
 Synaptic parameters E_ex mV Excitatory reversal potential tau_syn_ex ms Rise time of excitatory synaptic conductance (alpha function) E_in mV Inhibitory reversal potential tau_syn_in ms Rise time of the inhibitory synaptic conductance (alpha function)
 Integration parameters gsl_error_tol real This parameter controls the admissible error of the GSL integrator. Reduce it if NEST complains about numerical instabilities.

Author: Adapted from aeif_cond_alpha by Lyle Muller; full revision by Tanguy Fardet on December 2016

Sends: SpikeEvent

Receives: SpikeEvent, CurrentEvent, DataLoggingRequest

1

Brette R and Gerstner W (2005). Adaptive Exponential Integrate-and-Fire Model as an Effective Description of Neuronal Activity. J Neurophysiol 94:3637-3642. DOI: https://doi.org/10.1152/jn.00686.2005

SeeAlso: iaf_cond_exp, aeif_cond_alpha

class aeif_psc_alpha : public Archiving_Node
#include <aeif_psc_alpha.h>

Name: aeif_psc_alpha - Current-based exponential integrate-and-fire neuron model according to Brette and Gerstner (2005).

Description:

aeif_psc_alpha is the adaptive exponential integrate and fire neuron according to Brette and Gerstner (2005). Synaptic currents are modelled as alpha-functions.

This implementation uses the embedded 4th order Runge-Kutta-Fehlberg solver with adaptive step size to integrate the differential equation.

The membrane potential is given by the following differential equation:

$\begin{split} C dV/dt= -g_L(V-E_L)+g_L*\Delta_T*\exp((V-V_T)/\Delta_T)-g_e(t)(V-E_e) \\ -g_i(t)(V-E_i)-w +I_e \end{split}$

and

$\tau_w * dw/dt= a(V-E_L) -W$

Parameters:

The following parameters can be set in the status dictionary.

 Dynamic state variables: V_m mV Membrane potential I_ex pA Excitatory synaptic current dI_ex pA/ms First derivative of I_ex I_in pA Inhibitory synaptic current dI_in pA/ms First derivative of I_in w pA Spike-adaptation current g pa Spike-adaptation current
 Membrane Parameters C_m pF Capacity of the membrane t_ref ms Duration of refractory period V_reset mV Reset value for V_m after a spike E_L mV Leak reversal potential g_L nS Leak conductance I_e pA Constant external input current
 Spike adaptation parameters a ns Subthreshold adaptation b pA Spike-triggered adaptation Delta_T mV Slope factor tau_w ms Adaptation time constant V_th mV Spike initiation threshold V_peak mV Spike detection threshold
 Synaptic parameters tau_syn_ex ms Rise time of excitatory synaptic conductance (alpha function) tau_syn_in ms Rise time of the inhibitory synaptic conductance (alpha function)
 Integration parameters gsl_error_tol real This parameter controls the admissible error of the GSL integrator. Reduce it if NEST complains about numerical instabilities

Author: Tanguy Fardet

Sends: SpikeEvent

Receives: SpikeEvent, CurrentEvent, DataLoggingRequest

References:

1

Brette R and Gerstner W (2005). Adaptive Exponential Integrate-and-Fire Model as an Effective Description of Neuronal Activity. J Neurophysiol 94:3637-3642. DOI: https://doi.org/10.1152/jn.00686.2005

SeeAlso: iaf_psc_alpha, aeif_cond_exp

class aeif_psc_delta : public Archiving_Node
#include <aeif_psc_delta.h>

Name: aeif_psc_delta - Current-based adaptive exponential integrate-and-fire neuron model according to Brette and Gerstner (2005) with delta synapse.

Description:

aeif_psc_delta is the adaptive exponential integrate and fire neuron according to Brette and Gerstner (2005), with post-synaptic currents in the form of delta spikes.

This implementation uses the embedded 4th order Runge-Kutta-Fehlberg solver with adaptive stepsize to integrate the differential equation.

The membrane potential is given by the following differential equation:

$\begin{split} C dV/dt= -g_L(V-E_L)+g_L*\Delta_T*\exp((V-V_T)/\Delta_T)-g_e(t)(V-E_e) \\ -g_i(t)(V-E_i)-w +I_e \end{split}$

and

$\tau_w * dw/dt= a(V-E_L) -W$

$I(t) = J \sum_k \delta(t - t^k).$

Here delta is the dirac delta function and k indexes incoming spikes. This is implemented such that V_m will be incremented/decremented by the value of J after a spike.

Parameters:

The following parameters can be set in the status dictionary.

 Dynamic state variables V_m mV Membrane potential w pA Spike-adaptation current
 Membrane Parameters C_m pF Capacity of the membrane t_ref ms Duration of refractory period V_reset mV Reset value for V_m after a spike E_L mV Leak reversal potential g_L nS Leak conductance I_e pA Constant external input current
 Spike adaptation parameters a ns Subthreshold adaptation b pA Spike-triggered adaptation tau_w ms Adaptation time constant Delta_T mV Slope factor tau_w ms Adaptation time constant V_th mV Spike initiation threshold V_peak mV Spike detection threshold
 Integration parameters gsl_error_tol real This parameter controls the admissible error of the GSL integrator. Reduce it if NEST complains about numerical instabilities.

Author: Mikkel Elle Lepperød adapted from aeif_psc_exp and iaf_psc_delta

Sends: SpikeEvent

Receives: SpikeEvent, CurrentEvent, DataLoggingRequest

References:

1

Brette R and Gerstner W (2005). Adaptive Exponential Integrate-and-Fire Model as an Effective Description of Neuronal Activity. J Neurophysiol 94:3637-3642. DOI: https://doi.org/10.1152/jn.00686.2005

SeeAlso: iaf_psc_delta, aeif_cond_exp, aeif_psc_exp

class aeif_psc_delta_clopath : public Clopath_Archiving_Node
#include <aeif_psc_delta_clopath.h>

Name: aeif_psc_delta_clopath - Exponential integrate-and-fire neuron model according to Clopath et al. (2010).

Description:

aeif_psc_delta_clopath is an implementation of the neuron model as it is used in [1]. It is an extension of the aeif_psc_delta model and capable of connecting to a Clopath synapse.

Note that there are two points that are not mentioned in the paper but present in a MATLAB implementation by Claudia Clopath [3]. The first one is the clamping of the membrane potential to a fixed value after a spike occured to mimik a real spike and not just the upswing. This is important since the finite duration of the spike influences the evolution of the convolved versions (u_bar_[plus/minus]) of the membrane potential and thus the change of the synaptic weight. Secondly, there is a delay with which u_bar_[plus/minus] are used to compute the change of the synaptic weight.

Parameters:

The following parameters can be set in the status dictionary.

 Dynamic state variables V_m mV Membrane potential w pA Spike-adaptation current z pA Spike-adaptation current V_th mV Adaptive spike initiation threshold u_bar_plus mV Low-pass filtered Membrane potential u_bar_minus mV Low-pass filtered Membrane potential u_bar_bar mV Low-pass filtered u_bar_minus
 Membrane Parameters C_m pF Capacity of the membrane t_ref ms Duration of refractory period V_reset mV Reset value for V_m after a spike E_L mV Leak reversal potential g_L nS Leak conductance I_e pA Constant external input current tau_plus ms Time constant of u_bar_plus tau_minus ms Time constant of u_bar_minus tau_bar_bar ms Time constant of u_bar_bar
 Spike adaptation parameters a nS Subthreshold adaptation b pA Spike-triggered adaptation Delta_T mV Slope factor tau_w ms Adaptation time constant V_peak mV Spike detection threshold V_th_max mV Value of V_th afer a spike V_th_rest mV Resting value of V_th
 Clopath rule parameters A_LTD 1/mV Amplitude of depression A_LTP 1/mV^2 Amplitude of facilitation theta_plus mV Threshold for u theta_minus mV Threshold for u_bar_[plus/minus] A_LTD_const boolean Flag that indicates whether A_LTD_ should be constant (true, default) or multiplied by u_bar_bar^2 / u_ref_squared (false). delay_u_bars real Delay with which u_bar_[plus/minus] are processed to compute the synaptic weights. U_ref_squared real Reference value for u_bar_bar_^2.
 Other parameters t_clamp ms Duration of clamping of Membrane potential after a spike V_clamp mV Value to which the Membrane potential is clamped
 Integration parameters gsl_error_tol real This parameter controls the admissible error of the GSL integrator. Reduce it if NEST complains about numerical instabilities.

Note:

Neither the clamping nor the delayed processing of u_bar_[plus/minus] are mentioned in [1]. However, they are part of an reference implementation by Claudia Clopath et al. that can be found on ModelDB [3]. The clamping is important to mimic a spike which is otherwise not described by the aeif neuron model.

Author: Jonas Stapmanns, David Dahmen, Jan Hahne

Sends: SpikeEvent

Receives: SpikeEvent, CurrentEvent, DataLoggingRequest

References:

1

Clopath et al. (2010). Connectivity reflects coding: a model of voltage-based STDP with homeostasis. Nature Neuroscience 13(3):344-352. DOI: https://doi.org/10.1038/nn.2479

2

Clopath and Gerstner (2010). Voltage and spike timing interact in STDP – a unified model. Frontiers in Synaptic Neuroscience. 2:25 DOI: https://doi.org/10.3389/fnsyn.2010.00025

3

Voltage-based STDP synapse (Clopath et al. 2010) on ModelDB https://senselab.med.yale.edu/ModelDB/showmodel.cshtml?model=144566&file=%2f modeldb_package%2fVoTriCode%2faEIF.m

SeeAlso: aeif_psc_delta, clopath_synapse, hh_psc_alpha_clopath

class aeif_psc_exp : public Archiving_Node
#include <aeif_psc_exp.h>

Name: aeif_psc_exp - Current-based exponential integrate-and-fire neuron model according to Brette and Gerstner (2005).

Description:

aeif_psc_exp is the adaptive exponential integrate and fire neuron according to Brette and Gerstner (2005), with post-synaptic currents in the form of truncated exponentials.

This implementation uses the embedded 4th order Runge-Kutta-Fehlberg solver with adaptive stepsize to integrate the differential equation.

The membrane potential is given by the following differential equation:

$\begin{split} C dV/dt= -g_L(V-E_L)+g_L*\Delta_T*\exp((V-V_T)/\Delta_T)-g_e(t)(V-E_e) \\ -g_i(t)(V-E_i)-w +I_e \end{split}$

and

$\tau_w * dw/dt= a(V-E_L) -W$

Note that the spike detection threshold V_peak is automatically set to $$V_th+10$$ mV to avoid numerical instabilites that may result from setting V_peak too high.

Parameters:

The following parameters can be set in the status dictionary.

 Dynamic state variables: V_m mV Membrane potential I_ex pA Excitatory synaptic current I_in pA Inhibitory synaptic current w pA Spike-adaptation current
 Membrane Parameters C_m pF Capacity of the membrane t_ref ms Duration of refractory period V_reset mV Reset value for V_m after a spike E_L mV Leak reversal potential g_L nS Leak conductance I_e pA Constant external input current
 Spike adaptation parameters a ns Subthreshold adaptation b pA Spike-triggered adaptation Delta_T mV Slope factor tau_w ms Adaptation time constant V_t mV Spike initiation threshold V_peak mV Spike detection threshold
 Synaptic parameters tau_syn_ex ms Rise time of excitatory synaptic conductance (alpha function) tau_syn_in ms Rise time of the inhibitory synaptic conductance (alpha function)
 Integration parameters gsl_error_tol real This parameter controls the admissible error of the GSL integrator. Reduce it if NEST complains about numerical instabilities

Author: Tanguy Fardet

Sends: SpikeEvent

Receives: SpikeEvent, CurrentEvent, DataLoggingRequest

References:

1

Brette R and Gerstner W (2005). Adaptive Exponential Integrate-and-Fire Model as an Effective Description of Neuronal Activity. J Neurophysiol 94:3637-3642. DOI: https://doi.org/10.1152/jn.00686.2005

SeeAlso: iaf_psc_exp, aeif_cond_exp

class amat2_psc_exp : public Archiving_Node
#include <amat2_psc_exp.h>

Name: amat2_psc_exp - Non-resetting leaky integrate-and-fire neuron model with exponential PSCs and adaptive threshold.

Description:

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

The threshold is lifted when the neuron is fired and then decreases in a fixed time scale toward a fixed level [3].

The threshold crossing is followed by a total refractory period during which the neuron is not allowed to fire, even if the membrane potential exceeds the threshold. The membrane potential is NOT reset, but continuously integrated.

The linear subthresold dynamics is integrated by the Exact Integration scheme [1]. 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 [1]. A flow chart can be found in [2].

Remarks:

• The default parameter values for this model are different from the corresponding parameter values for mat2_psc_exp.

• If identical parameters are used, and beta==0, then this model shall behave exactly as mat2_psc_exp.

• The time constants in the model must fullfill the following conditions:

• $$\tau_m != {\tau_{syn_{ex}}, \tau_{syn_{in}}}$$

• $$\tau_v != {\tau_{syn_{ex}}, \tau_{syn_{in}}}$$

• $$\tau_m != \tau_v$$ This is required to avoid singularities in the numerics. This is a problem of implementation only, not a principal problem of the model.

• Expect unstable numerics if time constants that are required to be different are very close.

Parameters:

The following parameters can be set in the status dictionary:

 C_m pF Capacity of the membrane E_L mV Resting potential tau_m ms Membrane time constant tau_syn_ex ms Time constant of postsynaptic excitatory currents tau_syn_in ms Time constant of postsynaptic inhibitory currents t_ref ms Duration of absolute refractory period (no spiking) V_m mV Membrane potential I_e pA Constant input current t_spike ms Point in time of last spike tau_1 ms Short time constant of adaptive threshold [3, eqs 2-3] tau_2 ms Long time constant of adaptive threshold [3, eqs 2-3] alpha_1 mV Amplitude of short time threshold adaption [3, eqs 2-3] alpha_2 mV Amplitude of long time threshold adaption [3, eqs 2-3] tau_v ms Time constant of kernel for voltage-dependent threshold component [3, eqs 16-17] beta 1/ms Scaling coefficient for voltage-dependent threshold component [3, eqs 16-17] omega mV Resting spike threshold (absolute value, not relative to E_L as in [3])
 State variables that can be read out with the multimeter device V_m mV Non-resetting membrane potential V_th mV Two-timescale adaptive threshold

Remarks:

$$\tau_m != \tau_{syn_{ex,in}}$$ is required by the current implementation to avoid a degenerate case of the ODE describing the model [1]. For very similar values, numerics will be unstable.

References:

1

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

2

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

3

Kobayashi R, Tsubo Y and Shinomoto S (2009). Made-to-order spiking neuron model equipped with a multi-timescale adaptive threshold. Frontiers in Computational Neuroscience, 3:9. DOI: https://dx.doi.org/10.3389%2Fneuro.10.009.2009

4

Yamauchi S, Kim H, Shinomoto S (2011). Elemental spiking neuron model for reproducing diverse firing patterns and predicting precise firing times. Frontiers in Computational Neuroscience, 5:42. DOI: https://doi.org/10.3389/fncom.2011.00042

Sends: SpikeEvent

Receives: SpikeEvent, CurrentEvent, DataLoggingRequest

FirstVersion: April 2013

Author: Thomas Heiberg & Hans E. Plesser (modified mat2_psc_exp model of Thomas Pfeil)

class gainfunction_erfc
#include <erfc_neuron.h>

Name: erfc_neuron - Binary stochastic neuron with complementary error function as activation function.

Description:

The erfc_neuron is an implementation of a binary neuron that is irregularly updated at Poisson time points. At each update point the total synaptic input h into the neuron is summed up, passed through a gain function g whose output is interpreted as the probability of the neuron to be in the active (1) state.

The gain function g used here is

$g(h) = 0.5 * erfc (( h - \theta ) / ( \sqrt( 2. ) * \sigma)).$

This corresponds to a McCulloch-Pitts neuron receiving additional Gaussian noise with mean 0 and standard deviation sigma. The time constant tau_m is defined as the mean of the inter-update-interval that is drawn from an exponential distribution with this parameter. Using this neuron to reproduce simulations with asynchronous update (similar to [1,2]), the time constant needs to be chosen as tau_m = dt*N, where dt is the simulation time step and N the number of neurons in the original simulation with asynchronous update. This ensures that a neuron is updated on average every tau_m ms. Since in the original papers [1,2] neurons are coupled with zero delay, this implementation follows that definition. It uses the update scheme described in [3] to maintain causality: The incoming events in time step t_i are taken into account at the beginning of the time step to calculate the gain function and to decide upon a transition. In order to obtain delayed coupling with delay d, the user has to specify the delay d+h upon connection, where h is the simulation time step.

Remarks:

This neuron has a special use for spike events to convey the binary state of the neuron to the target. The neuron model only sends a spike if a transition of its state occurs. If the state makes an up-transition it sends a spike with multiplicity 2, if a down transition occurs, it sends a spike with multiplicity 1. The decoding scheme relies on the feature that spikes with multiplicity larger 1 are delivered consecutively, also in a parallel setting. The creation of double connections between binary neurons will destroy the decoding scheme, as this effectively duplicates every event. Using random connection routines it is therefore advisable to set the property ‘multapses’ to false. The neuron accepts several sources of currents, e.g. from a noise_generator.

Parameters:

 tau_m ms Membrane time constant (mean inter-update-interval) theta mV threshold for sigmoidal activation function sigma mV 1/sqrt(2pi) x inverse of maximal slope

References:

1

Ginzburg I, Sompolinsky H (1994). Theory of correlations in stochastic neural networks. PRE 50(4) p. 3171 DOI: https://doi.org/10.1103/PhysRevE.50.3171

2

McCulloch W, Pitts W (1943). A logical calculus of the ideas immanent in nervous activity. Bulletin of Mathematical Biophysics, 5:115-133. DOI: https://doi.org/10.1007/BF02478259

3

Morrison A, Diesmann M (2007). Maintaining causality in discrete time neuronal simulations. In: Lectures in Supercomputational Neuroscience, p. 267. Peter beim Graben, Changsong Zhou, Marco Thiel, Juergen Kurths (Eds.), Springer. DOI: https://doi.org/10.1007/978-3-540-73159-7_10

Sends: SpikeEvent

FirstVersion: May 2016

Authors: Jakob Jordan, Tobias Kuehn

SeeAlso: mcculloch_pitts_neuron, ginzburg_neuron

class nonlinearities_gauss_rate
#include <gauss_rate.h>

Name: gauss_rate - rate model with Gaussian gain function

Description:

gauss_rate is an implementation of a nonlinear rate model with input function

$input(h) = g * \exp( -( x - \mu )^2 / ( 2 * \sigma^2 ) )$
. Input transformation can either be applied to individual inputs or to the sum of all inputs.

The model supports connections to other rate models with either zero or non-zero delay, and uses the secondary_event concept introduced with the gap-junction framework.

Parameters:

The following parameters can be set in the status dictionary.

 rate real Rate (unitless) tau ms Time constant of rate dynamics mu real Mean input sigma real Noise parameter g real Gain parameter mu real Mean of the Gaussian gain function sigma real Standard deviation of Gaussian gain function linear_summation boolean Specifies type of non-linearity (see above) rectify_output boolean Switch to restrict rate to values >= 0

Note:

The boolean parameter linear_summation determines whether the input from different presynaptic neurons is first summed linearly and then transformed by a nonlinearity (true), or if the input from individual presynaptic neurons is first nonlinearly transformed and then summed up (false). Default is true.

References:

1

Hahne J, Dahmen D, Schuecker J, Frommer A, Bolten M, Helias M, Diesmann M. (2017). Integration of continuous-time dynamics in a spiking neural network simulator. Frontiers in Neuroinformatics, 11:34. DOI: https://doi.org/10.3389/fninf.2017.00034

2

Hahne J, Helias M, Kunkel S, Igarashi J, Bolten M, Frommer A, Diesmann Mi (2015). A unified framework for spiking and gap-junction interactions in distributed neuronal network simulations. Frontiers in Neuroinformatics, 9:22. DOI: https://doi.org/10.3389/fninf.2015.00022

Sends: InstantaneousRateConnectionEvent, DelayedRateConnectionEvent

Receives: InstantaneousRateConnectionEvent, DelayedRateConnectionEvent, DataLoggingRequest

Author: Mario Senden, Jan Hahne, Jannis Schuecker

SeeAlso: rate_connection_instantaneous, rate_connection_delayed

class gif_cond_exp : public Archiving_Node
#include <gif_cond_exp.h>

Name: gif_cond_exp - Conductance-based generalized integrate-and-fire neuron model according to Mensi et al. (2012) and Pozzorini et al. (2015).

Description:

gif_psc_exp is the generalized integrate-and-fire neuron according to Mensi et al. (2012) and Pozzorini et al. (2015), with post-synaptic conductances in the form of truncated exponentials.

This model features both an adaptation current and a dynamic threshold for spike-frequency adaptation. The membrane potential (V) is described by the differential equation:

$C*dV(t)/dt = -g_L*(V(t)-E_L) - \eta_1(t) - \eta_2(t) - \ldots - \eta_n(t) + I(t)$

where each $$\eta_i$$ is a spike-triggered current (stc), and the neuron model can have arbitrary number of them. Dynamic of each $$\eta_i$$ is described by:

$\tau_\eta{_i}*d{\eta_i}/dt = -\eta_i$

and in case of spike emission, its value increased by a constant (which can be positive or negative):

$\eta_i = \eta_i + q_{\eta_i} \text{ (in case of spike emission).}$

Neuron produces spikes STOCHASTICALLY according to a point process with the firing intensity:

$\lambda(t) = \lambda_0 * \exp (V(t)-V_T(t)) / \Delta_V$

where $$V_T(t)$$ is a time-dependent firing threshold:

$V_T(t) = V_{T_star} + \gamma_1(t) + \gamma_2(t) + \ldots + \gamma_m(t)$

where $$\gamma_i$$ is a kernel of spike-frequency adaptation (sfa), and the neuron model can have arbitrary number of them. Dynamic of each $$\gamma_i$$ is described by:

$\tau_{\gamma_i}*d\gamma_i/dt = -\gamma_i$
and in case of spike emission, its value increased by a constant (which can be positive or negative):
$\gamma_i = \gamma_i + q_{\gamma_i} \text{ (in case of spike emission).}$

Note:

In the current implementation of the model (as described in [1] and [2]), the values of $$\eta_i$$ and $$\gamma_i$$ are affected immediately after spike emission. However, GIF toolbox (http://wiki.epfl.ch/giftoolbox) which fits the model using experimental data, requires a different set of $$\eta_i$$ and $$\gamma_i$$ . It applies the jump of $$\eta_i$$ and $$\gamma_i$$ after the refractory period. One can easily convert between $$q_\eta/\gamma$$ of these two approaches: $$q{_\eta}_{giftoolbox} = q_{\eta_{NEST}} * (1 - \exp( -\tau_{ref} / \tau_\eta ))$$ The same formula applies for $$q_{\gamma}$$.

The shape of synaptic conductance is exponential.

Parameters:

The following parameters can be set in the status dictionary.

 Membrane Parameters C_m pF Capacity of the membrane t_ref ms Duration of refractory period V_reset mV Reset value for V_m after a spike E_L mV Leak reversal potential g_L nS Leak conductance I_e pA Constant external input current
 Spike adaptation and firing intensity parameters q_stc list of nA Values added to spike-triggered currents (stc) after each spike emission tau_stc list of ms Time constants of stc variables q_sfa list of mV Values added to spike-frequency adaptation (sfa) after each spike emission tau_sfa list of ms Time constants of sfa variables Delta_V mV Stochasticity level lambda_0 real Stochastic intensity at firing threshold V_T i n 1/s. V_T_star mV Base threshold
 Synaptic parameters E_ex mV Excitatory reversal potential tau_syn_ex ms Decay time of excitatory synaptic conductance E_in mV Inhibitory reversal potential tau_syn_in ms Decay time of the inhibitory synaptic conductance
 Integration parameters gsl_error_tol real This parameter controls the admissible error of the GSL integrator. Reduce it if NEST complains about numerical instabilities.

References:

1

Mensi S, Naud R, Pozzorini C, Avermann M, Petersen CC, Gerstner W (2012) Parameter extraction and classification of three cortical neuron types reveals two distinct adaptation mechanisms. Journal of Neurophysiology, 107(6):1756-1775. DOI: https://doi.org/10.1152/jn.00408.2011

2

Pozzorini C, Mensi S, Hagens O, Naud R, Koch C, Gerstner W (2015). Automated high-throughput characterization of single neurons by means of simplified spiking models. PLoS Computational Biology, 11(6), e1004275. DOI: https://doi.org/10.1371/journal.pcbi.1004275

Sends: SpikeEvent

Receives: SpikeEvent, CurrentEvent, DataLoggingRequest

Author: March 2016, Setareh

SeeAlso: pp_psc_delta, gif_cond_exp_multisynapse, gif_psc_exp, gif_psc_exp_multisynapse

class gainfunction_ginzburg
#include <ginzburg_neuron.h>

Name: ginzburg_neuron - Binary stochastic neuron with sigmoidal activation function.

Description:

The ginzburg_neuron is an implementation of a binary neuron that is irregularly updated as Poisson time points. At each update point the total synaptic input h into the neuron is summed up, passed through a gain function g whose output is interpreted as the probability of the neuron to be in the active (1) state.

The gain function g used here is $$g(h) = c1*h + c2 * 0.5*(1 + \tanh(c3*(h-\theta)))$$ (output clipped to [0,1]). This allows to obtain affin-linear (c1!=0, c2!=0, c3=0) or sigmoidal (c1=0, c2=1, c3!=0) shaped gain functions. The latter choice corresponds to the definition in [1], giving the name to this neuron model. The choice c1=0, c2=1, c3=beta/2 corresponds to the Glauber dynamics [2], $$g(h) = 1 / (1 + \exp(-\beta (h-\theta)))$$. The time constant $$\tau_m$$ is defined as the mean inter-update-interval that is drawn from an exponential distribution with this parameter. Using this neuron to reprodce simulations with asynchronous update [1], the time constant needs to be chosen as $$\tau_m = dt*N$$, where dt is the simulation time step and N the number of neurons in the original simulation with asynchronous update. This ensures that a neuron is updated on average every $$\tau_m$$ ms. Since in the original paper [1] neurons are coupled with zero delay, this implementation follows this definition. It uses the update scheme described in [3] to maintain causality: The incoming events in time step $$t_i$$ are taken into account at the beginning of the time step to calculate the gain function and to decide upon a transition. In order to obtain delayed coupling with delay d, the user has to specify the delay d+h upon connection, where h is the simulation time step.

Remarks:

This neuron has a special use for spike events to convey the binary state of the neuron to the target. The neuron model only sends a spike if a transition of its state occurs. If the state makes an up-transition it sends a spike with multiplicity 2, if a down transition occurs, it sends a spike with multiplicity 1. The decoding scheme relies on the feature that spikes with multiplicity larger 1 are delivered consecutively, also in a parallel setting. The creation of double connections between binary neurons will destroy the deconding scheme, as this effectively duplicates every event. Using random connection routines it is therefore advisable to set the property ‘multapses’ to false. The neuron accepts several sources of currents, e.g. from a noise_generator.

Parameters:

 tau_m ms Membrane time constant (mean inter-update-interval) theta mV Threshold for sigmoidal activation function c1 probability/ mV Linear gain factor c2 probability Prefactor of sigmoidal gain c3 1/mV Slope factor of sigmoidal gain

References:

1

Ginzburg I, Sompolinsky H (1994). Theory of correlations in stochastic neural networks. PRE 50(4) p. 3171 DOI: https://doi.org/10.1103/PhysRevE.50.3171

2

Hertz J, Krogh A, Palmer R (1991). Introduction to the theory of neural computation. Addison-Wesley Publishing Conmpany.

3

Morrison A, Diesmann M (2007). Maintaining causality in discrete time neuronal simulations. In: Lectures in Supercomputational Neuroscience, p. 267. Peter beim Graben, Changsong Zhou, Marco Thiel, Juergen Kurths (Eds.), Springer. DOI: https://doi.org/10.1007/978-3-540-73159-7_10

Sends: SpikeEvent

FirstVersion: February 2010

Author: Moritz Helias

SeeAlso: pp_psc_delta

class hh_cond_beta_gap_traub : public Archiving_Node
#include <hh_cond_beta_gap_traub.h>

Name: hh_cond_beta_gap_traub - modified Hodgkin-Huxley neuron as featured in Brette et al (2007) review with added gap junction support and beta function synaptic conductance.

Description:

hh_cond_beta_gap_traub is an implementation of a modified Hodgkin-Huxley model that also supports gap junctions.

This model was specifically developed for a major review of simulators [1], based on a model of hippocampal pyramidal cells by Traub and Miles[2]. The key differences between the current model and the model in [2] are:

• This model is a point neuron, not a compartmental model.

• This model includes only I_Na and I_K, with simpler I_K dynamics than in [2], so it has only three instead of eight gating variables; in particular, all Ca dynamics have been removed.

• Incoming spikes induce an instantaneous conductance change followed by exponential decay instead of activation over time.

This model is primarily provided as reference implementation for hh_coba example of the Brette et al (2007) review. Default parameter values are chosen to match those used with NEST 1.9.10 when preparing data for [1]. Code for all simulators covered is available from ModelDB [3].

Note: In this model, a spike is emitted if

$V_m >= V_T + 30 mV and V_m has fallen during the current time step$

To avoid that this leads to multiple spikes during the falling flank of a spike, it is essential to chose a sufficiently long refractory period. Traub and Miles used $$t_ref = 3 ms$$ [2, p 118], while we used $$t_ref = 2 ms$$ in [2].

Post-synaptic currents Incoming spike events induce a post-synaptic change of conductance modelled by a beta function as outlined in [4,5]. The beta function is normalised such that an event of weight 1.0 results in a peak current of 1 nS at $$t = tau_rise_xx$$ where xx is ex or in.

Spike Detection Spike detection is done by a combined threshold-and-local-maximum search: if there is a local maximum above a certain threshold of the membrane potential, it is considered a spike.

Gap Junctions Gap Junctions are implemented by a gap current of the form $$g_ij( V_i - V_j)$$.

Parameters:

The following parameters can be set in the status dictionary.

 V_m mV Membrane potential V_T mV Voltage offset that controls dynamics. For default parameters, V_T = -63mV results in a threshold around -50mV E_L mV Leak reversal potential C_m pF Capacity of the membrane g_L nS Leak conductance tau_rise_ex ms Excitatory synaptic beta function rise time tau_decay_ex ms Excitatory synaptic beta function decay time tau_rise_in ms Inhibitory synaptic beta function rise time tau_decay_in ms Inhibitory synaptic beta function decay time t_ref ms Duration of refractory period (see Note) E_ex mV Excitatory synaptic reversal potential E_in mV Inhibitory synaptic reversal potential E_Na mV Sodium reversal potential g_Na nS Sodium peak conductance E_K mV Potassium reversal potential g_K nS Potassium peak conductance I_e pA External input current

References:

1

Brette R et al (2007). Simulation of networks of spiking neurons: A review of tools and strategies. Journal of Computational Neuroscience 23:349-98. DOI: https://doi.org/10.1007/s10827-007-0038-6

2

Traub RD and Miles R (1991). Neuronal Networks of the Hippocampus. Cambridge University Press, Cambridge UK.

3

http://modeldb.yale.edu/83319

4

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

5

Roth A and van Rossum M (2010). Chapter 6: Modeling synapses. in De Schutter, Computational Modeling Methods for Neuroscientists, MIT Press.

Sends: SpikeEvent

Receives: SpikeEvent, CurrentEvent, DataLoggingRequest

Author: Daniel Naoumenko (modified hh_cond_exp_traub by Schrader and hh_psc_alpha_gap by Jan Hahne, Moritz Helias and Susanne Kunkel)

SeeAlso: hh_psc_alpha_gap, hh_cond_exp_traub, gap_junction, iaf_cond_beta

class hh_psc_alpha : public Archiving_Node
#include <hh_psc_alpha.h>

Name: hh_psc_alpha - Hodgkin-Huxley neuron model.

Description:

hh_psc_alpha is an implementation of a spiking neuron using the Hodgkin-Huxley formalism.

1. Post-synaptic currents Incoming spike events induce a post-synaptic change of current modelled by an alpha function. The alpha function is normalised such that an event of weight 1.0 results in a peak current of 1 pA.

2. Spike Detection Spike detection is done by a combined threshold-and-local-maximum search: if there is a local maximum above a certain threshold of the membrane potential, it is considered a spike.

Parameters:

The following parameters can be set in the status dictionary.

 V_m mV Membrane potential E_L mV Leak reversal potential C_m pF Capacity of the membrane g_L nS Leak conductance tau_ex ms Rise time of the excitatory synaptic alpha function tau_in ms Rise time of the inhibitory synaptic alpha function E_Na mV Sodium reversal potential g_Na nS Sodium peak conductance E_K mV Potassium reversal potential g_K nS Potassium peak conductance Act_m real Activation variable m Act_h real Activation variable h Inact_n real Inactivation variable n I_e pA External input current

Problems/Todo:

better spike detection initial wavelet/spike at simulation onset

References:

1

Gerstner W, Kistler W (2002). Spiking neuron models: Single neurons, populations, plasticity. New York: Cambridge University Press

2

Dayan P, Abbott LF (2001). Theoretical neuroscience: Computational and mathematical modeling of neural systems. Cambridge, MA: MIT Press. https://pure.mpg.de/pubman/faces/ViewItemOverviewPage.jsp?itemId=item_3006127>

3

Hodgkin AL and Huxley A F (1952). A quantitative description of membrane current and its application to conduction and excitation in nerve. The Journal of Physiology 117. DOI: https://doi.org/10.1113/jphysiol.1952.sp004764

Sends: SpikeEvent

Receives: SpikeEvent, CurrentEvent, DataLoggingRequest

SeeAlso: hh_cond_exp_traub

class hh_psc_alpha_clopath : public Clopath_Archiving_Node
#include <hh_psc_alpha_clopath.h>

Name: hh_psc_alpha_clopath - Hodgkin-Huxley neuron model with support for the Clopath synapse.

Description:

hh_psc_alpha_clopath is an implementation of a spiking neuron using the Hodgkin-Huxley formalism and that is capable of connecting to a Clopath synapse.

(1) Post-synaptic currents Incoming spike events induce a post-synaptic change of current modelled by an alpha function. The alpha function is normalised such that an event of weight 1.0 results in a peak current of 1 pA.

(2) Spike Detection Spike detection is done by a combined threshold-and-local-maximum search: if there is a local maximum above a certain threshold of the membrane potential, it is considered a spike.

Parameters:

The following parameters can be set in the status dictionary.

 Dynamic state variables V_m mV Membrane potential u_bar_plus mV Low-pass filtered Membrane potential u_bar_minus mV Low-pass filtered Membrane potential u_bar_bar mV Low-pass filtered u_bar_minus
 Membrane Parameters E_L mV Leak reversal potential C_m pF Capacity of the membrane g_L nS Leak conductance tau_ex ms Rise time of the excitatory synaptic alpha function tau_in ms Rise time of the inhibitory synaptic alpha function E_Na mV Sodium reversal potential g_Na nS Sodium peak conductance E_K mV Potassium reversal potential g_K nS Potassium peak conductance Act_m real Activation variable m Act_h real Activation variable h Inact_n real Inactivation variable n I_e pA External input current
 Clopath rule parameters A_LTD 1/mV Amplitude of depression A_LTP 1/mV^2 Amplitude of facilitation theta_plus mV Threshold for u theta_minus mV Threshold for u_bar_[plus/minus] A_LTD_const boolean Flag that indicates whether A_LTD_ should be constant (true, default) or multiplied by u_bar_bar^2 / u_ref_squared (false). delay_u_bars real Delay with which u_bar_[plus/minus] are processed to compute the synaptic weights. U_ref_squared real Reference value for u_bar_bar_^2.

Problems/Todo:

better spike detection initial wavelet/spike at simulation onset

References:

1

Gerstner W and Kistler WM (2002). Spiking neuron models: Single neurons, populations, plasticity. New York: Cambridge university press.

2

Dayan P and Abbott L (2001). Theoretical Neuroscience: Computational and Mathematical Modeling of Neural Systems. Cambridge, MA: MIT Press. https://pure.mpg.de/pubman/faces/ViewItemOverviewPage.jsp?itemId=item_3006127

3

Hodgkin AL and Huxley A F (1952). A quantitative description of membrane current and its application to conduction and excitation in nerve. The Journal of Physiology 117. DOI: https://doi.org/10.1113/jphysiol.1952.sp004764

4

Clopath et al. (2010). Connectivity reflects coding: a model of voltage-based STDP with homeostasis. Nature Neuroscience 13(3):344-352. DOI: https://doi.org/10.1038/nn.2479

5

Clopath and Gerstner (2010). Voltage and spike timing interact in STDP – a unified model. Frontiers in Synaptic Neuroscience. 2:25 DOI: https://doi.org/10.3389/fnsyn.2010.00025

6

Voltage-based STDP synapse (Clopath et al. 2010) connected to a Hodgkin-Huxley neuron on ModelDB: https://senselab.med.yale.edu/ModelDB/showmodel.cshtml?model=144566&file =%2fmodeldb_package%2fstdp_cc.mod

Sends: SpikeEvent

Receives: SpikeEvent, CurrentEvent, DataLoggingRequest

Author: Jonas Stapmanns, David Dahmen, Jan Hahne (adapted from hh_psc_alpha by Schrader)

SeeAlso: hh_psc_alpha, clopath_synapse, aeif_psc_delta_clopath

class hh_psc_alpha_gap : public Archiving_Node
#include <hh_psc_alpha_gap.h>

Name: hh_psc_alpha_gap - Hodgkin-Huxley neuron model with gap-junction support.

Description:

hh_psc_alpha_gap is an implementation of a spiking neuron using the Hodgkin-Huxley formalism. In contrast to hh_psc_alpha the implementation additionally supports gap junctions.

1. Post-synaptic currents Incoming spike events induce a post-synaptic change of current modelled by an alpha function. The alpha function is normalised such that an event of weight 1.0 results in a peak current of 1 pA.

2. Spike Detection Spike detection is done by a combined threshold-and-local-maximum search: if there is a local maximum above a certain threshold of the membrane potential, it is considered a spike.

3. Gap Junctions Gap Junctions are implemented by a gap current of the form $$g_ij( V_i - V_j)$$.

Parameters:

The following parameters can be set in the status dictionary.

 tau_ex ms Rise time of the excitatory synaptic alpha function tau_in ms Rise time of the inhibitory synaptic alpha function g_K nS Potassium peak conductance V_m mV Membrane potential E_L mV Leak reversal potential g_L nS Leak conductance C_m pF Capacity of the membrane tau_syn_ex ms Rise time of the excitatory synaptic alpha function tau_syn_in ms Rise time of the inhibitory synaptic alpha function E_Na mV Sodium reversal potential g_Na nS Sodium peak conductance E_K mV Potassium reversal potential g_Kv1 nS Potassium peak conductance g_Kv3 nS Potassium peak conductance Act_m real Activation variable m Act_h real Activation variable h Inact_n real Inactivation variable n I_e pA External input current

References:

1

Gerstner W, Kistler W. Spiking neuron models: Single neurons, populations, plasticity. Cambridge University Press

2

Mancilla JG, Lewis TG, Pinto DJ, Rinzel J, Connors BW (2007). Synchronization of electrically coupled pairs of inhibitory interneurons in neocortex, Journal of Neurosciece, 27:2058-2073 DOI: https://doi.org/10.1523/JNEUROSCI.2715-06.2007 (parameters taken from here)

3

Hodgkin AL and Huxley A F (1952). A quantitative description of membrane current and its application to conduction and excitation in nerve. The Journal of Physiology 117. DOI: https://doi.org/10.1113/jphysiol.1952.sp004764

4

Hahne J, Helias M, Kunkel S, Igarashi J, Bolten M, Frommer A, Diesmann M (2015). A unified framework for spiking and gap-junction interactions in distributed neuronal netowrk simulations. Frontiers in Neuroinformatics, 9:22. DOI: https://doi.org/10.3389/fninf.2015.00022

Sends: SpikeEvent, GapJunctionEvent

Receives: SpikeEvent, GapJunctionEvent, CurrentEvent, DataLoggingRequest

Author: Jan Hahne, Moritz Helias, Susanne Kunkel

SeeAlso: hh_psc_alpha, hh_cond_exp_traub, gap_junction

class ht_neuron : public Archiving_Node
#include <ht_neuron.h>

Name: ht_neuron - Neuron model after Hill & Tononi (2005).

Description:

This model neuron implements a slightly modified version of the neuron model described in [1]. The most important properties are:

• Integrate-and-fire with threshold adaptive threshold.

• Repolarizing potassium current instead of hard reset.

• AMPA, NMDA, GABA_A, and GABA_B conductance-based synapses with beta-function (difference of exponentials) time course.

• Voltage-dependent NMDA with instantaneous or two-stage unblocking [1, 2].

• Intrinsic currents I_h, I_T, I_Na(p), and I_KNa.

• Synaptic “minis” are not implemented.

Documentation and Examples:

• docs/model_details/HillTononiModels.ipynb

• pynest/examples/intrinsic_currents_spiking.py

• pynest/examples/intrinsic_currents_subthreshold.py

Parameters:

 V_m mV Membrane potential tau_m ms Membrane time constant applying to all currents except repolarizing K-current (see [1], p 1677) t_ref ms Refractory time and duration of post-spike repolarizing potassium current (t_spike in [1]) tau_spike ms Membrane time constant for post-spike repolarizing potassium current voltage_clamp boolean If true, clamp voltage to value at beginning of simulation (default: false, mainly for testing) theta mV Threshold theta_eq mV Equilibrium value tau_theta ms Time constant g_KL nS Conductance for potassium leak current E_K mV Reversal potential for potassium leak currents g_NaL nS Conductance for sodium leak currents E_Na mV Reversal potential for Na leak currents tau_D_KNa ms Relaxation time constant for I_KNa receptor_types Dictionary mapping synapse names to ports on neuron model recordables List of recordable quantities
 {E_rev,g_peak,tau_rise,tau_decay}_{AMPA,NMDA,GABA_A,GABA_B} Reversal potentials, peak conductances and time constants for synapses (tau_rise/tau_decay correspond to tau_1/tau_2 in the paper)
 V_act_NMDA, S_act_NMDA, tau_Mg_{fast, slow}_NMDA Parameters for voltage dependence of NMDA- conductance, see above
 nstant_unblock_NMDA Instantaneous NMDA unblocking (default: false) {E_rev,g_peak}_{h,T,NaP,KNa} Reversal potential and peak conductance for intrinsic currents equilibrate If given and true, time-dependent activation and inactivation state variables (h, m) of intrinsic currents and NMDA channels are set to their equilibrium values during this SetStatus call; otherwise they retain their present values.

Conductances are unitless in this model and currents are in mV.

Author: Hans Ekkehard Plesser

Sends: SpikeEvent Receives: SpikeEvent, CurrentEvent, DataLoggingRequest

FirstVersion: October 2009; full revision November 2016

References:

1

Hill S, Tononi G (2005). Modeling sleep and wakefulness in the thalamocortical system. Journal of Neurophysiology. 93:1671-1698. DOI: https://doi.org/10.1152/jn.00915.2004

2

Vargas-Caballero M, Robinson HPC (2003). A slow fraction of Mg2+ unblock of NMDA receptors limits their contribution to spike generation in cortical pyramidal neurons. Journal of Neurophysiology 89:2778-2783. DOI: https://doi.org/10.1152/jn.01038.2002

SeeAlso: ht_connection

class iaf_chs_2007 : public Archiving_Node
#include <iaf_chs_2007.h>

Name: iaf_chs_2007 - Spike-response model used in Carandini et al 2007.

Description:

The membrane potential is the sum of stereotyped events: the postsynaptic potentials (V_syn), waveforms that include a spike and the subsequent after-hyperpolarization (V_spike) and Gaussian-distributed white noise.

The postsynaptic potential is described by alpha function where U_epsp is the maximal amplitude of the EPSP and tau_epsp is the time to peak of the EPSP.

The spike waveform is described as a delta peak followed by a membrane potential reset and exponential decay. U_reset is the magnitude of the reset/after-hyperpolarization and tau_reset is the time constant of recovery from this hyperpolarization.

The linear subthresold dynamics is integrated by the Exact Integration scheme [1]. 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.

Remarks: The way the noise term was implemented in the original model makes it unsuitable for simulation in NEST. The workaround was to prepare the noise signal externally prior to simulation. The noise signal, if present, has to be at least as long as the simulation.

Parameters:

The following parameters can be set in the status dictionary.

 tau_epsp ms Membrane time constant tau_reset ms Refractory time constant U_epsp real Maximum amplitude of the EPSP, normalized U_reset real Reset value of the membrane potential, normalized U_noise real Noise scale, normalized noise list of real Noise signal

References:

1

Carandini M, Horton JC, Sincich LC (2007). Thalamic filtering of retinal spike trains by postsynaptic summation. Journal of Vision 7(14):20,1-11. DOI: https://doi.org/10.1167/7.14.20

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

Sends: SpikeEvent

FirstVersion: May 2012

Author: Thomas Heiberg, Birgit Kriener

class iaf_chxk_2008 : public Archiving_Node
#include <iaf_chxk_2008.h>

Name: iaf_chxk_2008 - Conductance based leaky integrate-and-fire neuron model used in Casti et al 2008.

Description:

iaf_chxk_2008 is an implementation of a spiking neuron using IAF dynamics with conductance-based synapses [1]. It is modeled after iaf_cond_alpha with the addition of after hyper-polarization current instead of a membrane potential reset. Incoming spike events induce a post-synaptic change of conductance modeled by an alpha function. The alpha function is normalized such that an event of weight 1.0 results in a peak current of 1 nS at $$t = tau_{syn}$$.

Parameters:

The following parameters can be set in the status dictionary.

 V_m mV Membrane potential E_L mV Leak reversal potential C_m pF Capacity of the membrane V_th mV Spike threshold E_ex mV Excitatory reversal potential E_in mV Inhibitory reversal potential g_L nS Leak conductance tau_ex ms Rise time of the excitatory synaptic alpha function tau_in ms Rise time of the inhibitory synaptic alpha function I_e pA Constant input current tau_ahp ms Afterhyperpolarization (AHP) time constant E_ahp mV AHP potential g_ahp nS AHP conductance ahp_bug boolean Defaults to false. If true, behaves like original model implementation

References:

1

Casti A, Hayot F, Xiao Y, Kaplan E (2008) A simple model of retina-LGN transmission. Journal of Computational Neuroscience 24:235-252. DOI: https://doi.org/10.1007/s10827-007-0053-7

Sends: SpikeEvent

Author: Heiberg

SeeAlso: iaf_cond_alpha

class iaf_cond_alpha : public Archiving_Node
#include <iaf_cond_alpha.h>

Name: iaf_cond_alpha - Simple conductance based leaky integrate-and-fire neuron model.

Description:

iaf_cond_alpha is an implementation of a spiking neuron using IAF dynamics with conductance-based synapses. Incoming spike events induce a post-synaptic change of conductance modelled by an alpha function. The alpha function is normalised such that an event of weight 1.0 results in a peak current of 1 nS at $$t = tau_{syn}$$.

Parameters:

The following parameters can be set in the status dictionary.

 V_m mV Membrane potential E_L mV Leak reversal potential C_m pF Capacity of the membrane t_ref ms Duration of refractory period V_th mV Spike threshold V_reset mV Reset potential of the membrane E_ex mV Excitatory reversal potential E_in mV Inhibitory reversal potential g_L nS Leak conductance tau_syn_ex ms Rise time of the excitatory synaptic alpha function tau_syn_in ms Rise time of the inhibitory synaptic alpha function I_e pA Constant input current

Sends: SpikeEvent

Receives: SpikeEvent, CurrentEvent, DataLoggingRequest

Remarks:

References:

Note

Per 2009-04-17, this class has been revised to our newest insights into class design. Please use THIS CLASS as a reference when designing your own models with nonlinear dynamics. One weakness of this class is that it distinguishes between inputs to the two synapses by the sign of the synaptic weight. It would be better to use receptor_types, cf iaf_cond_alpha_mc.

1

Meffin H, Burkitt AN, Grayden DB (2004). An analytical model for the large, fluctuating synaptic conductance state typical of neocortical neurons in vivo. Journal of Computational Neuroscience, 16:159-175. DOI: https://doi.org/10.1023/B:JCNS.0000014108.03012.81

2

Bernander O, Douglas RJ, Martin KAC, Koch C (1991). Synaptic background activity influences spatiotemporal integration in single pyramidal cells. Proceedings of the National Academy of Science USA, 88(24):11569-11573. DOI: https://doi.org/10.1073/pnas.88.24.11569

3

Kuhn A, Rotter S (2004) Neuronal integration of synaptic input in the fluctuation- driven regime. Journal of Neuroscience, 24(10):2345-2356 DOI: https://doi.org/10.1523/JNEUROSCI.3349-03.2004

SeeAlso: iaf_cond_exp, iaf_cond_alpha_mc

class iaf_cond_alpha_mc : public Archiving_Node
#include <iaf_cond_alpha_mc.h>

Name: iaf_cond_alpha_mc - PROTOTYPE Multi-compartment conductance-based leaky integrate-and-fire neuron model.

Description:

THIS MODEL IS A PROTOTYPE FOR ILLUSTRATION PURPOSES. IT IS NOT YET FULLY TESTED. USE AT YOUR OWN PERIL!

iaf_cond_alpha_mc is an implementation of a multi-compartment spiking neuron using IAF dynamics with conductance-based synapses. It serves mainly to illustrate the implementation of multicompartment models in NEST.

The model has three compartments: soma, proximal and distal dendrite, labeled as s, p, and d, respectively. Compartments are connected through passive conductances as follows

$\begin{split} C_{m.s} d/dt V_{m.s} = \ldots - g_{sp} ( V_{m.s} - V_{m.p} ) \\ C_{m.p} d/dt V_{m.p} = \ldots - g_{sp} ( V_{m.p} - V_{m.s} ) - g_{pd} ( V_{m.p} - V_{m.d} ) \\ C_{m.d} d/dt V_{m.d} = \ldots \qquad - g_{pd} ( V_{m.d} - V_{m.p} ) \end{split}$
A spike is fired when the somatic membrane potential exceeds threshold, $$V_{m.s} >= V_{th}$$. After a spike, somatic membrane potential is clamped to a reset potential, $$V_{m.s} == V_{reset}$$, for the refractory period. Dendritic membrane potentials are not manipulated after a spike.

There is one excitatory and one inhibitory conductance-based synapse onto each compartment, with alpha-function time course. The alpha function is normalised such that an event of weight 1.0 results in a peak current of 1 nS at t = tau_syn. Each compartment can also receive current input from a current generator, and an external (rheobase) current can be set for each compartment.

Synapses, including those for injection external currents, are addressed through the receptor types given in the receptor_types entry of the state dictionary. Note that in contrast to the single-compartment iaf_cond_alpha model, all synaptic weights must be positive numbers!

Parameters:

The following parameters can be set in the status dictionary. Parameters for each compartment are collected in a sub-dictionary; these sub-dictionaries are called “soma”, “proximal”, and “distal”, respectively. In the list below, these parameters are marked with an asterisk.

 V_m* mV Membrane potential E_L* mV Leak reversal potential C_m* pF Capacity of the membrane E_ex* mV Excitatory reversal potential E_in* mV Inhibitory reversal potential g_L* nS Leak conductance tau_syn_ex* ms Rise time of the excitatory synaptic alpha function tau_syn_in* ms Rise time of the inhibitory synaptic alpha function I_e* pA Constant input current g_sp nS Conductance connecting soma and proximal dendrite g_pd nS Conductance connecting proximal and distal dendrite t_ref ms Duration of refractory period V_th mV Spike threshold in mV V_reset mV Reset potential of the membrane

Example: See pynest/examples/mc_neuron.py.

Remarks:

This is a prototype for illustration which has undergone only limited testing. Details of the implementation and user-interface will likely change. USE AT YOUR OWN PERIL!

Sends: SpikeEvent

Note

All parameters that occur for both compartments and dendrite are stored as C arrays, with index 0 being soma.

Receives: SpikeEvent, CurrentEvent, DataLoggingRequest

References:

1

Meffin H, Burkitt AN, Grayden DB (2004). An analytical model for the large, fluctuating synaptic conductance state typical of neocortical neurons in vivo. Journal of Computational Neuroscience, 16:159-175. DOI: https://doi.org/10.1023/B:JCNS.0000014108.03012.81

2

Bernander O, Douglas RJ, Martin KAC, Koch C (1991). Synaptic background activity influences spatiotemporal integration in single pyramidal cells. Proceedings of the National Academy of Science USA, 88(24):11569-11573. DOI: https://doi.org/10.1073/pnas.88.24.11569

Author: Plesser

SeeAlso: iaf_cond_alpha

class iaf_cond_beta : public Archiving_Node
#include <iaf_cond_beta.h>

Name: iaf_cond_beta - Simple conductance based leaky integrate-and-fire neuron model.

Description:

iaf_cond_beta is an implementation of a spiking neuron using IAF dynamics with conductance-based synapses. Incoming spike events induce a post-synaptic change of conductance modelled by an beta function. The beta function is normalised such that an event of weight 1.0 results in a peak current of 1 nS at t = tau_rise_[ex|in].

Parameters:

The following parameters can be set in the status dictionary.

 V_m mV Membrane potential E_L mV Leak reversal potential C_m pF Capacity of the membrane t_ref ms Duration of refractory period V_th mV Spike threshold V_reset mV Reset potential of the membrane E_ex mV Excitatory reversal potential E_in mV Inhibitory reversal potential g_L nS Leak conductance tau_syn_ex ms Rise time of the excitatory synaptic alpha function tau_decay_ex ms Rise time of the excitatory synaptic beta function tau_syn_in ms Rise time of the inhibitory synaptic alpha function tau_decay_in ms Rise time of the inhibitory synaptic beta function I_e pA Constant input current

Sends: SpikeEvent

Receives: SpikeEvent, CurrentEvent, DataLoggingRequest

Remarks:

References:

Note

Per 2009-04-17, this class has been revised to our newest insights into class design. Please use THIS CLASS as a reference when designing your own models with nonlinear dynamics. One weakness of this class is that it distinguishes between inputs to the two synapses by the sign of the synaptic weight. It would be better to use receptor_types, cf iaf_cond_alpha_mc.

1

Meffin H, Burkitt AN, Grayden DB (2004). An analytical model for the large, fluctuating synaptic conductance state typical of neocortical neurons in vivo. Journal of Computational Neuroscience, 16:159-175. DOI: https://doi.org/10.1023/B:JCNS.0000014108.03012.81

2

Bernander O, Douglas RJ, Martin KAC, Koch C (1991). Synaptic background activity influences spatiotemporal integration in single pyramidal cells. Proceedings of the National Academy of Science USA, 88(24):11569-11573. DOI: https://doi.org/10.1073/pnas.88.24.11569

3

Kuhn A, Rotter S (2004) Neuronal integration of synaptic input in the fluctuation- driven regime. Journal of Neuroscience, 24(10):2345-2356 DOI: https://doi.org/10.1523/JNEUROSCI.3349-03.2004

4

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

5

Roth A and van Rossum M (2010). Chapter 6: Modeling synapses. in De Schutter, Computational Modeling Methods for Neuroscientists, MIT Press.

Author: Daniel Naoumenko (modified iaf_cond_alpha by Schrader, Plesser)

class iaf_cond_exp : public Archiving_Node
#include <iaf_cond_exp.h>

Name: iaf_cond_exp - Simple conductance based leaky integrate-and-fire neuron model.

Description:

iaf_cond_exp is an implementation of a spiking neuron using IAF dynamics with conductance-based synapses. Incoming spike events induce a post-synaptic change of conductance modelled by an exponential function. The exponential function is normalised such that an event of weight 1.0 results in a peak conductance of 1 nS.

Parameters:

The following parameters can be set in the status dictionary.

 V_m mV Membrane potential E_L mV Leak reversal potential C_m pF Capacity of the membrane t_ref ms Duration of refractory period V_th mV Spike threshold V_reset mV Reset potential of the membrane E_ex mV Excitatory reversal potential E_in mV Inhibitory reversal potential g_L nS Leak conductance tau_syn_ex ms Rise time of the excitatory synaptic alpha function tau_syn_in ms Rise time of the inhibitory synaptic alpha function I_e pA Constant input current

Sends: SpikeEvent

Receives: SpikeEvent, CurrentEvent, DataLoggingRequest

References:

1

Meffin H, Burkitt AN, Grayden DB (2004). An analytical model for the large, fluctuating synaptic conductance state typical of neocortical neurons in vivo. Journal of Computational Neuroscience, 16:159-175. DOI: https://doi.org/10.1023/B:JCNS.0000014108.03012.81

SeeAlso: iaf_psc_delta, iaf_psc_exp, iaf_cond_exp

class iaf_cond_exp_sfa_rr : public Archiving_Node
#include <iaf_cond_exp_sfa_rr.h>

Name: iaf_cond_exp_sfa_rr - Simple conductance based leaky integrate-and-fire neuron model.

Description:

iaf_cond_exp_sfa_rr is an iaf_cond_exp_sfa_rr i.e. an implementation of a spiking neuron using IAF dynamics with conductance-based synapses, with additional spike-frequency adaptation and relative refractory mechanisms as described in Dayan+Abbott, 2001, page 166.

As for the iaf_cond_exp_sfa_rr, Incoming spike events induce a post-synaptic change of conductance modelled by an exponential function. The exponential function is normalised such that an event of weight 1.0 results in a peak current of 1 nS.

Outgoing spike events induce a change of the adaptation and relative refractory conductances by q_sfa and q_rr, respectively. Otherwise these conductances decay exponentially with time constants tau_sfa and tau_rr, respectively.

Parameters:

The following parameters can be set in the status dictionary.

 V_m mV Membrane potential E_L mV Leak reversal potential C_m pF Capacity of the membrane t_ref ms Duration of refractory period V_th mV Spike threshold V_reset mV Reset potential of the membrane E_ex mV Excitatory reversal potential E_in mV Inhibitory reversal potential g_L nS Leak conductance tau_syn_ex ms Rise time of the excitatory synaptic alpha function tau_syn_in ms Rise time of the inhibitory synaptic alpha function q_sfa nS Outgoing spike activated quantal spike-frequency adaptation conductance increase in nS q_rr nS Outgoing spike activated quantal relative refractory conductance increase in nS tau_sfa ms Time constant of spike-frequency adaptation in ms tau_rr ms Time constant of the relative refractory mechanism in ms E_sfa mV Spike-frequency adaptation conductance reversal potential in mV E_rr mV Relative refractory mechanism conductance reversal potential in mV I_e pA Constant input current

Sends: SpikeEvent

Receives: SpikeEvent, CurrentEvent, DataLoggingRequest

References:

1

Meffin H, Burkitt AN, Grayden DB (2004). An analytical model for the large, fluctuating synaptic conductance state typical of neocortical neurons in vivo. Journal of Computational Neuroscience, 16:159-175. DOI: https://doi.org/10.1023/B:JCNS.0000014108.03012.81

2

Dayan P, Abbott LF (2001). Theoretical neuroscience: Computational and mathematical modeling of neural systems. Cambridge, MA: MIT Press. https://pure.mpg.de/pubman/faces/ViewItemOverviewPage.jsp?itemId=

item_3006127

Author: Sven Schrader, Eilif Muller

class iaf_psc_alpha : public Archiving_Node
#include <iaf_psc_alpha.h>

Name: iaf_psc_alpha - Leaky integrate-and-fire neuron model.

Description:

iaf_psc_alpha is an implementation of a leaky integrate-and-fire model with alpha-function shaped synaptic currents. Thus, synaptic currents and the resulting post-synaptic potentials have a finite rise time.

The threshold crossing is followed by an absolute refractory period during which the membrane potential is clamped to the resting potential.

The linear subthresold dynamics is integrated by the Exact Integration scheme [][1]. 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 [1]. A flow chart can be found in [2].

Critical tests for the formulation of the neuron model are the comparisons of simulation results for different computation step sizes. sli/testsuite/nest contains a number of such tests.

The iaf_psc_alpha is the standard model used to check the consistency of the nest simulation kernel because it is at the same time complex enough to exhibit non-trivial dynamics and simple enough compute relevant measures analytically.

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_alpha will probably address the problem of efficient usage of appropriate vector and matrix objects.

Parameters:

The following parameters can be set in the status dictionary.

 V_m mV Membrane potential E_L mV Resting membrane potenial C_m pF Capacity of the membrane tau_m ms Membrane time constant t_ref ms Duration of refractory period V_th mV Spike threshold V_reset mV Reset potential of the membrane tau_syn_ex ms Rise time of the excitatory synaptic alpha function tau_syn_in ms Rise time of the inhibitory synaptic alpha function I_e pA Constant input current V_min mV Absolute lower value for the membrane potenial
Remarks:

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 details, please see IAF_neurons_singularity.ipynb in the NEST source code (docs/model_details).

References:

1

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

2

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

3

Morrison A, Straube S, Plesser H E, Diesmann M (2006). Exact subthreshold integration with continuous spike times in discrete time neural network simulations. Neural Computation, in press DOI: https://doi.org/10.1162/neco.2007.19.1.47

Sends: SpikeEvent

Receives: SpikeEvent, CurrentEvent, DataLoggingRequest

FirstVersion: September 1999

Author: Diesmann, Gewaltig

SeeAlso: iaf_psc_delta, iaf_psc_exp, iaf_cond_exp

class iaf_psc_alpha_multisynapse : public Archiving_Node
#include <iaf_psc_alpha_multisynapse.h>

Name: iaf_psc_alpha_multisynapse - Leaky integrate-and-fire neuron model with multiple ports.

Description:

iaf_psc_alpha_multisynapse is a direct extension of iaf_psc_alpha. On the postsynapic side, there can be arbitrarily many synaptic time constants (iaf_psc_alpha has exactly two: tau_syn_ex and tau_syn_in).

This can be reached by specifying separate receptor ports, each for a different time constant. The port number has to match the respective “receptor_type” in the connectors.

Sends: SpikeEvent

Receives: SpikeEvent, CurrentEvent, DataLoggingRequest

class iaf_psc_delta : public Archiving_Node
#include <iaf_psc_delta.h>

Name: iaf_psc_delta - Leaky integrate-and-fire neuron model.

Description:

iaf_psc_delta is an implementation of a leaky integrate-and-fire model where the potential jumps on each spike arrival.

The threshold crossing is followed by an absolute refractory period during which the membrane potential is clamped to the resting potential.

Spikes arriving while the neuron is refractory, are discarded by default. If the property “refractory_input” is set to true, such spikes are added to the membrane potential at the end of the refractory period, dampened according to the interval between arrival and end of refractoriness.

The linear subthresold dynamics is integrated by the Exact Integration scheme [1]. 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 [1]. A flow chart can be found in [2].

Critical tests for the formulation of the neuron model are the comparisons of simulation results for different computation step sizes. sli/testsuite/nest contains a number of such tests.

The iaf_psc_delta is the standard model used to check the consistency of the nest simulation kernel because it is at the same time complex enough to exhibit non-trivial dynamics and simple enough compute relevant measures analytically.

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_delta will probably address the problem of efficient usage of appropriate vector and matrix objects.

Parameters:

The following parameters can be set in the status dictionary.

 V_m mV Membrane potential E_L mV Resting membrane potential C_m pF Capacity of the membrane tau_m ms Membrane time constant t_ref ms Duration of refractory period V_th mV Spike threshold V_reset mV Reset potential of the membrane I_e pA Constant input current V_min mV Absolute lower value for the membrane potenial refractory_input boolean If true, do not discard input during refractory period. Default: false

References:

1

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

2

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

Sends: SpikeEvent

Receives: SpikeEvent, CurrentEvent, DataLoggingRequest

Author: September 1999, Diesmann, Gewaltig

SeeAlso: iaf_psc_alpha, iaf_psc_exp, iaf_psc_delta_ps

class iaf_psc_exp : public Archiving_Node
#include <iaf_psc_exp.h>

Name: 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 subthresold 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 model with escape noise [4, 5].

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.

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 Time constant of postsynaptic excitatory currents tau_syn_in ms Time constant of postsynaptic inhibitory currents 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

Remarks:

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 details, please see IAF_neurons_singularity.ipynb in the NEST source code (docs/model_details).

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 [6].

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

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

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

SeeAlso: iaf_psc_exp_ps

FirstVersion: March 2006

Author: Moritz Helias

class iaf_psc_exp_multisynapse : public Archiving_Node
#include <iaf_psc_exp_multisynapse.h>

psc

Name: iaf_psc_exp_multisynapse - Leaky integrate-and-fire neuron model with multiple ports.

Description:

iaf_psc_exp_multisynapse is a direct extension of iaf_psc_exp. On the postsynapic side, there can be arbitrarily many synaptic time constants (iaf_psc_exp has exactly two: tau_syn_ex and tau_syn_in).

This can be reached by specifying separate receptor ports, each for a different time constant. The port number has to match the respective “receptor_type” in the connectors.

Sends: SpikeEvent

Receives: SpikeEvent, CurrentEvent, DataLoggingRequest

Author: Plesser, adapted from iaf_psc_alpha_multisynapse

class iaf_tum_2000 : public Archiving_Node
#include <iaf_tum_2000.h>

Name: iaf_tum_2000 - Leaky integrate-and-fire neuron model with exponential PSCs.

Description:

iaf_tum_2000 is an implementation of a leaky integrate-and-fire model with exponential shaped postsynaptic currents (PSCs) according to [1]. The postsynaptic currents have an infinitely short rise time. In particular, this model allows setting an absolute and relative refractory time separately, as required by [1].

The threshold crossing is followed by an absolute refractory period (t_ref_abs) during which the membrane potential is clamped to the resting potential. During the total refractory period (t_ref_tot), the membrane potential evolves, but the neuron will not emit a spike, even if the membrane potential reaches threshold. The total refractory time must be larger or equal to the absolute refractory time. If equal, the refractoriness of the model if equivalent to the other models of NEST.

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].

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_tum_2000 will probably address the problem of efficient usage of appropriate vector and matrix objects.

Parameters:

The following parameters can be set in the status dictionary.

 E_L mV Resting membrane potenial C_m pF Capacity of the membrane tau_m ms Membrane time constant tau_syn_ex ms Time constant of postsynaptic excitatory currents tau_syn_in ms Time constant of postsynaptic inhibitory currents t_ref_abs ms Duration of absolute refractory period (V_m = V_reset) t_ref_tot ms Duration of total refractory period (no spiking) V_m mV Membrane potential V_th mV Spike threshold V_reset mV Reset membrane potential after a spike I_e pA Constant input current t_spike ms Point in time of last spike

Remarks:

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 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

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

Sends: SpikeEvent

Receives: SpikeEvent, CurrentEvent, DataLoggingRequest

FirstVersion: March 2006

Author: Moritz Helias

class izhikevich : public Archiving_Node
#include <izhikevich.h>

Name: izhikevich - Izhikevich neuron model

Description: Implementation of the simple spiking neuron model introduced by Izhikevich [1]. The dynamics are given by:

$\begin{split} dv/dt = 0.04*v^2 + 5*v + 140 - u + I \\ du/dt = a*(b*v - u)] \end{split}$

if $$v >= V_{th}$$: v is set to c u is incremented by d

v jumps on each spike arrival by the weight of the spike.

As published in [1], the numerics differs from the standard forward Euler technique in two ways: 1) the new value of u is calculated based on the new value of v, rather than the previous value 2) the variable v is updated using a time step half the size of that used to update variable u.

This model offers both forms of integration, they can be selected using the boolean parameter consistent_integration. To reproduce some results published on the basis of this model, it is necessary to use the published form of the dynamics. In this case, consistent_integration must be set to false. For all other purposes, it is recommended to use the standard technique for forward Euler integration. In this case, consistent_integration must be set to true (default).

Parameters: The following parameters can be set in the status dictionary.

 V_m mV Membrane potential U_m mV Membrane potential recovery variable V_th mV Spike threshold I_e pA Constant input current (R=1) V_min mV Absolute lower value for the membrane potential a real Describes time scale of recovery variable b real Sensitivity of recovery variable c mV After-spike reset value of V_m d mV After-spike reset value of U_m consistent_integration boolean Use standard integration technique

References:

1

Izhikevich EM (2003). Simple model of spiking neurons. IEEE Transactions on Neural Networks, 14:1569-1572. DOI: https://doi.org/10.1109/TNN.2003.820440

Sends: SpikeEvent

Receives: SpikeEvent, CurrentEvent, DataLoggingRequest

FirstVersion: 2009

Author: Hanuschkin, Morrison, Kunkel

SeeAlso: iaf_psc_delta, mat2_psc_exp

class nonlinearities_lin_rate
#include <lin_rate.h>

Name: lin_rate - Linear rate model

Description:

lin_rate is an implementation of a linear rate model with input function $$input(h) = g * h$$. The model supports multiplicative coupling which can be switched on and off via the boolean parameter mult_coupling (default=false). In case multiplicative coupling is actived the excitatory input of the model is multiplied with the function $$mult\_coupling\_ex(rate) = g_{ex} * ( \theta_{ex} - rate )$$ and the inhibitory input is multiplied with the function $$mult\_coupling\_in(rate) = g_{in} * ( \theta_{in} + rate )$$.

The model supports connections to other rate models with either zero or non-zero delay, and uses the secondary_event concept introduced with the gap-junction framework.

Parameters:

The following parameters can be set in the status dictionary.

 rate real Rate (unitless) tau ms Time constant of rate dynamics lambda real Passive decay rate mu real Mean input sigma real Noise parameter g real Gain parameter mult_coupling boolean Switch to enable/disable multiplicative coupling g_ex real Linear factor in multiplicative coupling g_in real Linear factor in multiplicative coupling theta_ex real Shift in multiplicative coupling theta_in real Shift in multiplicative coupling rectify_output boolean Switch to restrict rate to values >= 0

References:

1

Hahne J, Dahmen D, Schuecker J, Frommer A, Bolten M, Helias M, Diesmann M (2017). Integration of continuous-time dynamics in a spiking neural network simulator. Frontiers in Neuroinformatics, 11:34. DOI: https://doi.org/10.3389/fninf.2017.00034

2

Hahne J, Helias M, Kunkel S, Igarashi J, Bolten M, Frommer A, Diesmann M (2015). A unified framework for spiking and gap-junction interactions in distributed neuronal network simulations. Frontiers Neuroinformatics, 9:22. DOI: https://doi.org/10.3389/fninf.2015.00022

Sends: InstantaneousRateConnectionEvent, DelayedRateConnectionEvent

Receives: InstantaneousRateConnectionEvent, DelayedRateConnectionEvent, DataLoggingRequest

Author: David Dahmen, Jan Hahne, Jannis Schuecker

SeeAlso: rate_connection_instantaneous, rate_connection_delayed

class mat2_psc_exp : public Archiving_Node
#include <mat2_psc_exp.h>

Name: mat2_psc_exp - Non-resetting leaky integrate-and-fire neuron model with exponential PSCs and adaptive threshold.

Description:

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

The threshold is lifted when the neuron is fired and then decreases in a fixed time scale toward a fixed level [3].

The threshold crossing is followed by a total refractory period during which the neuron is not allowed to fire, even if the membrane potential exceeds the threshold. The membrane potential is NOT reset, but continuously integrated.

The linear subthresold dynamics is integrated by the Exact Integration scheme [1]. 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 [1]. A flow chart can be found in [2].

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.

Parameters:

The following parameters can be set in the status dictionary:

 C_m pF Capacity of the membrane E_L mV Resting potential tau_m ms Membrane time constant tau_syn_ex ms Time constant of postsynaptic excitatory currents tau_syn_in ms Time constant of postsynaptic inhibitory currents t_ref ms Duration of absolute refractory period (no spiking) V_m mV Membrane potential I_e pA Constant input current t_spike ms Point in time of last spike tau_1 ms Short time constant of adaptive threshold tau_2 ms Long time constant of adaptive threshold alpha_1 mV Amplitude of short time threshold adaption [3] alpha_2 mV Amplitude of long time threshold adaption [3] omega mV Resting spike threshold (absolute value, not relative to E_L as in [3])

The following state variables can be read out with the multimeter device:

 V_m mV Non-resetting membrane potential V_th mV Two-timescale adaptive threshold

Remarks:

tau_m != tau_syn_{ex,in} is required by the current implementation to avoid a degenerate case of the ODE describing the model [1]. For very similar values, numerics will be unstable.

References:

1

Rotter S and 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

2

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

3

Kobayashi R, Tsubo Y and Shinomoto S (2009). Made-to-order spiking neuron model equipped with a multi-timescale adaptive threshold. Frontiers in Computuational Neuroscience 3:9. DOI: https://doi.org/10.3389/neuro.10.009.2009

Sends: SpikeEvent

Receives: SpikeEvent, CurrentEvent, DataLoggingRequest

FirstVersion: Mai 2009

Author: Thomas Pfeil (modified iaf_psc_exp model of Moritz Helias)

class gainfunction_mcculloch_pitts
#include <mcculloch_pitts_neuron.h>

Name: mcculloch_pitts_neuron - Binary deterministic neuron with Heaviside activation function.

Description:

The mcculloch_pitts_neuron is an implementation of a binary neuron that is irregularly updated as Poisson time points [1]. At each update point the total synaptic input h into the neuron is summed up, passed through a Heaviside gain function g(h) = H(h-theta), whose output is either 1 (if input is above) or 0 (if input is below threshold theta). The time constant tau_m is defined as the mean inter-update-interval that is drawn from an exponential distribution with this parameter. Using this neuron to reprodce simulations with asynchronous update [1], the time constant needs to be chosen as tau_m = dt*N, where dt is the simulation time step and N the number of neurons in the original simulation with asynchronous update. This ensures that a neuron is updated on average every tau_m ms. Since in the original paper [1] neurons are coupled with zero delay, this implementation follows this definition. It uses the update scheme described in [3] to maintain causality: The incoming events in time step t_i are taken into account at the beginning of the time step to calculate the gain function and to decide upon a transition. In order to obtain delayed coupling with delay d, the user has to specify the delay d+h upon connection, where h is the simulation time step.

Remarks:

This neuron has a special use for spike events to convey the binary state of the neuron to the target. The neuron model only sends a spike if a transition of its state occurs. If the state makes an up-transition it sends a spike with multiplicity 2, if a down transition occurs, it sends a spike with multiplicity 1. The decoding scheme relies on the feature that spikes with multiplicity larger 1 are delivered consecutively, also in a parallel setting. The creation of double connections between binary neurons will destroy the decoding scheme, as this effectively duplicates every event. Using random connection routines it is therefore advisable to set the property ‘multapses’ to false. The neuron accepts several sources of currents, e.g. from a noise_generator.

Parameters:

 tau_m ms Membrane time constant (mean inter-update-interval) theta mV Threshold for sigmoidal activation function

References:

1

McCulloch W, Pitts W (1943). A logical calculus of the ideas immanent in nervous activity. Bulletin of Mathematical Biophysics, 5:115-133. DOI: https://doi.org/10.1007/BF02478259

2

Hertz J, Krogh A, Palmer R (1991). Introduction to the theory of neural computation. Addison-Wesley Publishing Conmpany.

3

Morrison A, Diesmann M (2007). Maintaining causality in discrete time neuronal simulations. In: Lectures in Supercomputational Neuroscience, p. 267. Peter beim Graben, Changsong Zhou, Marco Thiel, Juergen Kurths (Eds.), Springer. DOI: https://doi.org/10.1007/978-3-540-73159-7_10

Sends: SpikeEvent

FirstVersion: February 2013

Author: Moritz Helias

SeeAlso: pp_psc_delta

class parrot_neuron : public Archiving_Node
#include <parrot_neuron.h>

Name: parrot_neuron - Neuron that repeats incoming spikes.

Description:

The parrot neuron simply emits one spike for every incoming spike. An important application is to provide identical poisson spike trains to a group of neurons. The poisson_generator sends a different spike train to each of its target neurons. By connecting one poisson_generator to a parrot_neuron and then that parrot_neuron to a group of neurons, all target neurons will receive the same poisson spike train.

Remarks:

• Weights on connection to the parrot_neuron are ignored.

• Weights on connections from the parrot_neuron are handled as usual.

• Delays are honored on incoming and outgoing connections.

• Multiplicity may be used to indicate number of spikes in a single time step. Instead of the accumulated weigths of the incoming spikes, the number of the spikes is stored within a ring buffer.

Only spikes arriving on connections to port 0 will be repeated. Connections onto port 1 will be accepted, but spikes incoming through port 1 will be ignored. This allows setting exact pre- and post-synaptic spike times for STDP protocols by connecting two parrot neurons spiking at desired times by, e.g., a stdp_synapse onto port 1 on the post-synaptic parrot neuron.

Sends: SpikeEvent

Parameters:

No parameters to be set in the status dictionary.

Author: David Reichert, Abigail Morrison, Alexander Seeholzer, Hans Ekkehard Plesser

FirstVersion: May 2006

class pp_pop_psc_delta : public Node
#include <pp_pop_psc_delta.h>

Name: pp_pop_psc_delta - Population of point process neurons with leaky integration of delta-shaped PSCs.

Description:

pp_pop_psc_delta is an effective model of a population of neurons. The N component neurons are assumed to be spike response models with escape noise, also known as generalized linear models. We follow closely the nomenclature of [1]. The component neurons are a special case of pp_psc_delta (with purely exponential rate function, no reset and no random dead_time). All neurons in the population share the inputs that it receives, and the output is the pooled spike train.

The instantaneous firing rate of the N component neurons is defined as

$rate(t) = \rho_0 * \exp( (h(t) - \eta(t))/\delta_u ),$

where h(t) is the input potential (synaptic delta currents convolved with an exponential kernel with time constant tau_m), eta(t) models the effect of refractoriness and adaptation (the neuron’s own spike train convolved with a sum of exponential kernels with time constants tau_eta), and delta_u sets the scale of the voltages.

To represent a (homogeneous) population of N inhomogeneous renewal process neurons, we can keep track of the numbers of neurons that fired a certain number of time steps in the past. These neurons will have the same value of the hazard function (instantaneous rate), and we draw a binomial random number for each of these groups. This algorithm is thus very similar to ppd_sup_generator and gamma_sup_generator, see also [2].

However, the adapting threshold eta(t) of the neurons generally makes the neurons non-renewal processes. We employ the quasi-renewal approximation [1], to be able to use the above algorithm. For the extension of [1] to coupled populations see [3].

In effect, in each simulation time step, a binomial random number for each of the groups of neurons has to be drawn, independent of the number of represented neurons. For large N, it should be much more efficient than simulating N individual pp_psc_delta models.

pp_pop_psc_delta emits spike events like other neuron models, but no more than one per time step. If several component neurons spike in the time step, the multiplicity of the spike event is set accordingly. Thus, to monitor its output, the multiplicity of the spike events has to be taken into account. Alternatively, the internal variable n_events gives the number of spikes emitted in a time step, and can be monitored using a multimeter.

EDIT Nov 2016: pp_pop_psc_delta is now deprecated, because a new and presumably much faster population model implementation is now available, see gif_pop_psc_exp.

Parameters:

The following parameters can be set in the status dictionary.

 N integer Number of represented neurons tau_m ms Membrane time constant C_m pF Capacitance of the membrane rho_0 1/s Base firing rate delta_u mV Voltage scale parameter I_e pA Constant input current tau_eta list of ms Time constants of post-spike kernel val_eta list of mV Amplitudes of exponentials in post-spike-kernel len_kernel real Post-spike kernel eta is truncated after max(tau_eta) * len_kernel

The parameters correspond to the ones of pp_psc_delta as follows.

 c_1 0.0 c_2 rho_0 c_3 1/delta_u q_sfa val_eta tau_sfa tau_eta I_e I_e dead_time simulation resolution dead_time_random False with_reset False t_ref_remaining 0.0

References:

1

Naud R, Gerstner W (2012). Coding and decoding with adapting neurons: a population approach to the peri-stimulus time histogram. PLoS Compututational Biology 8: e1002711. DOI: https://doi.org/10.1371/journal.pcbi.1002711

2

Deger M, Helias M, Boucsein C, Rotter S (2012). Statistical properties of superimposed stationary spike trains. Journal of Computational Neuroscience 32:3, 443-463. DOI: https://doi.org/10.1007/s10827-011-0362-8

3

Deger M, Schwalger T, Naud R, Gerstner W (2014). Fluctuations and information filtering in coupled populations of spiking neurons with adaptation. Physical Review E 90:6, 062704. DOI: https://doi.org/10.1103/PhysRevE.90.062704

Sends: SpikeEvent

Receives: SpikeEvent, CurrentEvent, DataLoggingRequest

Author: May 2014, Setareh, Deger

SeeAlso: gif_pop_psc_exp, pp_psc_delta, ppd_sup_generator, gamma_sup_generator

class pp_psc_delta : public Archiving_Node
#include <pp_psc_delta.h>

Name: pp_psc_delta - Point process neuron with leaky integration of delta-shaped PSCs.

Description:

pp_psc_delta is an implementation of a leaky integrator, where the potential jumps on each spike arrival. It produces spike stochastically, and supports spike-frequency adaptation, and other optional features.

Spikes are generated randomly according to the current value of the transfer function which operates on the membrane potential. Spike generation is followed by an optional dead time. Setting with_reset to true will reset the membrane potential after each spike.

The transfer function can be chosen to be linear, exponential or a sum of both by adjusting three parameters:

$rate = Rect[ c_1 * V' + c_2 * \exp(c_3 * V') ],$

where the effective potential $$V' = V_m - E_{sfa}$$ and $$E_{sfa}$$ is called the adaptive threshold. Here Rect means rectifier: $$Rect(x) = {x \text{ if } x>=0, 0 \text{ else}}$$ (this is necessary because negative rates are not possible).

By setting c_3 = 0, c_2 can be used as an offset spike rate for an otherwise linear rate model.

The dead time enables to include refractoriness. If dead time is 0, the number of spikes in one time step might exceed one and is drawn from the Poisson distribution accordingly. Otherwise, the probability for a spike is given by $$1 - \exp(-rate*h)$$, where h is the simulation time step. If dead_time is smaller than the simulation resolution (time step), it is internally set to the resolution.

Note that, even if non-refractory neurons are to be modeled, a small value of dead_time, like dead_time=1e-8, might be the value of choice since it uses faster uniform random numbers than dead_time=0, which draws Poisson numbers. Only for very large spike rates (> 1 spike/time_step) this will cause errors.

The model can optionally include an adaptive firing threshold. If the neuron spikes, the threshold increases and the membrane potential will take longer to reach it. Here this is implemented by subtracting the value of the adaptive threshold E_sfa from the membrane potential V_m before passing the potential to the transfer function, see also above. E_sfa jumps by q_sfa when the neuron fires a spike, and decays exponentially with the time constant tau_sfa after (see [2] or [3]). Thus, the E_sfa corresponds to the convolution of the neuron’s spike train with an exponential kernel. This adaptation kernel may also be chosen as the sum of n exponential kernels. To use this feature, q_sfa and tau_sfa have to be given as a list of n values each.

The firing of pp_psc_delta is usually not a renewal process. For example, its firing may depend on its past spikes if it has non-zero adaptation terms (q_sfa). But if so, it will depend on all its previous spikes, not just the last one so it is not a renewal process model. However, if “with_reset” is True, and all adaptation terms (q_sfa) are 0, then it will reset (“forget”) its membrane potential each time a spike is emitted, which makes it a renewal process model (where “rate” above is its hazard function, also known as conditional intensity).

pp_psc_delta may also be called a spike-response model with escape-noise [6] (for vanishing, non-random dead_time). If c_1>0 and c_2==0, the rate is a convolution of the inputs with exponential filters which is a model known as a Hawkes point process (see [4]). If instead c_1==0, then pp_psc_delta is a point process generalized linear model (with the canonical link function, and exponential input filters) (see [5,6]).

This model has been adapted from iaf_psc_delta. The default parameters are set to the mean values given in [2], which have been matched to spike-train recordings. Due to the many features of pp_psc_delta and its versatility, parameters should be set carefully and conciously.

Parameters:

The following parameters can be set in the status dictionary.

 V_m mV Membrane potential C_m pF Capacitance of the membrane tau_m ms Membrane time constant q_sfa mV Adaptive threshold jump tau_sfa ms Adaptive threshold time constant dead_time ms Duration of the dead time dead_time_random boolean Should a random dead time be drawn after each spike? dead_time_shape integer Shape parameter of dead time gamma distribution t_ref_remaining ms Remaining dead time at simulation start with_reset boolean Should the membrane potential be reset after a spike? I_e pA Constant input current c_1 Hz/mV Slope of linear part of transfer function in Hz/mV c_2 Hz Prefactor of exponential part of transfer function c_3 1/mV Coefficient of exponential non-linearity of transfer function

References:

1

Cardanobile S, Rotter S (2010). Multiplicatively interacting point processes and applications to neural modeling. Journal of Computational Neuroscience 28(2):267-284 DOI: https://doi.org/10.1007/s10827-009-0204-0

2

Jolivet R, Rauch A, Luescher H-R, Gerstner W. (2006). Predicting spike timing of neocortical pyramidal neurons by simple threshold models. Journal of Computational Neuroscience 21:35-49. DOI: https://doi.org/10.1007/s10827-006-7074-5

3

Pozzorini C, Naud R, Mensi S, Gerstner W (2013). Temporal whitening by power-law adaptation in neocortical neurons. Nature Neuroscience 16:942-948. (Uses a similar model of multi-timescale adaptation) DOI: https://doi.org/10.1038/nn.3431

4

Grytskyy D, Tetzlaff T, Diesmann M, Helias M (2013). A unified view on weakly correlated recurrent networks. Frontiers in Computational Neuroscience, 7:131. DOI: https://doi.org/10.3389/fncom.2013.00131

5

Deger M, Schwalger T, Naud R, Gerstner W (2014). Fluctuations and information filtering in coupled populations of spiking neurons with adaptation. Physical Review E 90:6, 062704. DOI: https://doi.org/10.1103/PhysRevE.90.062704

6

Gerstner W, Kistler WM, Naud R, Paninski L (2014). Neuronal Dynamics: From single neurons to networks and models of cognition. Cambridge University Press

Sends: SpikeEvent

Receives: SpikeEvent, CurrentEvent, DataLoggingRequest

Author: July 2009, Deger, Helias; January 2011, Zaytsev; May 2014, Setareh

SeeAlso: pp_pop_psc_delta, iaf_psc_delta, iaf_psc_alpha, iaf_psc_exp, iaf_psc_delta_ps

template<class TNonlinearities>
class rate_neuron_ipn : public Archiving_Node
#include <rate_neuron_ipn.h>

Name: rate_neuron_ipn - Base class for rate model with input noise.

Description:

Base class for rate model with input noise of the form

$\tau dX_i(t) = [ - \lambda X_i(t) + \mu + \phi( \sum w_{ij} \cdot \psi( X_j(t-d_{ij}) ) ) ] dt + [ \sqrt{\tau} \cdot \sigma ] dW_{i}(t)$
or
$\begin{split} \tau dX_i(t) = [ - \lambda X_i(t) + \mu + \text{mult_coupling_ex}( X_i(t) ) \cdot \\ \phi( \sum w^{ > 0 }_{ij} \cdot \psi( X_j(t-d_{ij}) ) ) \\ + \text{mult_coupling_in}( X_i(t) ) \cdot \\ \phi( \sum w^{ < 0 }_{ij} \cdot \psi( X_j(t-d_{ij}) ) ) ] dt \\ + [ \sqrt{\tau} \cdot \sigma ] dW_{i}(t) \end{split}$
This template class needs to be instantiated with a class containing the following functions:
• input (nonlinearity that is applied to the input, either psi or phi)

• mult_coupling_ex (factor of multiplicative coupling for excitatory input)

• mult_coupling_in (factor of multiplicative coupling for inhibitory input)

The boolean parameter linear_summation determines whether the input function is applied to the summed up incoming connections (True, default value, input represents phi) or to each input individually (False, input represents psi). In case of multiplicative coupling the nonlinearity is applied separately to the summed excitatory and inhibitory inputs if linear_summation=True.

References:

1

Hahne J, Dahmen D, Schuecker J, Frommer A, Bolten M, Helias M, Diesmann M (2017). Integration of continuous-time dynamics in a spiking neural network simulator. Frontiers in Neuroinformatics, 11:34. DOI: https://doi.org/10.3389/fninf.2017.00034

Author: David Dahmen, Jan Hahne, Jannis Schuecker

SeeAlso: lin_rate, tanh_rate, threshold_lin_rate

template<class TNonlinearities>
class rate_neuron_opn : public Archiving_Node
#include <rate_neuron_opn.h>

Name: rate_neuron_opn - Base class for rate model with output noise.

Description:

Base class for rate model with output noise of the form

$\tau dX_i(t) / dt = - X_i(t) + \mu + \phi( \sum w_{ij} \cdot \psi( X_j(t-d_{ij}) + \sqrt{\tau} \cdot \sigma \cdot \xi_j(t) ) )$
or
$\begin{split} \tau dX_i(t) / dt = - X_i(t) + \mu + \text{mult_coupling_ex}( X_i(t) ) \cdot \\ \phi( \sum w^{ > 0 }_{ij} \cdot \psi( X_j(t-d_{ij}) \\ + \sqrt{\tau} \cdot \sigma \cdot \xi_j(t) ) ) \\ + \text{mult_coupling_in}( X_i(t) ) \cdot \\ \phi( \sum w^{ < 0 }_{ij} \cdot \psi( X_j(t-d_{ij}) \\ + \sqrt{\tau} \cdot \sigma \cdot \xi_j(t) ) ) \end{split}$

Here $$xi_j(t)$$ denotes a Gaussian white noise.

This template class needs to be instantiated with a class containing the following functions:

• input (nonlinearity that is applied to the input, either psi or phi)

• mult_coupling_ex (factor of multiplicative coupling for excitatory input)

• mult_coupling_in (factor of multiplicative coupling for inhibitory input)

The boolean parameter linear_summation determines whether the input function is applied to the summed up incoming connections (True, default value, input represents phi) or to each input individually (False, input represents psi). In case of multiplicative coupling the nonlinearity is applied separately to the summed excitatory and inhibitory inputs if linear_summation=True.

References:

1

Hahne J, Dahmen D, Schuecker J, Frommer A, Bolten M, Helias M, Diesmann M (2017). Integration of continuous-time dynamics in a spiking neural network simulator. Frontiers in Neuroinformatics, 11:34. DOI: https://doi.org./10.3389/fninf.2017.00034

Author: David Dahmen, Jan Hahne, Jannis Schuecker

SeeAlso: lin_rate, tanh_rate, threshold_lin_rate

template<class TNonlinearities>
class rate_transformer_node : public Archiving_Node
#include <rate_transformer_node.h>

Name: rate_transformer_node - Rate neuron that sums up incoming rates and applies a nonlinearity specified via the template.

Description:

The rate transformer node simply applies the nonlinearity specified in the input-function of the template class to all incoming inputs. The boolean parameter linear_summation determines whether the input function is applied to the summed up incoming connections (True, default value) or to each input individually (False). An important application is to provide the possibility to apply different nonlinearities to different incoming connections of the same rate neuron by connecting the sending rate neurons to the rate transformer node and connecting the rate transformer node to the receiving rate neuron instead of using a direct connection. Please note that for instantaneous rate connections the rate arrives one time step later at the receiving rate neurons as with a direct connection.

Remarks:

• Weights on connections from and to the rate_transformer_node are handled as usual.

• Delays are honored on incoming and outgoing connections.

Sends: InstantaneousRateConnectionEvent, DelayedRateConnectionEvent

Parameters:

Only the parameter

• linear_summation and the parameters from the class Nonlinearities can be set in the status dictionary.

Author: Mario Senden, Jan Hahne, Jannis Schuecker

FirstVersion: November 2017

class siegert_neuron : public Archiving_Node
#include <siegert_neuron.h>

Name: siegert_neuron

Description:

siegert_neuron is an implementation of a rate model with the non-linearity given by the gain function of the leaky-integrate-and-fire neuron with delta or exponentially decaying synapses [2] and [3, their eq. 25]. The model can be used for a mean-field analysis of spiking networks.

The model supports connections to other rate models with zero delay, and uses the secondary_event concept introduced with the gap-junction framework.

Parameters:

The following parameters can be set in the status dictionary.

 rate 1/s Rate (1/s) tau ms Time constant mean real Additional constant input

The following parameters can be set in the status directory and are used in the evaluation of the gain function. Parameters as in iaf_psc_exp/delta.

 tau_m ms Membrane time constant tau_syn ms Time constant of postsynaptic currents t_ref ms Duration of refractory period theta mV Threshold relative to resting potential V_reset mV Reset relative to resting membrane potential

References:

1

Hahne J, Dahmen D, Schuecker J, Frommer A, Bolten M, Helias M, Diesmann M (2017). Integration of continuous-time dynamics in a spiking neural network simulator. Frontiers in Neuroinformatics, 11:34. DOI: https://doi.org/10.3389/fninf.2017.00034

2

Fourcaud N, Brunel N (2002). Dynamics of the firing probability of noisy integrate-and-fire neurons, Neural Computation, 14(9):2057-2110 DOI: https://doi.org/10.1162/089976602320264015

3

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

4

Hahne J, Helias M, Kunkel S, Igarashi J, Bolten M, Frommer A, Diesmann M (2015). A unified framework for spiking and gap-junction interactions in distributed neuronal network simulations. Frontiers in Neuroinformatics, 9:22. DOI: https://doi.org/10.3389/fninf.2015.00022

Sends: DiffusionConnectionEvent

Author: Jannis Schuecker, David Dahmen, Jan Hahne

SeeAlso: diffusion_connection

class nonlinearities_sigmoid_rate
#include <sigmoid_rate.h>

Name: sigmoid_rate - rate model with sigmoidal gain function

Description:

sigmoid_rate is an implementation of a nonlinear rate model with input function $$input(h) = g / ( 1. + \exp( -\beta * ( h - \theta ) ) )$$. Input transformation can either be applied to individual inputs or to the sum of all inputs.

The model supports connections to other rate models with either zero or non-zero delay, and uses the secondary_event concept introduced with the gap-junction framework.

Parameters:

The following parameters can be set in the status dictionary.

 rate real Rate (unitless) tau ms Time constant of rate dynamics mu real Mean input sigma real Noise parameter g real Gain parameter beta real Slope parameter theta real Threshold linear_summation boolean Specifies type of non-linearity (see above) rectify_output boolean Switch to restrict rate to values >= 0

Note:

The boolean parameter linear_summation determines whether the input from different presynaptic neurons is first summed linearly and then transformed by a nonlinearity (true), or if the input from individual presynaptic neurons is first nonlinearly transformed and then summed up (false). Default is true.

References:

1

Hahne J, Dahmen D, Schuecker J, Frommer A, Bolten M, Helias M, Diesmann M (2017). Integration of continuous-time dynamics in a spiking neural network simulator. Frontiers in Neuroinformatics, 11:34. DOI: https://doi.org/10.3389/fninf.2017.00034

2

Hahne J, Helias M, Kunkel S, Igarashi J, Bolten M, Frommer A, Diesmann M (2015). A unified framework for spiking and gap-junction interactions in distributed neuronal network simulations. Frontiers in Neuroinformatics, 9:22. DOI: https://doi.org/10.3389/fninf.2015.00022

Sends: InstantaneousRateConnectionEvent, DelayedRateConnectionEvent

Receives: InstantaneousRateConnectionEvent, DelayedRateConnectionEvent, DataLoggingRequest

Author: Mario Senden, Jan Hahne, Jannis Schuecker

SeeAlso: rate_connection_instantaneous, rate_connection_delayed

class nonlinearities_sigmoid_rate_gg_1998
#include <sigmoid_rate_gg_1998.h>

Name: sigmoid_rate_gg_1998 - rate model with sigmoidal gain function as defined in [1].

Description:

sigmoid_rate_gg_1998 is an implementation of a nonlinear rate model with input function $$input(h) = ( g * h )^4 / ( .1^4 + ( g * h )^4 )$$. Input transformation can either be applied to individual inputs or to the sum of all inputs.

The model supports connections to other rate models with either zero or non-zero delay, and uses the secondary_event concept introduced with the gap-junction framework.

Parameters:

The following parameters can be set in the status dictionary.

 rate real Rate (unitless) tau ms Time constant of rate dynamics mu real Mean input sigma real Noise parameter g real Gain parameter linear_summation boolean Specifies type of non-linearity (see above) rectify_output boolean Switch to restrict rate to values >= 0

-Note:

The boolean parameter linear_summation determines whether the input from different presynaptic neurons is first summed linearly and then transformed by a nonlinearity (true), or if the input from individual presynaptic neurons is first nonlinearly transformed and then summed up (false). Default is true.

References:

1

Gancarz G, Grossberg S (1998). A neural model of the saccade generator in the reticular formation. Neural Networks, 11(7):1159–1174. DOI: https://doi.org/10.1016/S0893-6080(98)00096-3

2

Hahne J, Dahmen D, Schuecker J, Frommer A, Bolten M, Helias M, Diesmann M (2017). Integration of continuous-time dynamics in a spiking neural network simulator. Frontiers in Neuroinformatics, 11:34. DOI: https://doi.org/10.3389/fninf.2017.00034

3

Hahne J, Helias M, Kunkel S, Igarashi J, Bolten M, Frommer A, Diesmann M (2015). A unified framework for spiking and gap-junction interactions in distributed neuronal network simulations. Frontiers in Neuroinformatics, 9:22. DOI: https://doi/org/10.3389/fninf.2015.00022

Sends: InstantaneousRateConnectionEvent, DelayedRateConnectionEvent

Receives: InstantaneousRateConnectionEvent, DelayedRateConnectionEvent, DataLoggingRequest

Author: Mario Senden, Jan Hahne, Jannis Schuecker

SeeAlso: rate_connection_instantaneous, rate_connection_delayed

class nonlinearities_tanh_rate
#include <tanh_rate.h>

Name: tanh_rate - rate model with hyperbolic tangent non-linearity

Description:

tanh_rate is an implementation of a nonlinear rate model with input function $$input(h) = \tanh(g * (h-\theta))$$. Input transformation can either be applied to individual inputs or to the sum of all inputs.

The model supports connections to other rate models with either zero or non-zero delay, and uses the secondary_event concept introduced with the gap-junction framework.

Parameters:

The following parameters can be set in the status dictionary.

 rate real Rate (unitless) tau ms Time constant of rate dynamics mu real Mean input sigma real Noise parameter g real Gain parameter theta real Threshold linear_summation boolean Specifies type of non-linearity (see above) rectify_output boolean Switch to restrict rate to values >= 0

Note:

The boolean parameter linear_summation determines whether the input from different presynaptic neurons is first summed linearly and then transformed by a nonlinearity (true), or if the input from individual presynaptic neurons is first nonlinearly transformed and then summed up (false). Default is true.

References:

1

Hahne J, Dahmen D, Schuecker J, Frommer A, Bolten M, Helias M, Diesmann M (2017). Integration of continuous-time dynamics in a spiking neural network simulator. Frontiers in Neuroinformatics, 11:34. DOI: https://doi.org/10.3389/fninf.2017.00034

2

Hahne J, Helias M, Kunkel S, Igarashi J, Bolten M, Frommer A, Diesmann M (2015). A unified framework for spiking and gap-junction interactions in distributed neuronal network simulations. Frontiers in Neuroinformatics, 9:22. DOI: https://doi.org/10.3389/fninf.2015.00022

Sends: InstantaneousRateConnectionEvent, DelayedRateConnectionEvent

Receives: InstantaneousRateConnectionEvent, DelayedRateConnectionEvent, DataLoggingRequest

Author: David Dahmen, Jan Hahne, Jannis Schuecker

SeeAlso: rate_connection_instantaneous, rate_connection_delayed

class nonlinearities_threshold_lin_rate
#include <threshold_lin_rate.h>

Name: threshold_lin_rate - rate model with threshold-linear gain function

Description:

threshold_lin_rate is an implementation of a nonlinear rate model with input function $$input(h) = min( max( g * ( h - \theta ), 0 ), \alpha )$$. Input transformation can either be applied to individual inputs or to the sum of all inputs.

The model supports connections to other rate models with either zero or non-zero delay, and uses the secondary_event concept introduced with the gap-junction framework.

Parameters:

The following parameters can be set in the status dictionary.

 rate real Rate (unitless) tau ms Time constant of rate dynamics mu real Mean input sigma real Noise parameter g real Gain parameter alpha real Second Threshold theta real Threshold linear_summation boolean Specifies type of non-linearity (see above) rectify_output boolean Switch to restrict rate to values >= 0

Note: The boolean parameter linear_summation determines whether the input from different presynaptic neurons is first summed linearly and then transformed by a nonlinearity (true), or if the input from individual presynaptic neurons is first nonlinearly transformed and then summed up (false). Default is true.

References:

1

Hahne J, Dahmen D, Schuecker J, Frommer A, Bolten M, Helias M, Diesmann M (2017). Integration of continuous-time dynamics in a spiking neural network simulator. Frontiers in Neuroinformatics, 11:34. DOI: https://doi.org/10.3389/fninf.2017.00034

2

Hahne J, Helias M, Kunkel S, Igarashi J, Bolten M, Frommer A, Diesmann M (2015). A unified framework for spiking and gap-junction interactions in distributed neuronal network simulations. Frontiers in Neuroinformatics, 9:22. DOI: https://doi.org/10.3389/fninf.2015.00022

Sends: InstantaneousRateConnectionEvent, DelayedRateConnectionEvent

Receives: InstantaneousRateConnectionEvent, DelayedRateConnectionEvent, DataLoggingRequest

Author: David Dahmen, Jan Hahne, Jannis Schuecker SeeAlso: rate_connection_instantaneous, rate_connection_delayed