Current version: 0.9.4
Download: PyPI
Install: pip install pyrho[full]

Github RepositoryDownload Virtual Machine [VirtualBox] [ova, 2.5GB]


PyRhO is an integrated suite of open-source tools for parameterising and simulating rhodopsins. 

  1. The first tool will automatically fit a choice of models to experimental data, extracting the parameters that describe the functional dynamics of the rhodopsins. 
  2. The second tool can then take these extracted parameters (or alternatively use default values) and simulate a wide range of experimental protocols to reproduce the photo-response of the rhodopsin of interest. These protocols are typically voltage-clamp experiments and include common engineering inputs such as steps, ramps and chirps, along with more tailored protocols such as a pair of increasingly spaced pulses for evaluating the recovery process. 
  3. These models and protocols can be run on several simulation platforms spanning multiple scales (to model isolated rhodopsins or transfected neurons) including: 
    1. Pure Python for simple channel-level voltage clamp experiments;
    2. NEURON for morphologically detailed models of optogenetically transfected neurons; 
    3. Brian2 for simulating whole networks with transfected groups of neurons.
  4. A Graphical User Interface (GUI) for easy navigation through all tools, running of virtual experiments and sharing of results.


PyRhO currently supports *NIX operating systems (Linux and Mac OS X) and requires Python 3. If you don't have a Python 3 installation already, we recommend Anaconda or Enthought Canopy (free multi-platform Python distributions). Once you have Python 3 set up, the basic PyRhO module may be installed (along with all necessary dependencies) with the command:

pip install pyrho

If you would like to install PyRhO along with the Jupyter notebook GUI then run the following command:

pip install pyrho[full]

If you prefer to try the latest development version, use the following command to install PyRhO straight from the Github repository:

pip install git+https://github.com/ProjectPyRhO/PyRhO.git#egg=PyRhO[full]

If you use Windows (or don't want to install PyRhO with pip), we recommend installing VirtualBox to use the preconfigured virtual machine


PyRhO uses the following Python modules:

In order to use the GUI, IPython and the Jupyter notebook are also required. 

Additional Modules

To get the most out of PyRhO, it is also recommended to install the NEURON and Brian2 simulators for detailed morphological and network level simulations. Note that the NEURON binaries are currently compiled to work with Python 2 and are not currently compatible with PyRhO. An installation script is provided to download and compile NEURON from source as a Python 3 module to work with PyRhO. Brian2 may be installed with PyRhO by using the command:

pip install pyrho[full]

Getting Started

A Jupyter notebook with some examples to try is available here