Skip to content
Snippets Groups Projects
Commit b960aed1 authored by Dilawar Singh's avatar Dilawar Singh
Browse files

Merge commit 'dfa32490'

parents 3404d0b5 dfa32490
No related branches found
No related tags found
No related merge requests found
Showing
with 0 additions and 861 deletions
moose-examples/docs/source/images/rdes6_multiscale.png

37.5 KiB

moose-examples/docs/source/images/rdes7_passive.png

33.4 KiB

moose-examples/docs/source/images/rdes8_active.png

64.8 KiB

moose-examples/docs/source/images/rdes9_spiny_active.png

181 KiB

moose-examples/docs/source/images/reacDiffBranchingNeuron.png

19.1 KiB

moose-examples/docs/source/images/squid_demo.png

53 KiB

moose-examples/docs/source/images/testWigglySpines3.png

205 KiB

moose-examples/docs/source/images/tweakingParameters.png

47.4 KiB

moose-examples/docs/source/images/twoCells.png

25.7 KiB

.. MOOSE documentation master file, created by
sphinx-quickstart on Tue Jan 31 14:57:39 2017.
You can adapt this file completely to your liking, but it should at least
contain the root `toctree` directive.
MOOSE
=====
.. toctree::
introduction/index_intro
install/index_install
user/py/quickstart/index_qs
user/py/cookbook/index_ckbk
user/py/graphics/index_graphics
user/py/references/index_ref
Indices and tables
==================
* :ref:`genindex`
* :ref:`modindex`
* :ref:`search`
Installation
============
Use pre-built packages
----------------------
Linux
^^^^^
We recommend that you use our repositories hosted at `Open Build Service
<http://build.opensuse.org>`_. We have packages for the following distributions
- Debian 7.0, 8.0
- Ubuntu 12.04, 14.04, 15.04, 15.10, 16.04
- CentOS 6, 7
- Fedora 20, 21, 22, 23
- OpenSUSE 13.1, 13.2, Factory ARM, Leap 42.1, Tumbleweed
- SLE 12, 12 SP1
- RHEL 7
- Scientific Linux 7
Visit `this page
<https://software.opensuse.org/download.html?project=home:moose&package=moose>`_
pick you distribution and follow instructions.
.. note::
``moogli`` (tool to visualize network activity) is not available for CentOS-6.
.. raw:: html
<iframe
src="http://software.opensuse.org/download/package.iframe?project=moose&package=moose"></iframe>
.. todo:: Packages for gentoo, Arch Linux
Mac OSX
^^^^^^
Download the ``dmg`` file from `here <https://github.com/BhallaLab/moose/releases/download/ghevar_3.0.2/Moose_3.0.2_OSX.dmg>`_.
Alternatively, you can use ``homebrew`` to install ``moose``
::
$ brew install homebrew/science/moose
Windows/Cygwin
^^^^^^^^^^^^^^
Building MOOSE
--------------
In case your distribution is not listed on `our repository page
<https://software.opensuse.org/download.html?project=home:moose&package=moose>`_
, or if you want to build the lastest development code, read on.
First, you need to get the source code. You can use ``git`` (clone the
repository) or download snapshot of github repo by clicking on `this link
<https://github.com/BhallaLab/moose/archive/master.zip>`_.::
$ git clone https://github.com/BhallaLab/moose
Or,
::
$ wget https://github.com/BhallaLab/moose/archive/master.zip
$ unzip master.zip
If you don't want lasest snapshot of ``MOOSE``, you can download other released
versions from here `https://github.com/BhallaLab/moose/releases`.
Install dependencies
~~~~~~~~~~~~~~~~~~~
Next, you need to install required dependencies. Depending on your OS, names of
following packages may vary.
- cmake (version 2.8 or higher)
- gsl-1.16 or higher `download <ftp://ftp.gnu.org/gnu/gsl/>`_.
- libhdf5 development package e.g. `libhdf5-serial-dev` or `libhdf5-devel`
- python development package e.g. `python-dev` or `python-devel`
- numpy e.g. `python-numpy` or `numpy`
Most of the dependencies can be installed using package manager.
On ``Debian/Ubuntu``
::
$ sudo apt-get install libhdf5-dev cmake libgsl0-dev libpython-dev python-numpy
.. note::
Ubuntu 12.04 does not have required version of ``gsl`` (required 1.16 or
higher, available 1.15). On Ubuntu 16.04, package name is ``libgsl-dev``.
On ``CentOS/Fedora/RHEL/Scientific Linux``
::
$ sudo yum install hdf5-devel cmake libgsl-dev python-devel python-numpy
On ``OpenSUSE``
::
$ sudo zypper install hdf5-devel cmake libgsl-dev python-devel python-numpy
Now use `cmake` to build moose
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.. codeblock:: bash
$ cd /to/moose/source/code
$ mkdir _build
$ cd _build
$ cmake ..
$ make
$ ctest --output-on-failure # optional
This will build pyMOOSE (MOOSE's python extention), `ctest` will run few tests to
check if build process was successful.
.. note::
To install MOOSE into non-standard directory, pass additional argument
`-DCMAKE_INSTALL_PREFIX=path/to/install/dir` to cmake
::
$ cmake -DCMAKE_INSTALL_PREFIC=$HOME/.local ..
To use different version of python
::
$ cmake -DPYTHON_EXECUTABLE=/opt/python3/bin/python3 ..
After that installation is pretty easy
::
$ sudo make install
If everything went fine, you should be able to import moose in python shell.
.. code-block:: python
import moose
Graphical User Interface (GUI)
------------------------------
You can get the source of ``moose-gui`` from `here
<https://github.com/BhallaLab/moose-gui>`_. You can download it either by
clicking on `this link <https://github.com/BhallaLab/moose-gui/archive/master.zip>`_
or by using ``git`` ::
$ git clone https://github.com/BhallaLab/moose-gui
To be able to launch ``moose-gui``, you need to install some more packages
- matplotlib
- python-qt4
On ``Ubuntu/Debian``, these can be installed with
::
$ sudo apt-get install python-matplotlib python-qt4
On ``CentOS/Fedora/RHEL``
::
$ sudo yum install python-matplotlib python-qt4
Now you can fire up the GUI
::
$ cd /to/moose-gui
$ python mgui.py
.. note::
If you have installed ``moose`` package, then GUI is launched by
running following commnad::
$ moose
Building moogli
---------------
``moogli`` is subproject of ``MOOSE`` for visualizing models. More details can
be found `here <http://moose.ncbs.res.in/moogli>`_.
`Moogli` is part of `moose` package. Building moogli can be tricky because of
multiple depednecies it has.
To get the latest source code of ``moogli``, click on `this link <https://github.com/BhallaLab/moogli/archive/master.zip>`_.
Moogli depends on ``OpenSceneGraph`` (version 3.2.0 or higher) which may not
be easily available for your operating system.
For this reason, we distribute required ``OpenSceneGraph`` with ``moogli``
source code.
Depending on distribution of your operating system, you would need following
packages to be installed.
On ``Ubuntu/Debian``
::
$ sudo apt-get install python-qt4-dev python-qt4-gl python-sip-dev libqt4-dev
On ``Fedora/CentOS/RHEL``
::
$ sudo yum install sip-devel PyQt4-devel qt4-devel libjpeg-devel PyQt4
On ``openSUSE``
::
$ sudo zypper install python-sip python-qt4-devel libqt4-devel python-qt4
After this, building and installing ``moogli`` should be as simple as
::
$ cd /path/to/moogli
$ mkdir _build
$ cd _build
$ cmake ..
$ make
$ sudo make install
If you run into troubles, please report it on our `github repository
<https://github.com/BhallaLab/moose/issues>`_.
Installation
=============
Use pre-built packages
-----------------------
Linux
^^^^^^
We recommend that you use our repositories hosted at `Open Build Service
<http://build.opensuse.org>`_. We have packages for the following distributions
- Debian 7.0, 8.0
- Ubuntu 12.04, 14.04, 15.04, 15.10, 16.04
- CentOS 6, 7
- Fedora 20, 21, 22, 23
- OpenSUSE 13.1, 13.2, Factory ARM, Leap 42.1, Tumbleweed
- SLE 12, 12 SP1
- RHEL 7
- Scientific Linux 7
Visit `this page
<https://software.opensuse.org/download.html?project=home:moose&package=moose>`_
to pick your distribution and follow instructions.
.. note::
``moogli`` (tool to visualize network activity) is not available for CentOS-6.
.. raw:: html
<iframe
src="http://software.opensuse.org/download/package.iframe?project=moose&package=moose"></iframe>
.. todo:: Packages for gentoo, Arch Linux
Mac OSX
^^^^^^^
Download the ``dmg`` file from `here <https://github.com/BhallaLab/moose/releases/download/ghevar_3.0.2/Moose_3.0.2_OSX.dmg>`_.
Alternatively, you can use ``homebrew`` to install ``moose``
::
$ brew install homebrew/science/moose
Windows/Cygwin
^^^^^^^^^^^^^^
Building MOOSE
--------------
In case your distribution is not listed on `our repository page
<https://software.opensuse.org/download.html?project=home:moose&package=moose>`_
, or if you want to build the lastest development code, read on.
First, you need to get the source code. You can use ``git`` (clone the
repository) or download snapshot of github repo by clicking on `this link
<https://github.com/BhallaLab/moose/archive/master.zip>`_.::
$ git clone https://github.com/BhallaLab/moose
Or,
::
$ wget https://github.com/BhallaLab/moose/archive/master.zip
$ unzip master.zip
If you don't want lasest snapshot of ``MOOSE``, you can download other released
versions from here `https://github.com/BhallaLab/moose/releases`.
Install dependencies
^^^^^^^^^^^^^^^^^^^^
Next, you need to install required dependencies. Depending on your OS, names of
following packages may vary.
- cmake (version 2.8 or higher)
- gsl-1.16 or higher `download <ftp://ftp.gnu.org/gnu/gsl/>`_.
- libhdf5 development package e.g. `libhdf5-serial-dev` or `libhdf5-devel`
- python development package e.g. `python-dev` or `python-devel`
- numpy e.g. `python-numpy` or `numpy`
Most of the dependencies can be installed using package manager.
On ``Debian/Ubuntu``
::
$ sudo apt-get install libhdf5-dev cmake libgsl0-dev libpython-dev python-numpy
.. note::
Ubuntu 12.04 does not have required version of ``gsl`` (required 1.16 or
higher, available 1.15). On Ubuntu 16.04, package name is ``libgsl-dev``.
On ``CentOS/Fedora/RHEL/Scientific Linux``
::
$ sudo yum install hdf5-devel cmake libgsl-dev python-devel python-numpy
On ``OpenSUSE``
::
$ sudo zypper install hdf5-devel cmake libgsl-dev python-devel python-numpy
Now use `cmake` to build moose
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.. code-block:: bash
$ cd /to/moose/source/code
$ mkdir _build
$ cd _build
$ cmake ..
$ make
$ ctest --output-on-failure # optional
This will build pyMOOSE (MOOSE's python extention), `ctest` will run few tests to
check if build process was successful.
.. note::
To install MOOSE into non-standard directory, pass additional argument
`-DCMAKE_INSTALL_PREFIX=path/to/install/dir` to cmake
::
$ cmake -DCMAKE_INSTALL_PREFIC=$HOME/.local ..
To use different version of python
::
$ cmake -DPYTHON_EXECUTABLE=/opt/python3/bin/python3 ..
After that installation is pretty easy
::
$ sudo make install
If everything went fine, you should be able to import moose in python shell.
.. code-block:: python
import moose
Graphical User Interface (GUI)
------------------------------
You can get the source of ``moose-gui`` from `here
<https://github.com/BhallaLab/moose-gui>`_. You can download it either by
clicking on `this link <https://github.com/BhallaLab/moose-gui/archive/master.zip>`_
or by using ``git`` ::
$ git clone https://github.com/BhallaLab/moose-gui
To be able to launch ``moose-gui``, you need to install some more packages
- matplotlib
- python-qt4
On ``Ubuntu/Debian``, these can be installed with
::
$ sudo apt-get install python-matplotlib python-qt4
On ``CentOS/Fedora/RHEL``
::
$ sudo yum install python-matplotlib python-qt4
Now you can fire up the GUI
::
$ cd /to/moose-gui
$ python mgui.py
.. note::
If you have installed ``moose`` package, then GUI is launched by
running following commnad::
$ moose
Building moogli
---------------
``moogli`` is subproject of ``MOOSE`` for visualizing models. More details can
be found `here <http://moose.ncbs.res.in/moogli>`_.
`Moogli` is part of `moose` package. Building moogli can be tricky because of
multiple depednecies it has.
To get the latest source code of ``moogli``, click on `this link <https://github.com/BhallaLab/moogli/archive/master.zip>`_.
Moogli depends on ``OpenSceneGraph`` (version 3.2.0 or higher) which may not
be easily available for your operating system.
For this reason, we distribute required ``OpenSceneGraph`` with ``moogli``
source code.
Depending on distribution of your operating system, you would need following
packages to be installed.
On ``Ubuntu/Debian``
::
$ sudo apt-get install python-qt4-dev python-qt4-gl python-sip-dev libqt4-dev
On ``Fedora/CentOS/RHEL``
::
$ sudo yum install sip-devel PyQt4-devel qt4-devel libjpeg-devel PyQt4
On ``openSUSE``
::
$ sudo zypper install python-sip python-qt4-devel libqt4-devel python-qt4
After this, building and installing ``moogli`` should be as simple as
::
$ cd /path/to/moogli
$ mkdir _build
$ cd _build
$ cmake ..
$ make
$ sudo make install
If you run into troubles, please report it on our `github repository
<https://github.com/BhallaLab/moose/issues>`_.
Changes
=======
.. todo:: collect changes from OBS.
Introduction
============
What is MOOSE and what is it good for?
--------------------------------------
MOOSE is the Multiscale Object-Oriented Simulation Environment. It is designed to simulate neural systems ranging from subcellular components and biochemical reactions to complex models of single neurons, circuits, and large networks. MOOSE can operate at many levels of detail, from stochastic chemical computations, to multicompartment single-neuron models, to spiking neuron network models.
.. figure:: ../../images/Gallery_Moose_Multiscale.png
:alt: **multiple scales in moose**
:scale: 50%
*Multiple scales can be modelled and simulated in MOOSE*
MOOSE is multiscale: It can do all these calculations together. One of its major uses is to make biologically detailed models that combine 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 numerical 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.
.. toctree::
release_notes/index
changes/index
known_issues/index
Known issues
============
Full report can be found at the following places
- Related to build, packages and documentation `https://github.com/BhallaLab/moose/issues`
- Related to python interface of MOOSE `https://github.com/BhallaLab/moose-core/issues`
- Related to MOOSE GUI `https://github.com/BhallaLab/moose-gui/issues`
- Related to ``moogli`` `https://github.com/BhallaLab/moogli/issues`
Release Notes
============
.. todo:: Collect release notes from github.
****************
Chemical Aspects
****************
.. _ckbk-chem-load-run:
Load - Run - Save models
========================
Load a Kinetic Model
--------------------
.. automodule:: loadKineticModel
:members:
Load an SBML Model
-------------------
.. automodule:: loadSbmlmodel
:members:
Load a CSpace Model
-------------------
.. automodule:: loadCspaceModel
:members:
Save a model into SBML format
-----------------------------
.. automodule:: convert_Genesis2Sbml
:members:
Save a model
------------
.. automodule:: savemodel
:members:
.. _ckbk-chem-snippets:
Simple Examples
===============================
Set-up a kinetic solver and model
---------------------------------
with Scripting
^^^^^^^^^^^^^^
.. automodule:: scriptGssaSolver
:members:
With something else
^^^^^^^^^^^^^^^^^^^
.. automodule:: changeFuncExpression
:members:
Building a chemical Model from Parts
------------------------------------
.. automodule:: scriptKineticSolver
:members:
Cross-Compartment Reaction Systems
----------------------------------
.. automodule:: crossComptSimpleReac
:members:
.. automodule:: crossComptOscillator
:members:
.. automodule:: crossComptNeuroMesh
:members:
.. automodule:: crossComptSimpleReacGSSA
:members:
Tweaking Parameters
-------------------
.. automodule:: tweakingParameters
:members:
Models' Demonstration
---------------------
Oscillation Model
^^^^^^^^^^^^^^^^^
.. automodule:: slowFbOsc
:members:
Bistability Models
^^^^^^^^^^^^^^^^^^
MAPK feedback loop model
~~~~~~~~~~~~~~~~~~~~~~~~
.. automodule:: mapkFB
:members:
Simple minimal bistable model
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.. automodule:: scaleVolumes
:members:
Strongly bistable Model
~~~~~~~~~~~~~~~~~~~~~~~
.. automodule:: strongBis
:members:
Model of bidirectional synaptic plasticity
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[showing bistable chemical switch]
.. automodule:: bidirectionalPlasticity
:members:
Reaction Diffusion Models
-------------------------
[Reaction-diffusion + transport in a tapering cylinder]
.. automodule:: cylinderDiffusion
:members:
.. automodule:: cylinderMotor
:members:
.. automodule:: gssaCylinderDiffusion
:members:
Neuronal Diffusion Reaction
^^^^^^^^^^^^^^^^^^^^^^^^^^^
.. automodule:: rxdFuncDiffusion
:members:
.. automodule:: rxdReacDiffusion
:members:
.. automodule:: rxdFuncDiffusionStoch
:members:
A Turing Model
--------------
.. automodule:: TuringOneDim
:members:
A Spatial Bistable Model
------------------------
.. automodule::
:members:
Reaction Diffusion in Neurons
-----------------------------
.. automodule:: reacDiffConcGradient
:members:
.. automodule:: reacDiffBranchingNeuron
:members:
.. automodule:: reacDiffSpinyNeuron
:members:
.. automodule:: diffSpinyNeuron
:members:
Manipulating Chemical Models
----------------------------
Running with different numerical methods
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.. automodule:: switchKineticSolvers
:members:
Changing volumes
^^^^^^^^^^^^^^^^
.. automodule:: scaleVolumes
:members:
Feeding tabulated input to a model
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.. automodule:: analogStimTable
:members:
Finding steady states
^^^^^^^^^^^^^^^^^^^^^
.. automodule:: findChemSteadyState
:members:
Making a dose-response curve
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.. automodule:: chemDoseResponse
:members:
Transport in branching dendritic tree
-------------------------------------
.. automodule:: transportBranchingNeuron
:members:
.. _ckbk-chem-rde:
RDesigneur
==========
.. _ckbk-chem-tut:
Tutorials
=========
Deterministic Simulation
------------------------
Stochastic Simulation
---------------------
Finding Steady State (CSpace)
-----------------------------
.. automodule:: cspaceSteadyState
:members:
Building Simple Reaction Model
------------------------------
Define a kinetic model using the scripting
---------------------
.. automodule:: scriptKineticModel
:members:
.. _ckbk-chem-adv:
Advanced Examples
=================
*********************************************
Single Neuron Electrical Aspects (BioPhysics)
*********************************************
.. _ckbk-elec-load-run:
Load and Run simple models
==========================
Single Cubicle Compartmental Neuron
-----------------------------------
.. automodule:: cubeMeshSigNeur
:members:
Single Neuron Model
-------------------
.. automodule:: testSigNeur
:members:
Load neuron model from GENESIS
------------------------------
.. automodule:: neuronFromDotp
:members:
Integrate-and-fire models
-------------------------
.. automodule:: IntegrateFireZoo
:members:
.. _ckbk-elec-snippets:
Simple Examples
===============================
Gap Junction
------------
.. automodule:: gapjunction
:members:
Voltage Clamping
----------------
.. automodule:: vclamp
:members:
Synapse
-------
.. automodule:: synapse
:members:
Generate Pulse
----------------
.. automodule:: pulsegen
:members:
.. automodule:: pulsegen2
:members:
Create a Leaky Neuron
---------------------
.. automodule:: lif
:members:
Create a Leaky Compartment
--------------------------
.. automodule:: lifcomp
:members:
Message transmission via synapse
--------------------------------
.. automodule:: intfire
:members:
Insert Spine heads
------------------
.. automodule:: insertSpinesWithoutRdesigneur
:members:
Multi compartmental Neuron model
--------------------------------
.. automodule:: testHsolve
:members:
.. _ckbk-elec-gui:
GUI
===
.. _ckbk-elec-snippets:
Simple Examples
===============================
.. _ckbk-elec-rde:
RDesigneur
==========
.. _ckbk-elec-tut:
Tutorials
=========
.. _ckbk-elec-adv:
Advanced Examples
=================
.. MOOSE documentation master file, created by
sphinx-quickstart on Tue Jul 1 19:05:47 2014.
You can adapt this file completely to your liking, but it should at least
contain the root `toctree` directive.
Cook Book
===========
.. toctree::
elec
chem
network
multiscale
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment