Page Contents

    1. Microphysiological
    2. Compartmental
    3. Realistic Network
    4. Interoperability
    5. Parameter Fitting
    1. Data Aquisition & Control
    2. Data Analysis & Visualization
      1. Morphology
      2. Time Series
      3. Network
    3. Database Management
    4. Differential Equation Solvers


The Neuroscience Gateway, NSG allows computational neuroscientists to run parallel simulations, free of charge, on supercomputers using tools like PGENESIS, NEURON, MOOSE, NEST, Brian, CARLsim, PyNN, Freesurfer, BluePyOpt, NetPyNE and The Virtual Brain Personalized Multimodal Connectome Pipeline (descriptions below). Python, R and Octave are also available.
NSG provides a simple web-based interface that makes it quick and easy to create an account, upload model code, run simulations, and get back results.

A. Microphysiological Modeling

Abstracted Protein Simulator

Using a highly abstracted view of protein structure, allows Monte-Carlo simulations of relatively large systems to be carried out on single PCs. Written in Java and Java3D.


BioNetGen is software for the specification and simulation of rule-based models of biochemical systems, including signal transduction, metabolic, and genetic regulatory networks.

CalC ("Ca2+ Calculator") Reaction/Diffusion Modeling Software

Provides for biophysical modeling of intracellular calcium dynamics. It allows the inclusion of mobile and/or fixed calcium buffers, as well as various diffusion barriers. Written in C++. Tested on Linux, SGI, SUN and Windows. See manual for details.

Copasi Complex Pathway Simulator

Copasi is a software application for simulation and analysis of biochemical networks.


E-Cell System is a software platform for modeling, simulation and analysis of complex, heterogeneous and multi-scale systems like the cell.

EONS - Elementary Objects of the Neural System

EONS provides a modeling platform to study the basic molecular mechanisms that occur at the synaptic junction, both pre- and postsynapticly, as well as the impact of synaptic geometry (2D).

MCell Monte Carlo Similator of Cellular Microphysiology

Incorporates high resolution cellular ultrastructure into models of ligand diffusion and signal transduction.

Meredys Mesoscopic Reaction Dynamics Simulator

One can address questions at the level of molecular interactions and signal transduction in biological systems, where local concentration effects and the geometry of interactions are important. Input files are formatted in NeuroML.


Modigliani is a stochastic simulation software framework for modelling cell signalling at a biophysically realistic level, especially in the nervous system. It can be thought of as filling a gap between packages like MCell and Neuron. Modigliani simulates discrete, stochastic ion channels in spatially extended neuronal membranes.

NeuroRD Neuronal Reaction Diffusion simulator

Uses Gillespie's tau-leap reaction algorithm, and stochastic diffusion. XML-based files provide model specification. Written in Java for portability.


A virtual optogenetics laboratory. PyRhO is a Python module to fit, characterise and simulate (rhod)opsin photocurrents. Integrates with simulation environments (including NEURON and Brian2).

pSICS the Parallel Stochastic Ion Channel Simulator

pSICS computes the behavior of neurons taking account of the stochastic nature of ion channel gating.


Smoldyn is a computer program for cell-scale biochemical simulations. The Smoldyn core has been added to MOOSE and Virtual Cell.

STEPS STochastic Engine for Pathway Simulation

STEPS is a package for exact stochastic simulation of reaction-diffusion systems in arbitrarily complex 3D geometries. Developed for simulating detailed models of neuronal signaling pathways in dendrites and around synapses where spatial gradients and morphology are important. Written in and controlled with Python.

VCell Virtual Cell

The biologically oriented user interface allows experimentalists to create models, define cellular geometry, specify simulations and analyze the simulation results. The solver is transparent to the average user, but is accessible to the theorist. SBML import/export.

B. Compartmental Modeling


Arbor is a multi-compartment neural network simulation library designed to be portable across contemporary high-performance computing architectures.

Brain Dynamics Toolbox

The Brain Dynamics Toolbox is open-source software for simulating dynamical systems in neuroscience. Explore mathematical models of brain function using Matlab.

Brain Lab

Brain Lab is an educational neuron simulator for iPhone and iPad. It currently includes a passive integrate and fire model and a Hodgkin-Huxley model with Sodium and Potassium channels. More to come.

Brain Modeling Toolkit (BMTK)

BMTK is a python-based software package for building and simulating models of neuronal circuits. It supports simulations at four levels of resolution (biophysically detailed, point-neuron, population statistics, and machine intelligence) by providing wrappers to tools such as NEURON, NEST, diPDE, and TensorFlow.


c302 is a framework for generating network models in NeuroML 2 based on C. elegans connectivity data. It is primarily intended as a way to generate neuronal networks at multiple levels of detail for the OpenWorm project.


C++ class library for the development of compartmental models and other neuroscience simulations.

GENESIS & PGENESIS - GEneral NEural SImulation System (v2.4)

GENESIS is a general purpose simulation platform which was developed to support the simulation of neural systems ranging from complex models of single neurons to simulations of large networks made up of more abstract neuronal components. XODUS, the graphic front end, requires the X Window System. PGENESIS (Parallel GENESIS) depends on PVM. Version 2.4 adds: an stdp_rules object, new network connection commands, the chemesis library, new autoconf-based builds, HTML indexing of GENESIS diretories and documentation, and new tutorial scripts. The most recent development efforts can now be followed at SourceForge and on Twitter.


A GENESIS module for modeling the dynamics of second messenger pathways.


This mode provides: syntax highlighting for Genesis keywords, functions, and objects; automatic indentation with the tab key; function index menu item.


Versions of Parallel GENESIS rewritten for MPI are available through the GENESIS users group.

Parallel GENESIS (PGENESIS) is availsble for GENESIS-2.3 and GENESIS 2.4

GENESIS 3.0 (G-3) / Neurospaces

A complete rewrite of GENESIS as a core structure, integrating independently developed software components. Currently, an interactive shell, a model container, a fast compartmental solver, scheduler, graphical browser and a developer package are available as an alpha release

Notably, the model container deals with biological entities, and can import / export NeuroML. Also, Python bindings are directly available from the new sspy scheduler. This is now the preferred Python interface and allows easy access to user developed plug-ins.


A stand-alone neural simulator, scriptable in Python, with an interface to GENESIS 3.


Geppetto is a web-based multi-algorithm, multi-scale simulation platform engineered to support the simulation of complex biological systems and their surrounding environment. Geppetto’s integrative approach to biological modeling is at the heart of the Open Worm project. Models are specified in NeuroML and LEMS.


insilico is C++ library for Computational Neuroscience Simulation. It attempts to allow the scientist to focus on simulating the biology, without being distracted by the details of programming. Designed in a modular fashion, insilico allows one to change a component of the library with minimal impact on other components. Portable across Linux, Mac OS, Windows. Documentation with sample simulations is available.

Maxsim Home Page

Analysis and simulation of multiple axonal arbors. Imports Neurolucida files.

MIEN: Model Interaction Environment for Neuroscience

MIEN provides a framework for storing, integrating, and interacting with neuroscience data, including anatomy data, physiology data, abstract mathematical models, and detailed compartmental models. MIEN is not a compartmental model simulator, but it provides an interface to the Neuron simulator for evaluation of compartmental models. Writen in Python.

MOOSE - Multiscale Object-Oriented Simulation Environment (v3.0.1 "Gulab Jamun")

MOOSE spans the range from single molecules to subcellular networks, from single cells to neuronal networks, and to still larger systems. It is backward compatible with GENESIS, and forward compatible with Python and XML-based model definition standards like SBML and NeuroML.

NANS Neuron and Network Simulator

NEURON at Yale

NEURON is a simulation environment for modeling individual neurons and networks of neurons. It provides tools for conveniently building, managing, and using models in a way that is numerically sound and computationally efficient. It is particularly well-suited to problems that are closely linked to experimental data, especially those that involve cells with complex anatomical and biophysical properties. Python can now be used as alternative command line interpreter, and NeuroML model descriptions can be imported.

BioNet : A Python interface to NEURON for modeling large-scale networks

BioNet is a modular Python application programming interface (API) facilitating building and simulation of large-scale biophysically detailed networks. It is publicly released as a component of a modeling tool suite called Brain Modeling Toolkit (see further description abobe).

LFPy - Local Field Potentials in Python

LFPy is a Python package for calculation of extracellular potentials from multicompartment neuron models. It relies on the NEURON simulator and uses the Python interface it provides.


MyFirstNEURON is a NEURON demo that allows simulation of experiments described in the book Electrophysiology of the Neuron.


A python package to facilitate the development of biological neuronal networks in NEURON. Export/import network instance to/from NeuroML.

NeuronPM - Parameter Maps with Neuron

NeuronPM ties Windows machines together in a simple grid to parallelize parameter searches. Runs as a screen saver a la SETI@home.


Provides an analytical method for reducing neuron model complexity. It enables the mapping of synapses and active ion channels to a computationally simpler model while accelerating simulation speed. Requires the NEURON simulator.


Neural simulation language used to build biophysically-based models. Converts branched cables to compartments. Details channel conductances, synapses and gap junctions.



PyDSTool is related to DSTool (see Differential Equation Solvers below), but this new simulation, modeling, and analysis package contains additional toolkits and features for computational neuroscience. It includes: a model development environment, with templates for compartmental models; data analysis tools and built-in tools for continuation / bifurcation analysis.

SNNAP - Simulation of Neural Networks and Action Potentials

Rapid simulation of single neurons (including ion channels and second messenger concentrations) and small networks of neurons.

Surf-Hippo Neuron Simulation System

Surf-Hippo allows construction of morphometrically and biophysically detailed models of single neurons and networks of neurons. Written in Lisp for both Unix and PC installations. It can accept anatomical data in Neurolucida, NTS, Rodney Douglas, and Rocky Nevin formats. Built-in functions also allow user developed anatomical descriptions to be processed.


Biophysical modeling of cells and membranes, as well as connectionist networks. Phaseplane analysis. Takes advantage of a variety of numerical methods. There is now a Matlab interface and a Python interface. XPP will run on Windows, Unix/Linux, OS X and now on iPad. A very much older version is still available at CMU.

C. Realistic Network Modeling


AnimatLab combines biomechanical simulation and biologically realistic neural networks. One can build the body of an animal, or robot, and place it in a virtual world with physically accurate interaction with the environment. For the associated nervous system, the software currently has support for simple firing rate or ion based leaky integrate and fire spiking neural models. There are also a number of synapse model types. On the biomechanics side there is support for a variety of different rigid body types, including custom meshes that can be made to match skeletal structures exactly. Hill-based muscle and stretch receptor models allow production of movements around joints. Motorized joints are also provided for controlling biomimetic machines. C++ source included.


Auryn is a fast simulator for recurrent spiking neural networks with synaptic plasticity.

Brain Modeling Toolkit (BMTK)

The Brain Modeling Toolkit (BMTK) is a python-based software package for creating and simulating large-scale neural network models. It supports building, simulation and analysis of models of different levels of resolution including: biophysically detailed networks, point neuron networks, filter models, population-level networks. The BMTK was developed and is supported at the Allen Institute for Brain Science.


Brian is a simulator for spiking neural networks. Both integrate-and-fire models and Hodgkin-Huxley type models can be used. Brian is useful for models with a few compartments, but not with reconstructed dendritic trees. Written in Python and supported by the PyNN API, Brian will run on Windows, Unix/Linux and OS X.


The Brian2GeNN package allows to run Brian 2 code on the GeNN (GPU enhanced Neuronal Networks) backend (see below).


Dendrify is a free, open-source Python package compatible with the Brian 2 simulator. It automatically generates reduced compartmental neuron models with simplified yet biologically relevant dendritic and synaptic integrative properties. Allows to explore dendritic contributions in large-network simulations.

CARLsim: a GPU-accelerated SNN Simulator

Provides a PyNN-like API. Parameters can be set at the synapse, neuron, and network level. Supported features include: Izhikevich neurons, current-based and conductance based synapses, STDP, STP and homeostatic synaptic scaling. Automated parameter tuning uses evolutionary algorithms.

Catacomb 3

Catacomb 3 is modeling system for defining, building and exploring biological models. Its focus is on biologically plausible cells, synapses and networks within the context of whole animal behavior..

CSIM - neural microCircuit SIMulator

CSIM is a tool for simulating heterogeneous networks composed of different classes of model neurons (analog/spiking) and synapses (Static/STDP). The simulator is written in C++ with a Matlab user interface.


PCSIM is a parallel version for the distributed simulatioin of large scale networks. The simulator now has a Python user interface. Import / export of NeuroML is in development.


Numerical solver for coupled population density equations.


DynaSim is an open-source MATLAB/GNU Octave toolbox for rapid prototyping of neural models and batch simulation management. It is designed to speed up and simplify the process of generating, sharing, and exploring network models of neurons with one or more compartments.


GeNN is a GPU enhanced Neuronal Network simulation environment based on Nvidia CUDA technology.

Human Neocortical Neurosolver (HNN)

HNN simulates the electrical activity of the neocortical cells and circuits that generate the primary electrical currents underlying EEG/MEG recordings. Parameters are adjusted to test alternate hypotheses on signal generation.

Large Scale Neural Modeling (LSNM) simulator in Python

Bundled with scripts to create stimuli (visual and auditory) for simulation, as well as those to analyse and visualize simulated neuronal and neuroimaging data.


An integrated workflow framework for large scale neural simulations Built on top of PyNN, Neo, matplotlib.


Designed to model large networks of biological neural networks. Neurons are integrate and fire with STDP. Python bindings.

NCS - NeoCortical Simulator

Allows large networks of many biologically realistic (Hodgkin-Huxley) neurons to be constructed.


Nengo is designed around the neural engineering framework (NEF). It is intended for modelling very large networks of neurons, using spiking point-neuron models. The scripting language used in Nengo is Python.

NESim - Neural Engineering Simulator

Now replaced by Nengo {see above).


A simulation system for large networks of biologically realistic (spiking) neurons. It is best suited for the simulation of large networks of spiking point-neuron models. The internal dynamics of these models may be arbitrarily complex.


A modeling language for spiking neuron and synapse models for NEST. Provides an abstraction layer that can then also be used by other high-level modeling languages such as NineML or NeuroML.


As of NEST 2.0, this included extension module allows simulations to be coded using the Python programming language..

NETMORPH simulator

NETMORPH is a simulation environment for the developmental generation of 3D large-scale neuronal networks with realistic neuron morphologies.


neurolib is a computational framework for simulating coupled neural mass models written in Python.

NEVESIM - Neural EVEnt-based SIMulator

NEVESIM is a software package for event-driven simulation of spiking neural networks. The simulator is written in C++ with a primary interface to Python

NSL - Neural Simulation Language


The Neurokernel Project aims to build an open software platform for the emulation of the entire brain of the fruit fly Drosophila melanogaster on multiple Graphics Processing Units (GPUs). Developed in Python and CUDA.


Open-source Python toolkit for rate-based neural network and dynamical systems modeling.


ReMoto is a web-based simulator of the spinal cord and innervated muscles of the human leg. One may study the output spike trains of a single neuron (two-compartment model with ionic channels) in response to different inputs (stochastic or deterministic, synaptic or injected current) and/or to a change of the dynamic description of its ionic channels. One may also study the spike trains of whole networks of spinal neurons as well as the resultant force and electrical activity of the innervated muscles.


GPU based Spiking Neural Network (SNN) simulator designed with the purpose of enabling more effective research in the field of Computational Neuroscience through a high speed simulation environment which remains extremely flexible in its implementation of neuron, synapse and STDP modeis.


Simulates very large networks of asynchronous spiking neurones in real time.


SpikingNetworks.jl is a julia package for computational neuroscientists to simulate large scale spiking neural networks.


Modeling at the level of cortical maps. Written in Python (pip or github allow for download of the current or development version, respectively).

TVB - The Virtual Brain

TVB enables biologically realistic modeling of network dynamics using Connectome-based approaches across different brain scales.

VERTEX Virtual Electrode Recording Tool for EXtracellular potentials

is a Matlab tool for simulating extracellular potential recordings in spiking neural network models.


Simulates biological neural networks. Uses two models: leaky integrator or ion-conductance based (or hybrid).

D. Interoperability


BRAHMS is a modular framework for executing integrated systems built from component software. Conceptually similar to that of Simulink or Labview, it links the outputs of some processes into the inputs of others.

CSA - Connection Set Algebra

The CSA library provides elementary connection-sets and operators for combining them. It also provides an iteration interface to such connection-sets enabling efficient iteration over existing connections with a small memory footprint also for very large networks. The CSA can be used as a component of neuronal network simulators or other tools.


Lancet makes it easy to reproducibly specify a parameter space, run jobs, and collate the output from an external simulator or analysis tool. The approach is fully general, to allow the researcher to switch between different software tools and platforms as necessary. Integrates well with other popular tools such as IPython Notebook and the pandas data analysis library.

MUSIC - MUlti-SImulation Coordinator

The project provides a standardized software interface for runtime communication between disparate parallel applications for large-scale modeling. Built on top of MPI. Demonstrated to work with NEST, Neuron and MOOSE.

NEOSIM2 - a parallel kernel for spiking neurons

The neosim project includes a parallel discrete event simulation kernel for running models of spiking neurons on a cluster of workstations. Models are specified using NeuroML, and visualised using Java2D.


Software to ease the development of large 3D networks of biologically realistic neurons for the NEURON, GENESIS, MOOSE, PSICS and PyNN based simulators. Imports cell morphology files from these simulators as well as from SWC, Neurolucida and MorphML format files. Cellular mechanisms can be imported from .mod or .g or ChannelML files. Model generation and execution also scriptable with Python.


An open source platform for emulating the fruit fly brain. Developed in Python and CUDA.


An XML based Markup Language for models in neuroscience. It allows for specification of neuronal morphology, the distribution of ion channels on cell membranes, descriptions of the channel mechanisms and of neuronal connectivity. Current development activity can be followed at SourceForge.


This package provides a Python API for working with simulator-independent representations of biophysically- and morphologically-detailed neuron models, with an efficient internal representation and serialization to/from NeuroML. From the NeuroEnsemble Project.

Validation of NeuroML and MorphML files

Web based validation of XML files against the various XML Schema documents which define the NeuroML(MorphML,ChannelML,NetworkML) specification. Also provides software for translating NeuroML documents into valid code for use with GENESIS, MOOSE, NEURON and PCICS.


NeuroTools is a collection of tools to support all tasks associated with a neural simulation project and which are not handled by the simulation engine. It is written in Python, and provides modules to facilitate simulation setup, parameterization, data management, analysis and visualization.

NineML - Network Interchange for NEuroscience

An XML based Markup Language for describing spiking neuronal network models.

NSDF - Neuroscience Simulation Data Format

is a file format built on top of HDF5. This Python module provides a high level API for reading and writing NSDF files.


PyNN is a Python package for simulator-independent specification of neuronal network models; currently supports NEURON, NEST, PCSIM, Brian and MOOSE.

sPyNNaker - PyNN Simulations on SpiNNaker Hardware

This package provides common code for PyNN implementations for the SpiNNaker neuromorphic machine.

SpineML Spiking Neural Mark-up Language

is an extention of NineML (see above), designed for large networks of spiking point neurons (SNN) or rate-coded neural units (RCN). A set of XSLT templates automatically generates valid code for three simulators: Brahms, DAMSON and PyNN.


Provides a graphical editor for SpineML models with support for running model simulations. Cross platform (OSX, Linux. Windows).

E. Parameter Fitting


The Blue Brain Python Optimisation Library (BluePyOpt) is an extensible framework for data-driven model parameter optimisation that wraps and standardises several existing open-source tools.


Software for fitting Hodgkin-Huxley models to voltage-clamp data. A Python interpreter is bundled as part of the NEUROFIT package.


Neurofitter is a parameter tuning package for electrophysiological neuron models.


Optimizer is a GUI-based application for the optimization of conductance based neuron models. Developed in Python using Python modules for nonlinear optimization. Interfaces directly with NEURON; other simulators can be used.


A discpline-agnostic framework for data-driven unit testing of scientific models.


NeuronUnit uses the SciUnit-framework to test models of ion channels, neurons, and neuronal networks.


Uncertainpy is a python toolbox for uncertainty quantification and sensitivity analysis of computational models and features of the models. The model itself does not need to be implemented in Python. Any simulator can be used, as long as the model parameters can be controlled and the simulation output retrieved via Python. Demonstrated with NEURON and NEST.


INCF is again mentoring projects in Google Summer of Code (GSoC)
GSoC is a global program that offers students stipends to write code for open source projects.
Here is the 2023 list of project ideas. Open-source beginners application deadline: Abt. April, 2023.

Open Science Community Driven Neuroscience Computing Platforms:

NeuroDebian provides a large collection of popular neuroscience research software for the Debian operating system as well as Ubuntu and other derivatives.
NeuroFedora is an initiative to provide a ready to use Fedora based Free/Open source software platform for neuroscience.

A. Data Acquisition and Control

MRCI - Model Reference Current Injection

Simulates ionic currents in real time (up to 50kHz). Can be used to: (i) artificially insert ion channels into a neuron, (ii) connect in vitro neurons with simulated synapses, or (iii) connect simulated neurons to in vitro neurons. Runs on Linux with the RTLinux kernel extention. Now replaced by Real-Time eXperiment Interface - RTXI (see below).


Commercial but widely used software for microscope control, 3D neuron reconstruction, brain mapping and morphometry from either a live camera image or acquired image stacks. Runs on Windows XP, Vista, 7 in 32 or 64 bit versions. Includes extensive morphological analyses in the companion product Neurolucida Explorer (included). Hardware support for Zeiss, Olympus, Nikon and Leica microscopes, motorized stages, filter wheels, spinning disks, advanced digital cameras, and focus encoders.

Several free tools can be found elsewhere on this page that can directly use or convert Neurolucida output files.

Real-Time eXperiment Interface (RTXI)

The result of merging: MRCI (above), the next generation of Stocastic Dynamic Clamp (see below) and Real-Time Linux Lab to provide a more general purpose experimental control system.

StdpC - Spike timing dependent plasticity Clamp

A modification of DynClamp2 (see above) to include the following features: (i) a spike generator, (ii) hidden parameter panels, (iii) data displays for debugging, (iv) saving and loading of parameter settings, (v) spike timing dependent plasticity, and (vi) experimental automatization and scripting.

B. Data Analysis and Visualization

1. Computational Morphology and Format Conversion

CARET (Computerized Anatomical Reconstruction and Editing Toolkit)

is designed for interactively viewing, manipulating, and analyzing surface reconstructions of the cerebral and cerebellar cortex.

CATMAID - Collaborative Annotation Toolkit for Massive Amounts of Image Data

Designed to navigate, share and collaboratively annotate massive image data sets of biological specimens. The interface is inspired by GoogleMaps, with which it shares basic navigation concepts, enhanced to allow the exploration of 3D biological image data acquired by optical or physical sectioning microscopy techniques.


FreeSurfer is a set of tools for analysis and visualization of structural and functional brain imaging data. FreeSurfer contains a fully automatic structural imaging stream for processing cross sectional and longitudinal data.


KNOSSOS visualizes large 3D (up to multiple terabyte) volume electron microscopic (e.g. Serial Block-Face EM) datasets by displaying slices. It supports skeleton and volume-based annotation modes, which can be extended by plugins written in Python. For Windows, GNU/Linux and OS X.


is a software package for the generation and description of dendritic morphology. Virtual neurons are created by the stochastic implementation of neuroanatomical rules. Statistical distributions of parameters used can be measured from computer files of reconstructed neurons in several commonly used formats. Generated neurons can be saved as compartmental files compatible with the GENESIS and NEURON simulators.


Fast, sensitive neuron similarity search. NBLAST considers both position and local geometry and works by decomposing a query and target neuron into short segments; matched segment pairs are scored using a log-likelihood ratio scoring matrix empirically defined by the statistics of real matches and non-matches.


A Generator for realistic Neurons in 3D. NeuGen is made for the generation of dendritic and axonal morphology of realistic neurons and neuroal networks in 3D. It directly supports geometry formats for using the NEURON simulation software.

NeuRA - Neuron Reconstruction Algorithm

NeuRA is a program for automatic convertion of image stacks, which are aquired by 2-photon microscopy, into vector diagrams.


Allows neurons to be vizualized/rotated in three dimensions. Accepts Neurolucida, Eutectics and NeuroZoom files as input. For Win 98/NT/2000/XP.

NeuroMaC - Neuronal Morphologies and Circuits

is a computational framework to generate large amounts of virtual neuronal morphologies simultaneously, as well as their resultant microcircuits.


Neuromantic is a free tool for the semi-manual or semi-automatic reconstruction of neurons for single images or image stacks.


NeuroMorph is a toolset designed to import, analyze, and visualize mesh models. It has been designed specifically for the morphological analysis of 3D objects derived from serial electron microscopy images of brain tissue. Developed as a set of plug-ins for Blender.


An ImageJ plugin to semi-automate Neurite Tracing and Quantification


A plug-in for ImageJ that allows one to measure the coordinates and the diameter of a section of a neuron together with other information that can be used to reconstruct neuron morphology. Outputs .swc format files.


An automated system for digitization, 3D reconstruction and geometric analysis of detailed neuronal morphology. Scales from spine geometry through multi neuron networks.


The main function of neuTube is to generate a neuron structure from a 3D image with user interaction, which mainly consists of mouse clicks. It can also load SWC files from any other source for visualization or further editing.

NIPY - Neuroimaging in Python

NLMorphologyConverter / Viewer - from Neuronland

A command line program for converting between 3D neuron morphology formats. Currently 25 formats are supported, including Neurolucida, SWC, MorphML, NeuroZoom, Eutectics. The viewer is a GUI that provides interactive views of any format supported by the converter.


Converts morphology description files in a variety of formats: Eutectic, Douglas (2d and 3d), Nevin, Neurolucida for use in NEURON.

PView - Polygonized Viewer

Provides a flight simulator type interface for viewing neurons reconstructed from multiple image stacks.


Morphometric analysis and visualization of the 3D structure of neurons.


PyKNOSSOS is a software tool for the visualization and annotation of 3D image data and was developed for high-throughput image annotation of 3D electron microscopy stacks of brain tissue.


3D reconstruction from serial section image stacks.


StackReg is an ImageJ plugin for the recursive alignment of a stack of images,

SynD - Synapse and neurite Detection

SynD is an automated image analysis routine to analyze dendrite and synapse characteristics in immuno-fluorescence images. Written in Matlab.


TrakEM2 is an ImageJ plugin for morphological data mining, three-dimensional modeling and image stitching, registration, editing and annotation. Exported NeuroML validates to Level 3.

TREES toolbox

Provides tools to automatically reconstruct neuronal branching from microscopy image stacks, visualize and analyze dendritic and axonal trees, and quantitatively comparing branching structures between neurons. Freely distributed but written in Matlab.


Vaa3D is a cross-platform (Mac, Linux, and Windows) tool for visualizing large-scale (gigabytes, and 64-bit data) 3D image stacks and various surface data. It includes modules for 3D image analysis (cell segmentation, neuron tracing, brain registration, annotation, quantitative measurement and statistics) and data management.

VAST Lite - Volume Annotation and Segmentation Tool, Light Edition

VAST was developed for manual annotation of large EM stacks. Runs on 64bit Windows computers that support DirectX 11.

VIAS - Volume Integration and Alignment System

Allows multiple stacks of tiled optical sections obtained from Laser Scanning Microscopy to be integrated into a single volumetric dataset.

XNAT - eXtensible Neuroimaging Archive Toolkit

An informatics platform for managing, exploring, and sharing neuroimaging data. XNAT uses a three-tiered architecture: data archive, middleware, and secure web based user interface.

2. Time Series Data

Chronux project

is an open source software project intended to make signal processing tools for neuroscience data. It is implemented in MATLAB.


Command line library designed to calculate and visualize the SPIKE-distance, the ISI-Distance and SPIKE synchronization between two or more spike trains. Matlab with C++ backend (MEX), Matlab fallback if no MEX-compiler.


DataThief is a program to reverse engineer data points from published graphs.


The primary feature of deepdish is its ability to save and load all kinds of data as HDF5. It can save any Python data structure, as well as those from scipy and pandas.


EEGLAB is an interactive Matlab toolbox for processing continuous and event-related EEG, MEG and other electrophysiological data incorporating independent component analysis (ICA), time/frequency analysis, artifact rejection, event-related statistics, and several useful modes of visualization of the averaged and single-trial data.


Fast spike sorting for hundreds of channels. Implements an integrated template matching framework for detecting and clustering spikes from multi-channel electrophysiological recordings. Very fast when a GPU is available, but can also run on the CPU.


Enables automatic sorting of neuronal action potential waveforms. C++.


Designed to asist neurophysiologists with both manual and automatic spike sorting/cluster cutting. Visualization tools include waveform displays and auto- and cross-correlograms.


A Matlab toolbox which enables a user to perform manual clustering on single-electrode, stereotrode, and tetrode recordings taken with the DataWave and Cheetah recording systems. The toolbox is free-ware, but you will need Matlab 5.2 or higher to run it. Tested on Windows and Solaris.


MATLAB toolbox to detect directed dynamical influences among time series. This new open source software implements four entropy estimators in both uniform and non-uniform embedding approaches. GUI now available.

MVGC: Multivariate Granger Causality Toolbox

This toolbox provides Matlab routines for efficient and accurate estimation and statistical inference of multivariate Granger causality from time-series data.


Neo is a package for representing electrophysiology data in Python, together with support for reading a wide range of neurophysiology file formats, including Spike2, NeuroExplorer, AlphaOmega, Axon, Blackrock, Plexon, Tdt, and support for writing to a subset of these formats plus non-proprietary formats including HDF5. From the NeuralEnsemble initiative.

Elephant (Electrophysiology Analysis Toolkit)

The focus of Elephant is on generic analysis functions for spike train data and time series recordings from electrodes, such as the local field potentials (LFP) or intracellular voltages. Elephant is the direct successor to Neurotools and maintains ties to complementary projects such as OpenElectrophy and Spykeviewer.


OpenElectrophy is a Python module for electrophysiology data analysis (intra- and extra-cellular). OpenElectrophy is built on top of Neo. Includes a complete offline spikesorting tool chain, LFP analysis, data storage. From the NeuralEnsemble initiative.


Spyke Viewer is a multi-platform GUI application for navigating, analyzing and visualizing data from electrophysiological experiments or neural simulations. It is based on the Neo library, which enables it to load a wide variety of data formats used in electrophysiology. From the NeuralEnsemble initiative.


neurALC is an open-source cross-platform software for the analysis of multi-electrode recordings. It also offers analysis functions like population activity estimation, single electrode/unit PSTH, ISI & instant firing rate calculation, correlation/autocorrelation, spectrum, delay, mutual information, recurrence plots, among others. Visualization of the recordings can be done in 2D and 3D.


A set of reusable java components for neuronal data analysis. Initially developed to explore neuronal coding of sensory objects on primary sensory cortices and hippocampus.


NeuroMatic is a collection of Igor Pro functions for analyzing electrophysiological data.


NeuroSpec consists of a number of MATLAB functions for performing multivariate Fourier analysis of time series and/or point process (spike train or event) data, and plotting the results. Version 2.1 includes extensions for non-parametric directionaltiy analysis of time series and spike train data.


(nev toolkit) is a tool for handling neuronal event files.


The NIX project (previously called Pandora) started in the context of the Electrophysiology Task Force which is part of the INCF Datasharing Program. As such, the Task Force aims to develop standardized methods and models for storing electrophysiology and other neuroscience data together with their metadata in one common file format based on HDF5.


Oscilloscope is a Macintosh program for visualization and analysis of waveforms generated by neurons or by computer simulations of neurons.


OSort is an online spike sorting algorithm.

PANDORA’s Toolbox

PANDORA is a Matlab Toolbox that makes database management accessible from an electrophysiology project; queries use SQL syntax.

pynapple PYthon Neural Analysis Package.

pynapple is a light-weight python library for neurophysiological data analysis. The goal is to offer a versatile set of tools to study typical data in the field, i.e. time series (spike times, behavioral events, etc.) and time intervals (trials, brain states, etc.). It also provides users with generic functions for neuroscience such as tuning curves and cross-correlograms.


Implementations of ISI-distance, SPIKE-distance, and SPIKE-Synchronization as an open source Python library. Cython backend for optimal performance (factor 100-200 over plain Python), Python fallback if Cython is not available.


Implemented completely in Python, SpikeSort features manual and automatic clustering, handles HDF5 and other data formats. Open source.


Graphical user interface designed to calculate and visualize the SPIKE-distance, the ISI-Distance and SPIKE synchronization between two or more spike trains. Matlab with C backend (MEX), Matlab fallback if no MEX-compiler.


Spykes is a collection of Python tools to make the visualization and analysis of neural data easy and reproducible.

STAR: Spike Train Analysis with R

STAR is an R package to analyze spike trains. It provides tools to visualize spike trains and fit, test and compare models of discharge applied to actual data from one or several neurons.


Unsupervised detection and sorting.

3. Network Visualization

C-PAC (Configurable Pipeline for the Analysis of Connectomes)

C-PAC is an open-source software pipeline for automated preprocessing and analysis of resting-state fMRI data.


A blueprint of the brain. A set of tools for loading and analyzing connectome data into a Neo4j database. Sample data sets are provided from Drosophila.

NeurAnim - the Neuron Animator

Transforms a simple description of the geometry and activity of a network of neurons and transforms it to a 3D animation. C++ with the addition of the OpenGL extension of QT. Tested on Fedora II with QT 3.3.

C. Database Management


Provides for XML based management and sharing of scientific data and metadata.


A modular tool for neuroscience databases. Helmholtz is an open-source tool for developing customized neuroscience databases, implemented as a series of components built with Python and the Django web framework. It provides an abstraction of the underlying database layer, so that any supported relational database can be used (e.g. MySQL, PostgreSQL, Oracle or the built-in SQLite).


The NeuroScholar system is a knowledge management system for the neuroscientific literature, allowing users to build an organized library of PDF files and then make and manage free-form notes based on the articles.


X Windows anatomical database allows graphical and text-based storage and retrieval of connectivity data.

D. Differential Equation Solvers

DSTool - Dynamical System Toolkit

Very good for phaseplane analysis. Patched versions for Redhat linux are available. For current development efforts providing expanded capabilities as a full modeling package see PyDSTool (within Compartmental Modeling above).


Another good tool for phaseplane analysis, among other functions (see fuller description under Compartmental Modeling above).

This page is maintained by Jim Perlewitz ( )
Please send reports of errors, updates, omissions, or suggestions.
Last updated Feb. 20, 2023.

Valid XHTML 1.1 Valid CSS! Registered with NIF