Metadata-Version: 2.1
Name: atomica
Version: 1.0.21
Summary: Toolbox for compartment-based dynamic systems with costing and optimization
Home-page: http://github.com/atomicateam/atomica
Author: Atomica Team
Author-email: info@atomica.tools
License: UNKNOWN
Description: # Atomica
        
        [![Build Status](https://travis-ci.com/atomicateam/atomica.svg?branch=develop)](https://travis-ci.com/atomicateam/atomica)
        [![Documentation Status](https://readthedocs.org/projects/atomica/badge/?version=latest)](https://atomica.readthedocs.io/en/latest/?badge=latest)
        
        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.
Keywords: dynamic,compartment,optimization,disease
Platform: OS Independent
Classifier: Environment :: Console
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: GNU General Public License v3 (GPLv3)
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Development Status :: 3 - Alpha
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Description-Content-Type: text/markdown
