Skip to main content

Core tools for modeling using EMOD

Project description

Staging: emodpy

emodpy

Documentation

Documentation available at https://docs.idmod.org/projects/emodpy/en/latest/.

To build the documentation locally, do the following:

  1. Create and activate a venv.

  2. Navigate to the root directory of the repo and enter the following

    pip install -r requirements.txt
    cd docs
    pip install -r requirements.txt
    cd ..
    pip install -e .
    

Table of Contents

User Installation

pip install emodpy --index-url=https://packages.idmod.org/api/pypi/pypi-production/simple

Pre-requisites

  • Python 3.6/3.7 x64

Development Environment Setup

When setting up your environment for the first time, you can use the following instructions

First Time Setup

  1. Clone the repository:
    > git clone https://github.com/InstituteforDiseaseModeling/emodpy.git
    
  2. Create a virtualenv. On Windows, please use venv to create the environment python -m venv idmtools On Unix(Mac/Linux) you can use venv or virtualenv
  3. Activate the virtualenv
  4. If you are on windows, run pip install py-make --upgrade --force-reinstall
  5. Then run python ./.dev_scripts/bootstrap.py. This will install all the tools.

Development Tips

There is a Makefile file available for most common development tasks. Here is a list of commands

clean       -   Clean up temproary files
lint        -   Lint package and tests
test        -   Run All tests
coverage    -   Run tests and generate coverage report that is shown in browser

On Windows, you can use pymake instead of make

To run examples or tests

First, install idmtools packages including emodpy package from idm artifactory

staging artifactory with nightly build packages:

pip install idmtools[idm] --index-url=https://email:password@packages.idmod.org/api/pypi/pypi-staging/simple
OR
pip install idmtools[full] --index-url=https://email:password@packages.idmod.org/api/pypi/pypi-staging/simple

[idm] option will install all idmtools packages except idmtools_platform_local package

[full] option will install all idmtools packages including idmtools_platform_local package

email:password is your company login credentials. password should be encoded for specially characters

production artifactory with latest release packages:

pip install idmtools[idm] --index-url=https://packages.idmod.org/api/pypi/pypi-production/simple
OR
pip install idmtools[full] --index-url=https://packages.idmod.org/api/pypi/pypi-production/simple

To run integration tests or examples, you also need to install idmtools-test package

pip install idmtools-test --index-url=https://email:password@packages.idmod.org/api/pypi/pypi-staging/simple
OR
pip install idmtools-test --index-url=https://packages.idmod.org/api/pypi/pypi-production/simple

Building docs

Install all necessary documentation tools using pip install -r doc/requirements.txt and install emodpy in the same environment. Navigate to the docs folder and enter make html. If you make updates to the docstrings, you must reinstall emodpy to pick up the latest changes in the documentation build. It's also good practice to run make clean before rebuilding the documentation to avoid missing errors or warnings. These steps are only for testing the build locally before committing changes. The documentation build on Read the Docs will run automatically when new code is committed.

Community

The EMOD Community is made up of researchers and software developers, primarily focused on malaria and HIV research. We value mutual respect, openness, and a collaborative spirit. If these values resonate with you, we invite you to join our EMOD Slack Community by completing this form:

https://forms.office.com/r/sjncGvBjvZ

Disclaimer

The code in this repository was developed by IDM and other collaborators to support our joint research on flexible agent-based modeling. We've made it publicly available under the MIT License to provide others with a better understanding of our research and an opportunity to build upon it for their own work. We make no representations that the code works as intended or that we will provide support, address issues that are found, or accept pull requests. You are welcome to create your own fork and modify the code to suit your own modeling needs as permitted under the MIT License.

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

emodpy-1.35.0.tar.gz (64.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

emodpy-1.35.0-py3-none-any.whl (36.5 kB view details)

Uploaded Python 3

File details

Details for the file emodpy-1.35.0.tar.gz.

File metadata

  • Download URL: emodpy-1.35.0.tar.gz
  • Upload date:
  • Size: 64.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for emodpy-1.35.0.tar.gz
Algorithm Hash digest
SHA256 f5dc46a49f0dcea088ee9effbf4bf70b78b651d715702362384ae421578e2185
MD5 511e80c549f42c527d9b0c06e749108a
BLAKE2b-256 3711e5b869fd552f5ae58a46f806bacc94e4956a40f70243023c744030e7592b

See more details on using hashes here.

Provenance

The following attestation bundles were made for emodpy-1.35.0.tar.gz:

Publisher: publish_pypi.yml on EMOD-Hub/emodpy

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file emodpy-1.35.0-py3-none-any.whl.

File metadata

  • Download URL: emodpy-1.35.0-py3-none-any.whl
  • Upload date:
  • Size: 36.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for emodpy-1.35.0-py3-none-any.whl
Algorithm Hash digest
SHA256 bf863e40e9b2768107507755e180ff9cecda50a8a348206f669d2fed1dcd50d5
MD5 09f16e59c591e6181261c9075124250b
BLAKE2b-256 92692e6a672b17a79db2c65c473ff9184eb498e61b8779399f9d9661972ec38b

See more details on using hashes here.

Provenance

The following attestation bundles were made for emodpy-1.35.0-py3-none-any.whl:

Publisher: publish_pypi.yml on EMOD-Hub/emodpy

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

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