The BSB is a framework for reconstructing and simulating multi-paradigm neuronal network models. It removes much of the repetitive work associated with writing the required code and lets you focus on the parts that matter. It helps write organized, well-parametrized and explicit code understandable and reusable by your peers. This package is intended to facilitate spatially, topologically and morphologically detailed simulations of brain regions developed by the Department of Brain and Behavioral Sciences at the University of Pavia.
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.
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.
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.
PyNN (pronounced 'pine') is a simulator-independent language for building neuronal network models. In other words, you can write the code for a model once, using the PyNN API and the Python programming language, and then run it without modification on any simulator that PyNN supports (currently NEURON, NEST and Brian 2) and on a number of neuromorphic hardware systems. The PyNN API aims to support modelling at a high-level of abstraction (populations of neurons, layers, columns and the connections between them) while still allowing access to the details of individual neurons and synapses when required. PyNN provides a library of standard neuron, synapse and synaptic plasticity models, which have been verified to work the same on the different supported simulators. PyNN also provides a set of commonly-used connectivity algorithms (e.g. all-to-all, random, distance-dependent, small-world) but makes it easy to provide your own connectivity in a simulator-independent way. Even if you don't wish to run simulations on multiple simulators, you may benefit from writing your simulation code using PyNN's powerful, high-level interface. In this case, you can use any neuron or synapse model supported by your simulator, and are not restricted to the standard models.