Core tools for modeling using EMOD
Project description
emodpy
Documentation
Documentation available at https://docs.idmod.org/projects/emodpy/en/latest/.
To build the documentation locally, do the following:
-
Create and activate a venv.
-
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
- Clone the repository:
> git clone https://github.com/InstituteforDiseaseModeling/emodpy.git
- Create a virtualenv. On Windows, please use venv to create the environment
python -m venv idmtoolsOn Unix(Mac/Linux) you can use venv or virtualenv - Activate the virtualenv
- If you are on windows, run
pip install py-make --upgrade --force-reinstall - 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
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f5dc46a49f0dcea088ee9effbf4bf70b78b651d715702362384ae421578e2185
|
|
| MD5 |
511e80c549f42c527d9b0c06e749108a
|
|
| BLAKE2b-256 |
3711e5b869fd552f5ae58a46f806bacc94e4956a40f70243023c744030e7592b
|
Provenance
The following attestation bundles were made for emodpy-1.35.0.tar.gz:
Publisher:
publish_pypi.yml on EMOD-Hub/emodpy
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
emodpy-1.35.0.tar.gz -
Subject digest:
f5dc46a49f0dcea088ee9effbf4bf70b78b651d715702362384ae421578e2185 - Sigstore transparency entry: 953240395
- Sigstore integration time:
-
Permalink:
EMOD-Hub/emodpy@f0d248169898e97cf46639860b4fc3f75d96eb1c -
Branch / Tag:
refs/heads/for-emodpy-malaria - Owner: https://github.com/EMOD-Hub
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish_pypi.yml@f0d248169898e97cf46639860b4fc3f75d96eb1c -
Trigger Event:
workflow_dispatch
-
Statement type:
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bf863e40e9b2768107507755e180ff9cecda50a8a348206f669d2fed1dcd50d5
|
|
| MD5 |
09f16e59c591e6181261c9075124250b
|
|
| BLAKE2b-256 |
92692e6a672b17a79db2c65c473ff9184eb498e61b8779399f9d9661972ec38b
|
Provenance
The following attestation bundles were made for emodpy-1.35.0-py3-none-any.whl:
Publisher:
publish_pypi.yml on EMOD-Hub/emodpy
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
emodpy-1.35.0-py3-none-any.whl -
Subject digest:
bf863e40e9b2768107507755e180ff9cecda50a8a348206f669d2fed1dcd50d5 - Sigstore transparency entry: 953240396
- Sigstore integration time:
-
Permalink:
EMOD-Hub/emodpy@f0d248169898e97cf46639860b4fc3f75d96eb1c -
Branch / Tag:
refs/heads/for-emodpy-malaria - Owner: https://github.com/EMOD-Hub
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish_pypi.yml@f0d248169898e97cf46639860b4fc3f75d96eb1c -
Trigger Event:
workflow_dispatch
-
Statement type: