Models in NEST¶
What we mean by models¶
Models in the context of NEST are C++ implementations of mathematical equations that describe the characteristics and behavior of different types of neurons and synapses, based on the relevant peer-reviewed publications for the model.
We also use the term model in relation to network models (e.g., microcircuit and multi-area model). These network models can be considered a level of complexity higher than the neuron or synapse model. However, here, we focus on neuron and synapse models and not on network models.
Find a model¶
NEST provides a ton of models! Textbook standards like integrate-and-fire and Hodgkin-Huxley-type models are available alongside high-quality implementations of models published by the neuroscience community. The model directory is organized and autogenerated by keywords (e.g., adaptive threshold, conductance-based etc.). Models that contain a specific keyword will be listed under that word.
See also
Discover all the models in our directory.
Create and customize models with NESTML¶
Check out NESTML, a domain-specific language for neuron and synapse models. NESTML enables fast prototyping of new models using an easy to understand, yet powerful syntax. This is achieved by a combination of a flexible processing toolchain written in Python with high simulation performance through the automated generation of C++ code, suitable for use in NEST Simulator.
See also
See the NESTML docs for installation details.
Note
NESTML is also available as part of NEST’s official docker image.
Model naming¶
Neuron models¶
Neuron model names in NEST combine abbreviations that describe the dynamics and synapse specifications for that model. They may also include the author’s name of a model based on a specific paper.
For example, the neuron model name
iaf_cond_beta
corresponds to an implementation of a spiking neuron using integrate-and-fire dynamics with conductance-based synapses. Incoming spike events induce a postsynaptic change of conductance modeled by a beta function.
As an example for a neuron model name based on specific paper,
hh_cond_exp_traub
implements a modified version of the Hodgkin Huxley neuron model based on Traub and Miles (1991)
Synapse models¶
Synapse models include the word synapse as the last word in the model name.
Synapse models may begin with the author name (e.g., clopath_synapse
) or process (e.g., stdp_synapse
).
Devices¶
A device name should represent its physical counterpart - like a multimeter is multimeter
. In general, the term recorder
is used for devices
that store the output (e.g., spike times or synaptic strengths over time) of other nodes and make it accessible to the user. The term generator
is used for devices that provide input into the simulation.
See also
See our glossary section on common abbreviations used for model terms. It includes alternative terms commonly used in the literature.