Science Score: 75.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
✓DOI references
Found 6 DOI reference(s) in README -
✓Academic publication links
Links to: frontiersin.org -
○Committers with academic emails
-
✓Institutional organization owner
Organization projectpyrho has institutional domain (www.imperial.ac.uk) -
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (15.5%) to scientific vocabulary
Keywords
Repository
A virtual optogenetics laboratory
Basic Info
- Host: GitHub
- Owner: ProjectPyRhO
- License: bsd-3-clause
- Language: Python
- Default Branch: master
- Size: 3.8 MB
Statistics
- Stars: 37
- Watchers: 2
- Forks: 9
- Open Issues: 1
- Releases: 0
Topics
Metadata Files
README.md

A Virtual Optogenetics Laboratory
PyRhO is a Python module to fit, characterise and simulate (rhod)opsin photocurrents.
Background
Optogenetics has become a key tool for understanding the function of neural circuits and controlling their behaviour. An array of directly light driven opsins have been genetically isolated from several families of organisms, with a wide range of temporal and spectral properties. In order to characterize, understand and apply these rhodopsins, we present an integrated suite of open-source, multi-scale computational tools called PyRhO.
PyRhO enables users to:
- Characterize new (and existing) rhodopsins by automatically fitting a minimal set of experimental data to three, four or six-state kinetic models,
- Simulate these models at the channel, neuron & network levels and
- Gain functional insights through model selection and virtual experiments in silico.
The module is written in Python with an additional IPython/Jupyter notebook based GUI, allowing models to be fit, simulations to be run and results to be shared through simply interacting with a webpage. The seamless integration of model fitting algorithms with simulation environments for these virtual opsins (including NEURON and Brian2) will enable (neuro)scientists to gain a comprehensive understanding of their behaviour and rapidly identify the most suitable variant for application in a particular biological system. This process may thereby guide not only experimental design and opsin choice but also alterations of the rhodopsin genetic code in a neuro-engineering feed-back loop. In this way, we hope PyRhO will help to significantly improve optogenetics as a tool for transforming biological sciences.
Architecture

PyRhO is composed of several abstraction layers, including the Model layer, Protocol layer and Simulator layer (shown in the architectural schematic below). Choices in each layer are independent or one another, giving a large number of possible combinations to suit many needs for in silico experiments. Additionally, parameters may be fit to each type of kinetic model from experimental data or loaded from the default options of popular opsins.
Prometheus
If you would like to try PyRhO before installing it, go to try.projectpyrho.org to launch a fully configured Jupyter notebook in your browser.
Docker
If you wish to use PyRhO in a Docker container, a Dockerfile is provided in the accompanying Prometheus repository: https://github.com/ProjectPyRhO/Prometheus
The Dockerfile will build a full installation including the NEURON and Brian2 simulators and the Jupyter notebook GUI. See the repository\'s README file for instructions.
Installation
To install PyRhO (including the GUI) from PyPI use the command: :
pip install pyrho[full]
Alternatively, to install the latest code from GitHub (including the GUI) use the command: :
pip install git+https://github.com/ProjectPyRhO/PyRhO.git#egg=PyRhO[full]
To use PyRhO with the NEURON simulator in a Python 3 environment, NEURON must be compiled from its source code. An installation script is provided for doing this on Mac OS X or Linux. The resultant installation will also work with Python 2. If you only wish to use PyRhO/NEURON with Python 2 however, a standard NEURON installation should be sufficient. The shell script may be called after importing PyRhO with the following function: :
from pyrho import *
setupNEURON('/installation/path/for/NEURON/')
This will attempt to compile NEURON from source, copy the supplied mod
and hoc files into place (the current working directory by default)
finally compiling the mod files describing the opsin models ready for
inclusion in simulations.
The Brian simulator is included with the PyRhO installation for modelling networks of optogenetically transfected spiking neurons.
Further Information
If you use PyRhO please cite our paper:
Evans, B. D., Jarvis, S., Schultz, S. R. & Nikolic K. (2016) \"PyRhO: A Multiscale Optogenetics Simulation Platform\", Frontiers in Neuroinformatics, 10 (8). doi:10.3389/fninf.2016.00008
@ARTICLE{pyrho,
AUTHOR={Evans, Benjamin D. and Jarvis, Sarah and Schultz, Simon R. and Nikolic, Konstantin},
TITLE={PyRhO: A Multiscale Optogenetics Simulation Platform},
JOURNAL={Frontiers in Neuroinformatics},
VOLUME={10},
YEAR={2016},
NUMBER={8},
URL={http://journal.frontiersin.org/article/10.3389/fninf.2016.00008/full},
DOI={10.3389/fninf.2016.00008}
}
The PyRhO project website with additional documentation may be found here: www.imperial.ac.uk/bio-modelling/pyrho
Finally, don\'t forget to follow us on twitter for updates: \@ProjectPyRhO!
Owner
- Name: Project PyRhO
- Login: ProjectPyRhO
- Kind: organization
- Email: projectpyrho@gmail.com
- Location: Imperial College London
- Website: https://www.imperial.ac.uk/bio-modelling/pyrho
- Twitter: ProjectPyRhO
- Repositories: 2
- Profile: https://github.com/ProjectPyRhO
Computational tools for Optogenetics
Citation (citation.cff)
cff-version: 1.2.0
message: "If you use this software, please cite the accompanying article."
preferred-citation:
type: article
authors:
- family-names: "Evans"
given-names: "Benjamin D."
orcid: "https://orcid.org/0000-0002-1734-6070"
- family-names: "Jarvis"
given-names: "Sarah"
orcid: "https://orcid.org/0000-0003-1818-6088"
- family-names: "Schultz"
given-names: "Simon R."
orcid: "https://orcid.org/0000-0002-6794-5813"
- family-names: "Nikolic"
given-names: "Konstantin"
orcid: "https://orcid.org/0000-0002-6551-2977"
doi: "10.3389/fninf.2016.00008"
journal: "Frontiers in Neuroinformatics"
month: 3
start: 1 # First page number
end: 19 # Last page number
title: "PyRhO: A Multiscale Optogenetics Simulation Platform"
issue: 8
volume: 10
year: 2016
GitHub Events
Total
- Watch event: 3
- Fork event: 2
Last Year
- Watch event: 3
- Fork event: 2
Committers
Last synced: over 2 years ago
Top Committers
| Name | Commits | |
|---|---|---|
| Ben Evans | b****s@g****m | 648 |
| Andrew Davison | a****n@u****r | 1 |
| Ryan Yang | p****6@g****m | 1 |
Committer Domains (Top 20 + Academic)
Issues and Pull Requests
Last synced: 6 months ago
All Time
- Total issues: 3
- Total pull requests: 5
- Average time to close issues: over 2 years
- Average time to close pull requests: 9 days
- Total issue authors: 3
- Total pull request authors: 4
- Average comments per issue: 2.33
- Average comments per pull request: 0.0
- Merged pull requests: 3
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 0
- Pull requests: 0
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Issue authors: 0
- Pull request authors: 0
- Average comments per issue: 0
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- Turkeywobbling (1)
- bdevans (1)
- mariakesa (1)
Pull Request Authors
- bdevans (2)
- AdrianBeersingVasquez (1)
- Turkeywobbling (1)
- apdavison (1)
Top Labels
Issue Labels
Pull Request Labels
Packages
- Total packages: 1
-
Total downloads:
- pypi 6 last-month
- Total dependent packages: 0
- Total dependent repositories: 1
- Total versions: 1
- Total maintainers: 1
pypi.org: pyrho
Fit and characterise rhodopsin photocurrents
- Homepage: https://github.com/ProjectPyRhO/PyRhO/
- Documentation: https://pyrho.readthedocs.io/
- License: BSD
-
Latest release: 0.9.4
published almost 10 years ago
Rankings
Maintainers (1)
Dependencies
- bokeh
- brian2
- brian2tools
- cython
- h5py
- matplotlib
- nose
- numexpr
- numpy
- pandas
- pip
- python
- scipy
- seaborn
- sympy
- brian2 * development
- brian2tools * development
- cython * development
- ipympl * development
- jupyterlab * development
- matplotlib-base * development
- neuron * development
- nose * development
- numpy * development
- pandas * development
- pytest * development
- scipy * development
- seaborn * development
- sympy * development
- brian2 >=2.0
- cython >=0.23
- ipython >=4.1
- ipywidgets >=4.1,<5
- jupyter >=1.0
- lmfit >=0.9.3
- matplotlib >=1.3
- notebook >=4.1
- numpy >=1.8
- pandas >=0.17
- scipy >=0.15
- seaborn >=0.7
- brian2 >=2.0
- lmfit >=0.9.3,<1.0.3
- matplotlib >=1.3
- numpy >=1.8
- scipy >=0.15
- actions/checkout v3 composite
- actions/setup-python v3 composite
- mcr.microsoft.com/vscode/devcontainers/python 0-${VARIANT} build