A Python package for stochastic model building and simulation.
Switch branches/tags
Clone or download
JohnAbel Merge pull request #27 from briandrawert/master
Fixing Python3 compatibility, and updating examples
Latest commit db6865f Mar 13, 2018

README.md

GillesPy

GillesPy is a modeling toolkit for stochastic simulations for Linux and OSX. It provides a python interface to the StochKit stochastic simulation solvers. It contains a simple python interface for model construction, editing, and simulating models stochastically and deterministically.

Installation instructions are below. For use of this package, we recommend looking at the examples provided within. An explanation of this package, a further example, and the citation for this package are provided here (open access): http://ieeexplore.ieee.org/document/7843624/

An autogenerated documentation of the contents of GillesPy is here: http://gillespy.github.io/gillespy/docs/

GillesPy is part of the StochSS project, see http://www.stochss.org for more details.

Dependencies

GillesPy requires several packages for proper functionality, all of which are part of the scientific python stack.

Package Version Installation instructions
numpy >1.6.0 http://scipy.org
scipy >0.13.0 http://scipy.org
matplotlib >1.3.0 http://scipy.org
future >0.16.0 http://python-future.org/quickstart.html

GillesPy does not install the StochKit or StochKitODE solvers, but requires them for stochastic or deterministic simulation, respectively. Either StochKit OR StochSS must be installed to provide these solvers.

Installation instructions for StochKit: http://sourceforge.net/projects/stochkit/

OR

Installation instructions for StochSS: http://iguana.cs.ucsb.edu/wordpress/?page_id=224

Installation

Installation instructions are provided for Linux Ubuntu and OSX.

Ubuntu

If StochSS or StochKit is installed, GillesPy must be pointed to the solver locations. This is done during the installation, through setting a SUDO environment variable depending on whether you have StochSS or StochKit.

For StochSS, set the variable STOCHSS_HOME while in the SUDO environment. On a linux Ubuntu system, with StochSS 1.6 installed in your home directory:

  git clone https://github.com/GillesPy/gillespy.git
  cd gillespy
  sudo STOCHSS_HOME=$HOME/stochss.linux.1.6/ python setup.py install

Note: simply using export STOCHSS_HOME will not provide a SUDO environment variable.

If StochKit is installed, this process is similar, but instead set the environment variable STOCHKIT_HOME:

  git clone https://github.com/GillesPy/gillespy.git
  cd gillespy
  sudo STOCHKIT_HOME=$HOME/StochKit2.0.10/ python setup.py install

As of this time, if only StochKit is installed, the StochKitODE solver is inaccessible, and so deterministic simulation must be performed elsewhere.

  TODO: Provide a way to install StochKitODE.
OSX

If StochSS or StochKit is installed, GillesPy must be pointed to the solver locations. This is done during the installation, through setting a SUDO environment variable depending on whether you have StochSS or StochKit.

For StochSS, set the variable STOCHSS_HOME while in the SUDO environment. On OSX, if you have StochSS 1.6 installed in your Applications directory, then you would:

  git clone https://github.com/GillesPy/gillespy.git
  cd gillespy
  sudo STOCHSS_HOME=/Applications/StochSS-1.6/StochSSserver.app/Contents/Resources/ python setup.py install
OSX (without StochSS)

If you do not have StochSS installed, you will need to download StochKit (http://sourceforge.net/projects/stochkit/) and the StochKit-ODE package from StochSS. Then set the environement variables STOCHKIT_HOME and STOCHKIT_ODE_HOME before you run the setup.py script as above.

Note: simply using export STOCHSS_HOME will not provide a SUDO environment variable.

If StochKit is installed, this process is similar, but instead set the environment variable STOCHKIT_HOME:

  git clone https://github.com/GillesPy/gillespy.git
  cd gillespy
  sudo STOCHKIT_HOME=/Applications/StochKit2.0.10/ python setup.py install

As of this time, if only StochKit is installed, the StochKitODE solver is inaccessible.

  TODO: Provide a way to install StochKitODE.