Metadata-Version: 2.4
Name: enspara
Version: 0.3.1
Summary: Tools for ensemble modeling
Author: J. R. Porter, M. I. Zimmerman
Author-email: "G. R. Bowman" <grbowman@seas.upenn.edu>
License-Expression: GPL-3.0-or-later
Project-URL: Homepage, https://enspara.readthedocs.io/
Project-URL: Documentation, https://enspara.readthedocs.io/
Project-URL: Repository, https://github.com/bowman-lab/enspara
Project-URL: Bug Tracker, https://github.com/bowman-lab/enspara/issues
Project-URL: Changelog, https://github.com/bowman-lab/enspara/releases
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Science/Research
Classifier: Intended Audience :: Developers
Classifier: Programming Language :: Cython
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Topic :: Scientific/Engineering :: Bio-Informatics
Classifier: Topic :: Scientific/Engineering :: Chemistry
Classifier: Operating System :: POSIX
Classifier: Operating System :: Unix
Classifier: Operating System :: MacOS
Requires-Python: >=3.11
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: Cython>=0.24
Requires-Dist: numpy>=2.3.0
Requires-Dist: tables>=3.2
Requires-Dist: matplotlib>=1.5.1
Requires-Dist: mdtraj>=1.7
Requires-Dist: psutil>=5.2.2
Requires-Dist: pandas
Requires-Dist: scikit-learn>=0.23.2
Requires-Dist: scipy>=0.17
Requires-Dist: pyyaml
Provides-Extra: dev
Requires-Dist: pytest; extra == "dev"
Provides-Extra: docs
Requires-Dist: Sphinx>=2.3.0; extra == "docs"
Requires-Dist: sphinx-rtd-theme>=0.4.3; extra == "docs"
Requires-Dist: sphinxcontrib-websupport>=1.1.2; extra == "docs"
Requires-Dist: numpydoc>=0.9.1; extra == "docs"
Provides-Extra: mpi
Requires-Dist: mpi4py>=2.0.0; extra == "mpi"
Dynamic: license-file

[![DOI:10.1007/978-3-319-76207-4_15](https://zenodo.org/badge/DOI/10.1063/1.5063794.svg)]( https://doi.org/10.1063/1.5063794)

[![Build Status](https://github.com/bowman-lab/enspara/actions/workflows/ci.yml/badge.svg)](https://github.com/bowman-lab/enspara/actions/)


# enspara
MSMs at Scale 

## Reference

If you use `enspara` for published research, please cite us:

Porter, J.R., Zimmerman, M.I. and Bowman, G.R., 2019. [Enspara: Modeling molecular ensembles with scalable data structures and parallel computing.](https://aip.scitation.org/doi/full/10.1063/1.5063794%40jcp.2019.MMMK.issue-1) The Journal of chemical physics, 150(4), p.044108.

## Installation 

Installation is documented [here](https://enspara.readthedocs.io/en/latest/installation.html).
```
conda create -n enspara
conda install -c bowmanlab -c conda-forge enspara
```

Alternatively if you wish to build the latest:

```
git clone https://github.com/bowman-lab/enspara
mamba create -n enspara -c conda-forge cython numpy mdtraj scipy python=3.12 mpi4py
mamba activate enspara
cd enspara
pip install -e .
```

Optionally, install pytests to run the tests:
`mamba install -c conda-forge pytest`

## Building the docs

Enspara uses sphinx for documentation. They're a bit of a work in progress,
but most of the most important stuff is documented already.

```bash
cd docs
make html
```

## Running the tests

Enspara uses `pytest` as a test discovery and running tool. To run the
tests, you should first make sure you have the development dependencies
installed then, from the enspara directory, run:

```bash
pytest
```

By default this runs without MPI. 

If you wish to explicitly skip the MPI tests, you can run:

```bash
pytest -m 'not mpi'
```

If you then want to run the mpi tests (including the MPI ones), you can additionally run:

```bash
mpirun -n 2 python -m pytest -m 'mpi'
```
