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

Merge branch 'master' of https://github.com/BhallaLab/moose

parents ad66dd93 cedf31d6
No related branches found
No related tags found
No related merge requests found
Showing with 903 additions and 141 deletions
*.png
*.*~
*~
*.html
/moose
language: cpp sudo : required
dist : trusty
group : edge
compiler: compiler:
- gcc - gcc
- clang - clang
os: os:
- linux - linux
- osx - osx
matrix:
allow_failures:
- os: osx
branches: branches:
only: only:
- master - master
...@@ -17,38 +18,18 @@ notifications: ...@@ -17,38 +18,18 @@ notifications:
- dilawar.s.rajput@gmail.com - dilawar.s.rajput@gmail.com
- bhalla@ncbs.res.in - bhalla@ncbs.res.in
- hrani@ncbs.res.in - hrani@ncbs.res.in
- ray.subhasis@gmail.com
on_success: change on_success: change
on_failure: always on_failure: always
env: env:
- CTEST_MODEL=Nightly - CTEST_MODEL=Nightly
cache: apt
before_script: before_script:
- sudo apt-get update -qq - if [ "$TRAVIS_OS_NAME" == "linux" ]; then ./_travis/prepare_linux.sh ; fi
- sudo apt-get install libxml2-dev libbz2-dev wget - if [ "$TRAVIS_OS_NAME" == "osx" ]; then ./_travis/prepare_osx.sh ; fi
- sudo apt-get install libhdf5-serial-dev
- sudo apt-get install python-numpy python-setuptools python-networkx python-pip
- sudo apt-get install cmake cdbs
- sudo apt-get install python-suds python-matplotlib python-nose
- sudo apt-get install python-qt4-dev python-qt4-gl python-sip-dev libqt4-dev libopenscenegraph-dev
- sudo apt-get install doxygen python-sphinx
- sudo apt-get install git-buildpackage
install:
- wget http://ftp.debian.org/debian/pool/main/g/gsl/libgsl0ldbl_1.16+dfsg-2_amd64.deb -O gsl_1.16.deb
- sudo dpkg -i gsl_1.16.deb
- wget http://ftp.debian.org/debian/pool/main/g/gsl/libgsl0-dev_1.16+dfsg-2_amd64.deb -O gsl_1.16-dev.deb
- sudo dpkg -i gsl_1.16-dev.deb
- sudo apt-get install -f
- sudo ldconfig /usr/lib64
script: script:
- git buildpackage --git-ignore-new -uc -us - if [ "$TRAVIS_OS_NAME" == "linux" ]; then ./_travis/build_on_linux.sh ; fi
- sudo dpkg -i ../moose*.deb - if [ "$TRAVIS_OS_NAME" == "osx" ]; then ./_travis/build_on_osx.sh ; fi
after_success:
- python -c 'import moose'
- python -c 'import moogli'
- cd __moose-core_build && ctest --output-on-failure
...@@ -32,7 +32,7 @@ file(MAKE_DIRECTORY ${PYMOOSE_BUILD_DIR}) ...@@ -32,7 +32,7 @@ file(MAKE_DIRECTORY ${PYMOOSE_BUILD_DIR})
# different platform. # different platform.
set(OUTPUT_MOOSEBIN ${PYMOOSE_BUILD_DIR}/moose.bin) set(OUTPUT_MOOSEBIN ${PYMOOSE_BUILD_DIR}/moose.bin)
configure_file( ${CMAKE_SOURCE_DIR}/build_moose-core.sh.in configure_file( ${CMAKE_SOURCE_DIR}/cmake/build_moose-core.sh.in
${CMAKE_BINARY_DIR}/build_moose-core.sh ) ${CMAKE_BINARY_DIR}/build_moose-core.sh )
# Build pymoose module. # Build pymoose module.
......
LICENCE 0 → 100644
This diff is collapsed.
#!/bin/bash -
#===============================================================================
#
# FILE: build_on_travis.sh
#
# USAGE: ./build_on_travis.sh
#
# DESCRIPTION:
#
# OPTIONS: ---
# REQUIREMENTS: ---
# BUGS: ---
# NOTES: ---
# AUTHOR: Dilawar Singh (), dilawars@ncbs.res.in
# ORGANIZATION: NCBS Bangalore
# CREATED: Tuesday 27 June 2017 01:55:11 IST
# REVISION: ---
#===============================================================================
set -o nounset # Treat unset variables as an error
set -e
(
gbp buildpackage --git-ignore-branch --git-ignore-new -uc -us
cd __moose-core_build && ctest --output-on-failure && cd ..
sudo dpkg -D=2 -i ../moose*.deb
cd ~ && /usr/bin/python -c \
"import moose; print moose.version(); print( moose.__file__ ); moose.test( timeout = 10 )"
)
#!/bin/bash -
#===============================================================================
#
# FILE: build_on_osx.sh
#
# USAGE: ./build_on_osx.sh
#
# DESCRIPTION:
#
# OPTIONS: ---
# REQUIREMENTS: ---
# BUGS: ---
# NOTES: ---
# AUTHOR: Dilawar Singh (), dilawars@ncbs.res.in
# ORGANIZATION: NCBS Bangalore
# CREATED: Tuesday 27 June 2017 01:55:11 IST
# REVISION: ---
#===============================================================================
set -o nounset # Treat unset variables as an error
set -e
(
brew audit --strict --online moose.rb
brew install -V --build-from-source moose.rb
)
class Moose < Formula
include Language::Python::Virtualenv
desc "Multiscale Object Oriented Simulation Environment"
homepage "http://moose.ncbs.res.in"
url "https://github.com/BhallaLab/moose-core/archive/3.1.2.tar.gz"
sha256 "a542983e4903b2b51c79f25f4acc372555cbe31bc0b9827302a6430fad466ef7"
head "https://github.com/BhallaLab/moose-core.git"
bottle do
cellar :any
sha256 "6077f886560480c956270f855cf9576a3e8261c5f2ea064117c3483f74a84462" => :sierra
sha256 "a637de34ce0b92f16afc120ecb2e0e4aff8f8a2e6a2ada5521ee01cf7ccdca9e" => :el_capitan
sha256 "1bb0712ef178577a3c44190be8f21f894cddc66ce03f742d768e44371425dce7" => :yosemite
sha256 "a62366e1e1de37c13dec6d2b7f91dc63f8b40ab460e35b31a4d94507a0df6219" => :x86_64_linux
end
depends_on "cmake" => :build
depends_on "gsl"
depends_on "hdf5"
depends_on :python if MacOS.version <= :snow_leopard
depends_on "numpy"
def install
(buildpath/"VERSION").write("#{version}\n")
# FindHDF5.cmake needs a little help
ENV.prepend "LDFLAGS", "-lhdf5 -lhdf5_hl"
args = std_cmake_args
args << "-DCMAKE_SKIP_RPATH=ON"
mkdir "_build" do
system "cmake", "..", "-DPYTHON_EXECUTABLE:FILEPATH=#{which("python")}", *args
system "make"
system "ctest", "--output-on-failure"
end
Dir.chdir("_build/python") do
system "python", *Language::Python.setup_install_args(prefix)
end
end
def caveats; <<-EOS.undent
You need to install `networkx` and `python-libsbml` using python-pip. Open terminal
and execute following command:
$ pip install python-libsbml networkx
EOS
end
test do
system "python", "-c", "import moose"
end
end
#!/usr/bin/env bash
sudo apt-get update -qq
sudo apt-get install libxml2-dev libbz2-dev wget
sudo apt-get install libhdf5-serial-dev
sudo apt-get install python-numpy python-setuptools python-networkx python-pip
sudo apt-get install cmake cdbs
sudo apt-get install python-suds python-matplotlib python-nose python-lxml
sudo apt-get install python-qt4-dev python-qt4-gl python-sip-dev libqt4-dev libopenscenegraph-dev
sudo apt-get install libgsl0-dev
sudo apt-get install doxygen python-sphinx
sudo apt-get install git-buildpackage
sudo apt-get install -f
#!/bin/bash -
#===============================================================================
#
# FILE: prepare_osx.sh
#
# USAGE: ./prepare_osx.sh
#
# DESCRIPTION:
#
# OPTIONS: ---
# REQUIREMENTS: ---
# BUGS: ---
# NOTES: ---
# AUTHOR: Dilawar Singh (), dilawars@ncbs.res.in
# ORGANIZATION: NCBS Bangalore
# CREATED: Wednesday 28 June 2017 10:23:28 IST
# REVISION: ---
#===============================================================================
set -o nounset # Treat unset variables as an error
echo "Nothing to do here. The moose.rb formula will install all dependecnies"
#!/bin/bash
set -x
set -e
# NOTICE: This file is parsed by cmake to create a shell script. Not all syntax
# will play well with cmake. CMAKE replaces @FOO@ and ${FOO} with cmake variable
# values.
if [ -z "$MAKE" ]; then
MAKE=make
fi
echo "Building MOOSE"
(
export GSL_ROOT_DIR=@GSL_ROOT_DIR@
export HDF5_ROOT=@HDF5_ROOT@
cd @PYMOOSE_BUILD_DIR@
cmake -DCMAKE_INSTALL_PREFIX=@PYMOOSE_INSTALL_DIR@ \
-DCMAKE_BUILD_TYPE=Release \
-DWITH_BOOST=@WITH_BOOST@ \
-DPYTHON_EXECUTABLE=@PYTHON_EXECUTABLE@ \
@CMAKE_PYMOOSE_ARGS@ \
@PYMOOSE_SOURCE_DIR@
$MAKE
ctest -output-on-failure || echo "Some tests failed"
$MAKE install
)
#!/usr/bin/env bash #!/usr/bin/env bash
( (
cd @CMAKE_INSTALL_PREFIX@/lib/moose && python mgui.py & cd @CMAKE_INSTALL_PREFIX@/lib/moose/gui && python mgui.py &
) )
moose (3.1.2ubuntu1) UNRELEASED; urgency=medium
* Nightly build of chamcham (3.1.x) series.
-- Dilawar Singh <dilawars@Gulgula> Mon, 08 May 2017 13:40:08 +0530
moose (3.0.2) unstable; urgency=low moose (3.0.2) unstable; urgency=low
* Initial release * Initial release
...@@ -6,4 +12,4 @@ moose (3.0.2) unstable; urgency=low ...@@ -6,4 +12,4 @@ moose (3.0.2) unstable; urgency=low
* 3.0.2 relase. * 3.0.2 relase.
* Just packed with SBML and GSL-1.6 support. * Just packed with SBML and GSL-1.6 support.
-- Dilawar <dilawars@ncbs.res.in> Sun, 05 July 2015 13:41:58 +0530 -- Dilawar Singh <dilawars@ncbs.res.in> Sun, 05 Jul 2015 13:41:58 +0530
...@@ -8,9 +8,7 @@ Homepage: http://moose.ncbs.res.in ...@@ -8,9 +8,7 @@ Homepage: http://moose.ncbs.res.in
Package: moose Package: moose
Architecture: any Architecture: any
Depends: ${shlibs:Depends}, ${python:Depends}, python-numpy-abi9, libhdf5-7 | libhdf5-serial-1.8.4, python-lxml, python-numpy, python-matplotlib, python-nose, python-networkx, python-suds, python-qt4, libgsl0ldbl Depends: ${shlibs:Depends},python-numpy-abi9, libhdf5-7 | libhdf5-serial-1.8.4, python-lxml, python-numpy, python-matplotlib, python-networkx, python-qt4, libgsl0ldbl
Replaces: moose-python, moose-gui
Conflicts: moose-python, moose-gui
Description: the Multiscale Object-Oriented Simulation Environment Description: the Multiscale Object-Oriented Simulation Environment
It is the base and numerical core for large, detailed simulations including Computational Neuroscience and Systems Biology. It is the base and numerical core for large, detailed simulations including Computational Neuroscience and Systems Biology.
. .
......
...@@ -5,11 +5,11 @@ ...@@ -5,11 +5,11 @@
## Here goes the debian make. ## Here goes the debian make.
%: %:
dh "$@" --with python2 dh "$@"
# Override clean target.
override_dh_auto_clean: override_dh_auto_clean:
rm -rf $(BUILD_DIR_MOOSE) rm -rf $(BUILD_DIR_MOOSE)
dh_auto_clean --buildsystem=cmake
# consider using -DUSE_VERSIONED_DIR=ON if backporting # consider using -DUSE_VERSIONED_DIR=ON if backporting
override_dh_auto_configure: override_dh_auto_configure:
......
# Minimal makefile for Sphinx documentation
#
# You can set these variables from the command line.
SPHINXOPTS =
SPHINXBUILD = python -msphinx
SPHINXPROJ = MOOSE
SOURCEDIR = source
BUILDDIR = build
# Put it first so that "make" without argument is like "make help".
help:
@$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
.PHONY: help Makefile
# Catch-all target: route all unknown targets to Sphinx using the new
# "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS).
%: Makefile
@$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
\ No newline at end of file
This is the MOOSE documentation directory. The documentation is grouped into The source code of documentation is /source directory.
the following directories:
- user: This is for anyone wishing to learn/use MOOSE. This directory contains MOOSE user documentation in reST format that can be
This part of the documentation is encoded in Markdown format. compiled into various formats by sphinx. To build the documentation in HTML,
- developer: If you wish to learn about MOOSE code, go here. format enter the command:
- doxygen: Source code documentation generation.
- markdown: This contains a quick introduction to Markdown itself.
- images: These are images that are included in the user and developer
documentation.
-------------------------------------------------------------------------------- make html
N.B.: This text file has Windows-style line endings (CR/LF) for easy
viewing in Windows. We will try to keep the other text files here in this directory. Then you can open build/html/index.html in browser to
Windows-compatible (e.g.: *.markdown files), but we may slip. browse the generated documentation.
If you have difficulty viewing them in Notepad, try the inbuilt Wordpad
editor, or better still, download a good text editor like Notepad++ or Geany. Other files in /source folder
-------------------------------------------------------------------------------- - conf.py: the Sphinx configuration file.
- index.rst: This is the index file for use when building the Python
docs using sphinx.
...@@ -323,7 +323,7 @@ CPP_CLI_SUPPORT = NO ...@@ -323,7 +323,7 @@ CPP_CLI_SUPPORT = NO
# of private inheritance when no explicit protection keyword is present. # of private inheritance when no explicit protection keyword is present.
# The default value is: NO. # The default value is: NO.
SIP_SUPPORT = YES SIP_SUPPORT = NO
# For Microsoft's IDL there are propget and propput attributes to indicate # For Microsoft's IDL there are propget and propput attributes to indicate
# getter and setter methods for a property. Setting this option to YES will make # getter and setter methods for a property. Setting this option to YES will make
......
#!/bin/bash
echo "###############################################################"
echo "# Generating C++ Documentation #"
echo "###############################################################"
#Files will be created in cpp/html with in `doxygen` folder
(
cd doxygen
doxygen Doxyfile
)
echo "##############################################################"
echo "# Generating Python Documentation #"
echo "##############################################################"
#Files will be created in _build/html
mkdir -p _build
sphinx-build . _build
.. 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.
the Multiscale Object-Oriented Simulation Environment
=====================================================
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.
Contents:
.. toctree::
:maxdepth: 2
introduction/index
user/py/quickstart/index
user/py/rdesigneur/index
user/py/cookbook/index
user/py/builtins/index
user/py/classes/index
Indices and tables
==================
* :ref:`genindex`
* :ref:`modindex`
* :ref:`search`
Introduction
============
.. toctree::
install/index
release_notes/index
changes/index
known_issues/index
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