Click here for stable Linux Packages | Click here for nightly Linux Packages |
This is the parent repository of MOOSE simulator. It keeps stable snapshots of its components: C++ core, Python interface (pymoose) , and Graphical User Interface (GUI).
MOOSE is the Multiscale Object-Oriented Simulation Environment. It is designed to simulate neural systems ranging from biochemical signaling to complex models of single neurons, circuits, and large networks. A typical use case is to model neural activity-driven synaptic plasticity, in which network activity to synapses triggers biochemical reaction-diffusion events, which in turn modulate ion channels to give rise to synaptic plasticity.
MOOSE can operate at many levels of detail, from stochastic chemical computations, to multicompartment single-neuron models, to spiking neuron network models.
MOOSE is multiscale: It can do all these calculations together. For example it handles interactions seamlessly between electrical and chemical signaling. MOOSE is object-oriented. Biological concepts are mapped into classes, and a model is built by creating instances of these classes and connecting them by messages. MOOSE also has classes whose job is to take over difficult computations in a certain domain, and do them fast. There are such solver classes for stochastic and deterministic chemistry, for diffusion, and for multicompartment neuronal models. MOOSE is a simulation environment, not just a numerical engine: It provides data representations and solvers (of course!), but also a scripting interface with Python, graphical displays with Matplotlib, PyQt, and OpenGL, and support for many model formats. These include SBML, NeuroML, GENESIS kkit and cell.p formats, HDF5 and NSDF for data writing.
MOOSE Documentation can be found at https://moose.ncbs.res.in/?q=documentation (could be little outdated) or at https://readthedocs.org/projects/moose (nightly build).
Chamcham series (current version 3.1.4) is an evolutionary update. It has a new Python-based SBML reader, improved handling of reaction-diffusion systems, and substantial refinements to the rdesigneur interface for setting up multiscale models. Several additional rdesigneur tutorials have been implemented.
See the file INSTALL.md.
See the file CREDITS
Look in the moose-examples repository for sample code.
MOOSE comes with a NeuroML reader. Demos/neuroml has some python scripts showing how to load NeuroML models.
MOOSE is backward compatible with GENESIS kinetikit. Demos/Genesis_files has some examples. You can load a kinetikit model with the loadModel function:
moose.loadModel(kkit_file_path, modelname )
MOOSE is backward compatible with GENESIS
moose.loadModel(prototype_file_path, modelname )
MOOSE can also read .swc files from NeuroMorpho.org.
MOOSE is released under the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.