izhnet is an implementation of the Izhikevich spiking neuron model, a computationally efficient neuron model capable of reproducing a wide range of biologically observed spiking and bursting behaviors.
All voltages are expressed in millivolts (mV), time in milliseconds (ms), and currents in arbitrary units (with membrane resistance normalized to 1).
Each neuron is described by two coupled state variables:
-
$v(t)$ — membrane potential -
$u(t)$ — membrane recovery variable
The recovery variable represents slow ionic currents and provides negative feedback to the membrane potential.
The neuron membrane dynamics are governed by the following nonlinear system:
where
A spike is emitted when the membrane potential reaches a fixed threshold:
When this condition is met, the neuron state is instantaneously reset according to:
This reset mechanism captures spike generation, refractoriness, and adaptation without explicitly modeling ion channels.
Incoming spikes from other neurons contribute additively to the input current:
where
The model is integrated numerically using an explicit Euler method. Two integration schemes are supported:
Both state variables are updated using the same timestep:
This method is recommended for general use and network simulations.
To reproduce the original results from Izhikevich (2003), the model optionally supports the published numerical method:
- The recovery variable
$u$ is updated using the new value of$v$ . - The membrane potential
$v$ is updated using two half-steps per timestep.
This behavior is controlled by a boolean parameter:
consistent_integration = true # standard Euler (recommended)
consistent_integration = false # original published scheme| Parameter | Description | Default |
|---|---|---|
| Membrane potential | ||
| Recovery variable | ||
| Spike threshold | ||
| Constant input current | ||
| Recovery time scale | ||
| Recovery sensitivity | ||
| After-spike reset potential | ||
| After-spike recovery increment | ||
| Absolute lower bound on |
Different neuron types (regular spiking, fast spiking, bursting, chattering, etc.) are obtained by selecting different parameter sets
Typical initialization at rest:
The input current may be defined as a time-dependent function. A common step stimulus is:
This stimulus can induce tonic spiking, bursting, or silence depending on the chosen parameters.
- Captures spike generation, refractoriness, and adaptation.
- Supports biologically realistic firing patterns.
- Computationally efficient for large-scale networks.
- Not conductance-based (phenomenological model).
- Izhikevich, E. M. (2003). Simple model of spiking neurons. IEEE Transactions on Neural Networks, 14(6), 1569–1572. DOI: 10.1109/TNN.2003.820440
- 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: 10.3389/fninf.2018.00046
- NEST Simulator Documentation. Izhikevich model (v3.9). https://nest-simulator.readthedocs.io/en/v3.9/models/izhikevich.html
- SETI Neuron Lab. Izhikevich Model and backpropagation (PDF). https://www.seti.net/Neuron%20Lab/NeuronReferences/Izhikevich%20Model%20and%20backpropagation.pdf
- Nengo Documentation. Izhikevich example (v3.0.0). https://www.nengo.ai/nengo//v3.0.0/examples/advanced/izhikevich.html
- Musacchio, F. (2024). Izhikevich network model. https://www.fabriziomusacchio.com/blog/2024-05-19-izhikevich_network_model/
- Emergent Mind. Izhikevich neurons topic. https://www.emergentmind.com/topics/izhikevich-neurons