Skip to main content

Toolbox for compartment-based dynamic systems with costing and optimization

Project description

Atomica

Build Status Documentation Status

Atomica is a simulation engine for compartmental models. It can be used to simulate disease epidemics, health care cascades, and many other things.

Atomica is still under development; please check back regularly for updates.

Installation

Atomica is available for Python 3 only. Because we develop using Python 3.7, it is possible that dictionary order is relevant (although we endeavour to use ordered dictionaries via Sciris in places where order matters). Therefore, we only officially support Python 3.7, as this is the first Python release that guarantees ordering of all dictionaries.

Git installation

Use the Git installation method if you plan to make changes to the Atomica source code. First, you will need a Python environment containing the numpy, scipy and matplotlib. In theory these can be installed automatically as dependencies for atomica, but in practice, these packages can require system-level setup so it is usually easiest to install them separately beforehand.

We recommend installing via Anaconda, which facilitates getting the binaries and dependencies like QT installed in a platform-agnostic manner. We also recommend working within an Anaconda environment.

You may also wish to install mkl first, before installing numpy etc. to improve performance. So for example:

conda install mkl
conda install numpy scipy matplotlib

Then, you can install Atomica into the environment using:

git clone https://github.com/atomicateam/atomica.git
cd atomica
python setup.py develop
cd atomica/tests
python testworkflow.py

Troubleshooting

Installation fails due to missing numpy

If running python setup.py develop in a new environment, numpy must be installed prior to scipy. In some cases, installing numpy may fail due to missing compiler options. In that case, you may wish to install numpy via Anaconda (by installing Python through Anaconda, and using conda install numpy scipy matplotlib). In general, our experience has been that it is easier to set up the C binaries for numpy and the QT dependencies for matplotlib via Anaconda rather than doing this via the system, which involves different steps on every platform.

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

atomica-1.0.22.tar.gz (1.1 MB view details)

Uploaded Source

Built Distribution

atomica-1.0.22-py3-none-any.whl (1.2 MB view details)

Uploaded Python 3

File details

Details for the file atomica-1.0.22.tar.gz.

File metadata

  • Download URL: atomica-1.0.22.tar.gz
  • Upload date:
  • Size: 1.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.30.0 CPython/3.7.1

File hashes

Hashes for atomica-1.0.22.tar.gz
Algorithm Hash digest
SHA256 10dc8c120ba9b3c96116921c6d43e7d1ae297a2da3862f3051d865c726fa7326
MD5 3d129baf90717e36d4e43a45c6b2e545
BLAKE2b-256 733988ecda8548d457fbd09511d45fd73744ca934481a5217d9174ed3e461680

See more details on using hashes here.

File details

Details for the file atomica-1.0.22-py3-none-any.whl.

File metadata

  • Download URL: atomica-1.0.22-py3-none-any.whl
  • Upload date:
  • Size: 1.2 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.30.0 CPython/3.7.1

File hashes

Hashes for atomica-1.0.22-py3-none-any.whl
Algorithm Hash digest
SHA256 6991f652c1bdd4378044a6385d02b0a120c00ffde38d17c110e7ea87090f02d4
MD5 14468c5d1a5b22bbe69337e7446da219
BLAKE2b-256 b4c25845972c89e4637c61e9865a9bb4b382822f664cc4c034b92526c9ee843e

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