JavaScript is required to consult this page

A simulator for spiking neural network models of any size.

  • Widely used in computational neuroscience, neurorobotics and machine learning.
  • Perform simulations through PyNEST, PyNN and NEST Desktop graphical user interface.
  • Extend NEST without programming experience with the NESTML modelling language.
  • Runs on laptops and scales to future exascale computers, thanks to NEST parallel simulation technology advances.

NEST is a simulator for spiking neural network models that focuses on the dynamics, size and structure of neural systems, rather than on the exact morphology of individual neurons. It is ideal for networks of any size, including models of information processing (e.g. in the visual or auditory cortex of mammals), models of network activity dynamics (e.g. laminar cortical networks or balanced random networks) and models of learning and plasticity. NEST is openly available for download.


Perform spiking neural network simulations with NEST

NEST is a command line tool for simulating neural networks. Such simulations try to follow the logic of an electrophysiological experiment. The main difference is that it takes place inside a computer, rather than the physical world. To simulate neural networks, NEST can be used interactively from the Python prompt. NEST allows users to create neuron models and devices, connect neurons to devices, specify synapse properties and simulate the network for a given number of milliseconds.


User story

Microcircuit model

NEST is built for simulations of large networks composed of interconnected simple neuron models. An example of such a model that can be simulated with NEST is the cortical microcircuit. Originally described by Potjans and Diesmann in 2014, the microcircuit model is a building block for larger networks and is of neuroscientific relevance because of the realistic proximity of neurons and synapses. It is a data-driven, full-scale spiking network model of 1 mm² of cortex which relates structure and activity. The model comprises four cortical layers, each containing an excitatory and an inhibitory population, with some 77,000 neurons in total.

A reference implementation is written in PyNEST, the easy Python interface to NEST with commands like Create(), Connect() and Simulate(). As a reference, it has been widely cited and the implementation has been reused in a considerable number of peer-reviewed papers since its original publication.


Background

Learn about the philosophy behind NEST

One of the long-term core developers of NEST discusses the approach to neuronal network simulation and scientific tool development that has driven NEST development throughout its 25-year history.


Community

Get involved in the NEST community

Since its first release in 1994, NEST has gathered a large, experienced user and developer community.

The community ensures systematic code review and continuous integration testing to maintain high code quality standards. Beyond daily collaboration via GitHub, users and developers can interact via the NEST User Mailing List, NEST Hackathons, fortnightly Open NEST Developer Video Conferences, and the annual NEST Conference. At the conference, everyone is welcome to join talks and discussions, share success stories, exchange advice and learn about current developments in and beyond NEST spiking network simulation and its applications.

Other software

All software

Multi-scale brain simulation with TVB-NEST

This Python package offers a convenient interface to set-up co-simulation models that simulate TVB large-scale brain network models that interact with NEST spiking neuron models. NEST simulates neural activity at the microscopic spatial scale of single neurons or neuron networks. On the other hand, The Virtual brain simulates at the mesoscopic or macroscopic scales of large neural populations or brain regions. Here, both are brought together to enable neuroscientists to study how these different scales interact and how different scales inform activity "from the bottom up" and "down from the top". A generic Python interface allows users to quickly and conveniently set up a parallel simulation in TVB and in NEST and automatically handles the exchange of currents, spikes, voltages, etc. between the different scales. Although the technical aspect of this tool is realized, the scientific part is a work in progress and we are continuously enriching the coupling between scales such that biophysical plausibility is maintained. The TVB+NEST bundle software package -- available as an easy-to-use Docker image container -- combines the sophistication and flexibility of NEST's spiking neuron simulation infrastructure with TVB's whole-brain simulation, processing, analyses and visualisation capabilities.

Whole-brain simulationModelling and simulation

NEST Desktop

NEST Desktop is a web-based GUI application for NEST Simulator, an advanced simulation tool for computational neuroscience. NEST Desktop enables the rapid construction, parametrization, and instrumentation of neuronal network models. It offers interactive tools for visual network construction, running simulations in NEST and applying visualization to support the analysis of simulation results. NEST Desktop mainly consists of two views and a connection to a server-based NEST instance, which can be controlled using the web-based NEST Desktop front-end. The first view of NEST Desktop enables the user to create point neuron network models interactively. A visual modeling language is provided and a simulation script is automatically created from this visual model. The second view enables the user to analyze the returned simulation results using various visualization methods. NEST Desktop offers additional functionality, such as employing Elephant for more sophisticated statistical analyses.

Modelling and simulationNetwork level simulationData analysis and visualisation

NESTML

NESTML is a domain-specific language that supports the specification of neuron models in a precise and concise syntax. It was developed to address the maintainability issues that follow from an increasing number of models, model variants, and an increased model complexity in computational neuroscience. Our aim is to ease the modelling process for neuroscientists both with and without prior training in computer science. This is achieved without compromising on performance by automatic source-code generation, allowing the same model file to target different hardware or software platforms by changing only a command-line parameter. While originally developed in the context of NEST Simulator, the language itself as well as the associated toolchain are lightweight, modular and extensible, by virtue of using a parser generator and internal abstract syntax tree (AST) representation, which can be operated on using well-known patterns such as visitors and rewriting. Model equations can either be given as a simple string of mathematical notation or as an algorithm written in the built-in procedural language. The equations are analyzed by the associated toolchain ODE-toolbox, to compute an exact solution if possible or to invoke an appropriate numeric solver otherwise.

Modelling and simulationNetwork level simulation

Make the most out of EBRAINS

EBRAINS is open and free. Sign up now for complete access to our tools and services.

Ready to get started?Create your account