Skip to main content

Neural Network Modeling Framework

Project description

[![](https://img.shields.io/github/license/pyrates-neuroscience/PyRates.svg)](https://github.com/pyrates-neuroscience/PyRates) [![Build Status](https://travis-ci.com/pyrates-neuroscience/PyRates.svg?branch=master)](https://travis-ci.com/pyrates-neuroscience/PyRates) <img src=”https://github.com/pyrates-neuroscience/PyRates/blob/master/PyRates_logo_color.svg” width=”20%” heigth=”20%” align=”right”> [![PyPI version](https://badge.fury.io/py/pyrates.svg)](https://badge.fury.io/py/pyrates)

# PyRates PyRates is a framework for neural modeling and simulations, developed by Richard Gast and Daniel Rose at the Max Planck Institute of Human Cognitive and Brain Sciences, Leipzig, Germany.

Basic features:

  • Different backends: Numpy for fast simulations of small- to medium-sized networks. Tensorflow for efficient parallelization on GPUs/CPUs, Fortran for parameter continuations.

  • Each model is internally represented by a networkx graph of nodes and edges, with the former representing the model units (i.e. single cells, cell populations, …) and the latter the information transfer between them. In principle, this allows to implement any kind of dynamic neural system that can be expressed as a graph via PyRates.

  • Solutions of initial value problems via different numerical solvers (e.g. full interface to scipy.integrate.solve_ivp)

  • Parameter continuations and bifurcation analysis via PyAuto, an interface to auto-07p

  • Storage of solutions in pandas.DataFrame

  • Efficient parameter sweeps on single and multiple machines via the grid_search module

  • Model optimization via genetic algorithms

  • Visualization of results via seaborn

  • Post-processing of simulation results via scipy and MNE Python

  • The user has full control over the mathematical equations that nodes and edges are defined by.

  • Model configuration and simulation can be done within a few lines of code.

  • Various templates for rate-based population models are provided that can be used for neural network simulations imediatly.

Installation

PyRates can be installed via the pip command. We recommend to use Anaconda to create a new python environment with Python >= 3.6 and then simply run the following line from a terminal with the environment being activated: ` pip install pyrates ` Alternatively, it is possible to clone this repository and run the following line from the directory in which the repository was cloned: ` python setup.py install ` Finally, a singularity container of the most recent version of this software can be found [here](https://singularity.gwdg.de/containers/3). This container provides a stand-alone version of PyRates including all necessary Python tools to be run, independent of local operating systems. To be able to use this container, you need to install [Singularity](https://singularity.lbl.gov/) on your local machine first. Follow these [instructions](https://singularity.lbl.gov/quickstart) to install singularity and run scripts inside the PyRates container.

Documentation

For a full API of PyRates, see https://pyrates.readthedocs.io/en/latest/. For examplary simulations and model configurations, please have a look at the jupyter notebooks provided in the documenation folder.

Reference

If you use this framework, please cite: Gast, R., Rose, D., Salomon, C., Möller, H. E., Weiskopf, N., & Knösche, T. R. (2019). PyRates-A Python framework for rate-based neural simulations. PloS one, 14(12), e0225900. https://doi.org/10.1371/journal.pone.0225900.

Contact

If you have questions, problems or suggestions regarding PyRates, please contact [Richard Gast](https://www.cbs.mpg.de/person/59190/376039) or [Daniel Rose](https://www.cbs.mpg.de/person/51141/374227).

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pyrates-0.9.0.tar.gz (289.8 kB view details)

Uploaded Source

Built Distribution

pyrates-0.9.0-py3-none-any.whl (370.9 kB view details)

Uploaded Python 3

File details

Details for the file pyrates-0.9.0.tar.gz.

File metadata

  • Download URL: pyrates-0.9.0.tar.gz
  • Upload date:
  • Size: 289.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.32.2 CPython/3.6.8

File hashes

Hashes for pyrates-0.9.0.tar.gz
Algorithm Hash digest
SHA256 79528899656711d6fa2d8af32b9aae93738ee96fe99c0b421406edc91a1783e3
MD5 ee9ba89b77fef28d24e11ab52f41b56d
BLAKE2b-256 03f632ff7b73cdd48c6e09064d8fb81197781c6fe0808593a46d250c7a9209d7

See more details on using hashes here.

Provenance

File details

Details for the file pyrates-0.9.0-py3-none-any.whl.

File metadata

  • Download URL: pyrates-0.9.0-py3-none-any.whl
  • Upload date:
  • Size: 370.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.32.2 CPython/3.6.8

File hashes

Hashes for pyrates-0.9.0-py3-none-any.whl
Algorithm Hash digest
SHA256 a31726930a7c82d14139ebc33200f5853f409431a9c074a8ecaa630e9b05de7d
MD5 4780a7d76560fe5e34c38014d5e98ed6
BLAKE2b-256 0054a6d27fce59ef49ef91ca50fc38c0d4203de0ef91c77494af29abc5658c77

See more details on using hashes here.

Provenance

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page