Skip to main content

PyRossGeo is a python library for spatially resolved numerical simulation of infectious diseases

Project description

Imagel

PyRossGeo: spatially resolved infectious disease models in Python Binder CI PyPI Python Version

About | Model | Installation | Documentation | License | Contact

About

PyRossGeo is a numerical library for spatially resolved mathematical modelling of infectious diseases. The library has a Python interface, but is coded in C using Cython. See below for more details on the model.

PyRoss is a companion library that offers tools for both deterministic and stochastic simulation of macroscopic compartmental models, as well as a complete suite of inference and optimal control tools.

Please open an issue, or join our public slack, if you have any queries, in preference to e-mailing us. For urgent enquiries, please contact Lukas Kikuchi at ltk26@cam.ac.uk.

The authors are part of the Rapid Assistance in Modelling the Pandemic (RAMP) taskforce at the University of Cambridge. In alphabetical order, we are: Jakub Dolezal, Tim Ekeh, Lukas Kikuchi, Hideki Kobayashi, Paul Rohrbach, Rajesh Singh and Fernando Caballero.

Model

The PyRossGeo uses a spatially resolved infectious disease model. The model is distinct from other network-SIR models in that it explicitly considers movement between geographical nodes, by modelling the commuting patterns of the population.

Locally at each geographical node, we simulate compartmental epidemiological dynamics with an age-contact structure. The resident population at each node can move between nodes via the commuter network. The epidemics of the commute itself is modelled using the "commuterverse": People moving between geographical nodes must spend the requisite amount of time (corresponding to the distance travelled) with their fellow commuters in a commuter node. See the figure below for an example of a commuter network:

The local infective dynamics at a node-level is customizable, and any variant of the compartmental epidemiological models (e.g. SIR, SEIR, SEAIR, etc.) can be coded using a configuration file.

The model has been tested with synthetic data on London, at an MSOA (Middle Super Output Area) level. We used ~1000 geographical nodes, with a commuter network of ~300'000 edges, constructed using the 2011 UK Census data. We are currently developing a test for a UK-wide simulation at an LAD (Local Authority District) level.

For a more detailed description of the model, please read this.

Installation

You can take PyRossGeo for a spin without installation: Binder. Please be patient while Binder loads.

From a checkout of this repository

Install PyRossGeo and required dependencies using

>> git clone https://github.com/lukastk/PyRossGeo.git
>> cd PyRossGeo
>> pip install -r requirements.txt
>> python setup.py install

Via Anaconda

Install PyRossGeo and its dependencies in a pyrossgeo environment

>> git clone https://github.com/lukastk/PyRossGeo.git
>> cd PyRossGeo
>> make env
>> conda activate pyrossgeo
>> make

Via pip

Install the latest PyPI version

>> pip install pyrossgeo

PyRossGeo requires the following software

Documentation

See here for documentation, tutorials and example notebooks.

License

We believe that openness and sharing improves the practice of science and increases the reach of its benefits. This code is released under the MIT license. Our choice is guided by the excellent article on Licensing for the scientist-programmer.

Contact

For inquiries about PyRossGeo, please join the #pyrossgeo channel of our public slack here.

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

pyrossgeo-1.0.8.tar.gz (1.0 MB view details)

Uploaded Source

Built Distribution

pyrossgeo-1.0.8-cp37-cp37m-macosx_10_9_x86_64.whl (3.1 MB view details)

Uploaded CPython 3.7m macOS 10.9+ x86-64

File details

Details for the file pyrossgeo-1.0.8.tar.gz.

File metadata

  • Download URL: pyrossgeo-1.0.8.tar.gz
  • Upload date:
  • Size: 1.0 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/47.1.1 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.7.3

File hashes

Hashes for pyrossgeo-1.0.8.tar.gz
Algorithm Hash digest
SHA256 fa0b8927ac6f03a07aeff6235381893443ea556809394e154d2ab58c78ea1e7e
MD5 915160716a9f4ddd874a20f91bfebe8f
BLAKE2b-256 4bbb926d18085e6b6114200abb64ba1501411a065806ee47d3b7050a487f1127

See more details on using hashes here.

File details

Details for the file pyrossgeo-1.0.8-cp37-cp37m-macosx_10_9_x86_64.whl.

File metadata

  • Download URL: pyrossgeo-1.0.8-cp37-cp37m-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 3.1 MB
  • Tags: CPython 3.7m, macOS 10.9+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/47.1.1 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.7.3

File hashes

Hashes for pyrossgeo-1.0.8-cp37-cp37m-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 d40261c55b04c21690331a672373445d45c0521acf53d31c29b94e36ea303261
MD5 7ade037573001291e0154b955314fdce
BLAKE2b-256 72ac1a3b791875d3bce71f0eb466145129dcec841f920da9610d5818c29ef45f

See more details on using hashes here.

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