Simulators

Compartmental models

The following popular neural simulators are available.

NEURON:
Cell models and their simulation are specified with the HOC scripting language, or with GUI tools. The NMODL language allows for adding new components such as new ion channel models. Large user base and many example models are freely available through ModelDB (see below).  http://www.neuron.yale.edu
GENESIS:
GEneral NEural SImulation System . Similar remit and functionality to NEURON. It also has a large user base and is undergoing continual development and improvement. http://www.genesis-sim.org/

In addition there are a large number of other neural simulators with similar or more restricted functionality. In alphabetical order, examples include:

HHsim:
HHsim is a graphical simulation of a section of excitable neuronal membrane using the Hodgkin-Huxley equations. It provides full access to the Hodgkin-Huxley parameters, membrane parameters, stimulus parameters, and ion concentrations. http://www.cs.cmu.edu/~dst/HHsim
neuroConstruct:
neuroConstruct automates the generation of script files for other simulation platforms, principally NEURON and GENESIS. It provides a framework for creating networks of conductance based neuronal models, visualising and analysing networks of cells in 3D, managing simulations and analysing network firing behaviour. It uses the target platform to actually run simulations. http://www.neuroconstruct.org/
NEURONC:
This was developed originally to model the nerve cells in the vertebrate retina. It has been extended extensively over the years and is now a general purpose simulator for modelling a large number of nerve cells, each with a large number of a compartments. It has 3D visualisation tools for displaying networks. http://retina.anatomy.upenn.edu/~rob/neuronc.html
Nodus:
Nodus is a user-friendly package for simulating compartmental models of single cells, or small networks. It runs only on Apple Macintosh computers. http://www.tnb.ua.ac.be/software/nodus/nodus_info.shtml
PSICS:
PSICS (Parallel Stochastic Ion Channel Simulator) is designed to carry out simulation of compartmental models containing stochastic ion channels represented by kinetic schemes. PSICS computes the behaviour of neurons taking account of the stochastic nature of ion channel gating and the detailed positions of the channels themselves. It supports representation of ion channels as kinetic schemes involving one or more serial gating complexes. PSICS is intended to be complementary to existing tools, inhabiting the space between whole cell deterministic models as implemented in NEURON and GENESIS, and subcellular stochastic diffusion models (see MCELL, STEPS and StochSim below). http://www.psics.org/
SNNAP:
Simulator for Neural Networks and Action Potentials is a tool for rapid development and simulation of realistic models of single neurons and neural networks. It includes mathematical descriptions of ion currents and intracellular second messengers and ions. In addition, current flow can be simulated in compartmental models of neurons. http://snnap.uth.tmc.edu/
Surf-Hippo:
This simulator is used to investigate morphologically and biophysically detailed compartmental models of single neurons and networks of neurons. Surf-Hippo allows ready construction of cells and networks using built-in functions and various anatomical file formats (Neurolucida, NTS and others). Surf-Hippo is a public domain package, written in Lisp, and runs under Unix and Linux. http://www.neurophys.biomedicale.univ-paris5.fr/~graham/surf-hippo.html
XNBC:
A software tool for neurobiologists to analyse simulated neurons and neural networks. Most of the cell models are abstract but Hodgkin-Huxley models are also included. http://www.b3e.jussieu.fr/xnbc/

Subcellular models

The systems biology field has spawned a number of sophisticated software packages for simulating general intracellular processes. A number of these packages and their main features are described below.

Chemesis:
An add-on package to GENESIS, Chemesis provides similar functionality to Kinetikit (see below), with added components to handle diffusion between well-mixed compartments, enabling the simulation of reaction-diffusion systems. Systems are constructed using the GENESIS scripting language. http://www.gmu.edu/departments/krasnow/CENlab/chemesis.html
Copasi:
The COmplex PAthway SImulator provides deterministic, stochastic and hybrid solutions for well-mixed reaction systems. Includes tools for parameter estimation and optimisation. It is platform independent. http://www.copasi.org/
Ecell:
Similar to Copasi. Model systems can be constructed via a scripting language, or graphically . A sophisticated graphical user interface is provided for both model construction and simulation. http://www.e-cell.org/
GEPASI:
This is for modelling biochemical systems. It translates the language of chemistry (reactions) to mathematics (matrices and differential equations) in a transparent way. It simulates the kinetics of systems of biochemical reactions and provides a number of tools to fit models to data, optimise any function of the model, perform metabolic control analysis and linear stability analysis. http://www.gepasi.org
Kinetikit:
This add-on package to GENESIS enables the simulation of well-mixed reaction systems, with deterministic, stochastic or adaptive deterministic-stochastic methods. Systems can be constructed graphically or via the GENESIS scripting language. http://www.genesis-sim.org/
MCELL:
This simulator is aimed at modelling reaction-diffusion systems in three dimensions, at the level of individual molecules using stochastic algorithms for molecular diffusion and reaction . Reactions can only take place between freely diffusing molecules and membrane-bound receptors. Highly realistic spatial geometries are easily handled. http://www.mcell.psc.edu/
MOOSE:
This is the Multiscale Object-Oriented Simulation Environment. It is the base and numerical core for large, detailed simulations in computational neuroscience and systems biology. MOOSE spans the range from single molecules to subcellular networks, from single cells to neuronal networks, and to still larger systems. It is backwards-compatible with GENESIS, and forward compatible with Python and XML-based model definition standards like SBML and MorphML. http://moose.sourceforge.net/
NMODL:
This is a programming language for adding new components to NEURON. It enables the easy specification of reaction and diffusion systems, either through specification of the rate equations or the corresponding ODEs . In-built solution methods for deterministic systems are provided. Stochastic algorithms can be explicitly constructed from scratch using NMODL. http://www.neuron.yale.edu
STEPS:
STEPS is a package for exact stochastic simulation of reaction-diffusion systems in arbitrarily complex 3D geometries. It is implemented in Python and the core simulation algorithm is an implementation of Gillespie's SSA (Box ), extended to deal with diffusion of molecules over the elements of a 3D tetrahedral mesh. Though developed for simulating detailed models of neuronal signalling pathways in dendrites and around synapses, it can be used for studying any biochemical pathway in which spatial gradients and morphology play a role. http://steps.sourceforge.net//STEPS/Home.html
StochSim:
This is aimed at stochastic modelling of individual molecules , and handles reactions between molecules in well-mixed compartments (no diffusion). Nearest-neighbour interactions between membrane-bound molecules are also possible. http://www.pdn.cam.ac.uk/groups/comp-cell/StochSim.html
VCELL:
This Virtual CELL simulator uses s to model deterministic reaction-diffusion systems in three dimensions. This enables detailed modelling of intracellular geometry and the concentration gradients of molecules through this space. It is provided as a Java application over the Internet by the National Resource for Cell Analysis and Modeling. http://www.vcell.org/

Neural networks

Many simulators exist that are aimed at simulating the interactions within (possibly large scale) networks of neurons. In these simulators, the neurons are usually represented at a fairly abstract level, such as integrate-and-fire or rate-based neurons. Amongst these are:

BRIAN:
A simulator for spiking neural networks of integrate-and-fire or small compartment Hodgkin-Huxley neurons. It is written in Python and runs on many platforms. http://www.briansimulator.org
CATACOMB:
Components And Tools for Accessible COMputer Modelling in Biology. CATACOMB 2 is a workbench for developing biologically plausible network models to perform behavioural tasks in virtual environments. http://www.compneuro.org/catacomb/
Emergent:
Formerly PDP++, this is a comprehensive simulation environment for creating complex, sophisticated models of the brain and cognitive processes using neural network models. Networks use computing units as used in artificial neural networks, which can represent rate-based neurons. Emergent includes a full GUI environment for constructing networks and the input/output patterns for the networks to process, and many different analysis tools for understanding what the networks are doing. http://grey.colorado.edu/emergent/
FANN:
Fast Artificial Neural Network Library for simulating multilayer networks of artificial computing units. http://leenissen.dk/fann/
iqr:
Simulator for large scale neural systems. iqr provides an efficient graphical environment to design large-scale multi-level neuronal systems that can control real-world devices - robots in the broader sense - in real-time. http://iqr.sourceforge.net
LENS:
The light, efficient network simulator for running artificial neural network models. http://tedlab.mit.edu/~dr/Lens/index.html
NEST:
NEural Simulation Technology for large-scale biologically realistic (spiking) neuronal networks. Neural models are usually point neurons, such as integrate-and-fire. http://www.nest-initiative.org
NSL:
The Neural Simulation Language supports neural models having as a basic data structure neural layers with similar properties and similar connection patterns, where neurons are modelled as leaky integrators with connections subject to diverse learning rules. http://www.neuralsimulationlanguage.org/
PCSIM:
Parallel neural Circuit SIMulator. A tool for simulating networks of millions of neurons and billions of synapses. Networks can be heterogeneous collections of different model spiking point neurons. http://www.lsm.tugraz.at/pcsim/

Neural development

General purpose developmental neural simulators are emerging that can handle models ranging from single cell morphological development to network formation. Major examples are listed here.

CX3D:
This is a Java-based simulation tool for modelling the development of large realistic neural networks in a physical 3D environment . Java classes define neuronal morphology and the intra- and extracellular environments. New algorithms for network development can be programmed using these classes. http://www.ini.uzh.ch/projects/cx3d/
NETMORPH:
This simulator also is for modelling the development of large networks of morphologically realistic neurons . Morphogenesis is based on statistical algorithms for directional outgrowth and branching of growth cones. http://netmorph.org
Topographica:
Topographica is a software package for computational modelling of neural maps. The goal is to help researchers understand brain function at the level of the topographic maps that make up sensory and motor systems. http://topographica.org/Home/index.html