izhikevich – Izhikevich neuron model ==================================== Description +++++++++++ Implementation of the simple spiking neuron model introduced by Izhikevich [1]_. The dynamics are given by: .. math:: dV_m/dt &= 0.04 V_m^2 + 5 V_m + 140 - u + I du/dt &= a (b V_m - u) .. math:: &\text{if}\;\;\; V_m \geq V_{th}:\\ &\;\;\;\; V_m \text{ is set to } c\\ &\;\;\;\; u \text{ is incremented by } d\\ & \, \\ &v \text{ 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 :math:`u` is calculated based on the new value of :math:`V_m`, rather than the previous value 2) the variable :math:`V_m` is updated using a time step half the size of that used to update variable :math:`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). For a detailed analysis and discussion of the numerical issues in the original publication, see [2]_. 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 .. [2] Pauli R, Weidel P, Kunkel S, Morrison A (2018). Reproducing polychronization: A guide to maximizing the reproducibility of spiking network models. Frontiers in Neuroinformatics, 12. DOI: https://www.frontiersin.org/article/10.3389/fninf.2018.00046 Sends +++++ SpikeEvent Receives ++++++++ SpikeEvent, CurrentEvent, DataLoggingRequest See also ++++++++ :doc:`Neuron `, :doc:`Integrate-And-Fire `