westpa

WESTPA: The Weighted Ensemble Simulation Toolkit with Parallelization and Analysis

https://github.com/westpa/westpa

Science Score: 54.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
    17 of 44 committers (38.6%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (12.5%) to scientific vocabulary

Keywords

computational-chemistry molecular-simulation

Keywords from Contributors

molecular-dynamics-simulation mesh energy-system-model observability genomics optim dynamics interactive standardization symbolic-computation
Last synced: 6 months ago · JSON representation ·

Repository

WESTPA: The Weighted Ensemble Simulation Toolkit with Parallelization and Analysis

Basic Info
Statistics
  • Stars: 203
  • Watchers: 21
  • Forks: 58
  • Open Issues: 31
  • Releases: 25
Topics
computational-chemistry molecular-simulation
Created over 11 years ago · Last pushed 6 months ago
Metadata Files
Readme Contributing License Code of conduct Citation Authors

README.rst

===============
WESTPA 2.0 
===============

|ghactions| |anaconda| |tutorial| 

|docs| |usersgroup| |develgroup| 

.. |ghactions| image:: https://github.com/westpa/westpa/actions/workflows/test.yaml/badge.svg?branch=westpa2
              :target: https://github.com/westpa/westpa/actions/workflows/test.yaml
              :alt: GitHub Actions

.. |docs| image:: https://readthedocs.org/projects/westpa/badge/?version=latest
         :target: https://westpa.readthedocs.io/en/latest/?badge=latest
         :alt: Documentation Status

.. |tutorial| image:: https://img.shields.io/badge/WESTPA-tutorials-blueviolet.svg
        :target: https://github.com/westpa/tutorials
        :alt: WESTPA Tutorials GitHub

.. |usersgroup| image:: https://img.shields.io/badge/Google%20Group-Users-lightgrey.svg
        :target: http://groups.google.com/group/westpa-users 
        :alt: Users Google Group

.. |develgroup| image:: https://img.shields.io/badge/Google%20Group-Developers-lightgrey.svg
        :target: https://groups.google.com/g/westpa-devel 
        :alt: Developers Google Group

.. |anaconda| image:: https://anaconda.org/conda-forge/westpa/badges/version.svg
   :alt: Anaconda
   :target: https://anaconda.org/conda-forge/westpa


--------
Overview
--------

WESTPA is a package for constructing and running stochastic simulations using the "weighted ensemble" approach 
of Huber and Kim (1996). For use of WESTPA please cite the following:

Zwier, M.C., Adelman, J.L., Kaus, J.W., Pratt, A.J., Wong, K.F., Rego, N.B., Suarez, E., Lettieri, S.,
Wang, D.W., Grabe, M., Zuckerman, D.M., and Chong, L.T. "WESTPA: An Interoperable, Highly 
Scalable Software Package For Weighted Ensemble Simulation and Analysis," J. Chem. Theory Comput., 11: 800809 (2015). 

Russo, J. D., Zhang, S., Leung, J.M.G., Bogetti, A.T., Thompson, J.P., DeGrave, A.J., Torrillo, P.A., Pratt, A.J., 
Wong, K.F., Xia, J., Copperman, J., Adelman, J.L., Zwier, M.C., LeBard, D.N., Zuckerman, D.M., Chong, L.T. 
WESTPA 2.0: High-Performance Upgrades for Weighted Ensemble Simulations and Analysis of Longer-Timescale Applications. 
J. Chem. Theory Comput., 18 (2): 638649 (2022).

See this page_ and this powerpoint_ for an overview of weighted ensemble simulation.

To help us fund development and improve WESTPA please fill out a one-minute survey_ and consider 
contributing documentation or code to the WESTPA community.

WESTPA is free software, licensed under the terms of the MIT License. See the file ``LICENSE`` for more information.

.. _survey: https://docs.google.com/forms/d/e/1FAIpQLSfWaB2aryInU06cXrCyAFmhD_gPibgOfFk-dspLEsXuS9-RGQ/viewform
.. _page: https://westpa.github.io/westpa/overview.html
.. _powerpoint: https://docs.google.com/presentation/d/1PKsklN5aYLlLSTDOLdNGti6pcGs4Rgxm/edit?usp=sharing&ouid=117278498028744119802&rtpof=true&sd=true

------------
Requirements
------------

WESTPA is written in Python and requires version 3.10 or later. WESTPA also requires a number of Python scientific software packages.
The simplest way to meet these requirements is to download the
Anaconda Python distribution from www.anaconda.com (free for all users).

WESTPA currently runs on Unix-like operating systems, including Linux and
Mac OS X. It is developed and tested on x86_64 machines running Linux.

--------------------------------
Obtaining and Installing WESTPA
--------------------------------

WESTPA is developed and tested on Unix-like operating systems, including Linux and Mac OS X.


Regardless of the chosen method of installation, before installing WESTPA, we recommend you to first install the Python 3 version provided by the latest free `Anaconda Python distribution`_. After installing Anaconda, create a new python environment for the WESTPA install with the following::

    conda create -n westpa python=3.11
    conda activate westpa

Then, we recommend installing WESTPA through conda or pip. Execute either of the following::

    conda install -c conda-forge westpa

or::

    python -m pip install westpa
    
See the install instructions on our `wiki`_ for more detailed information. 
    

To install from source (**not recommended**), start by downloading the corresponding tar.gz file from the `releases page`_. After downloading the file, unpack the file and install WESTPA by executing the following::

    tar xvzf westpa-2022.12.tar.gz
    cd westpa
    python -m pip install -e .

.. _`releases page`: https://github.com/westpa/westpa/releases
.. _`Anaconda Python distribution`: https://www.anaconda.com/download
.. _`wiki`: https://github.com/westpa/westpa/wiki/Installing-WESTPA

---------------
Getting started
---------------

High-level tutorials of how to use the WESTPA software can be found here_.
Further, all WESTPA command-line tools provide detailed help when
given the -h/--help option.

Finally, while WESTPA is a powerful tool that enables expert simulators to access much longer 
timescales than is practical with standard simulations, there can be a steep learning curve to 
figuring out how to effectively run the simulations on your computing resource of choice. 
For serious users who have completed the online tutorials and are ready for production simulations 
of their system, we invite you to contact Lillian Chong (ltchong AT pitt DOT edu) about spending 
a few days with her lab and/or setting up video conferencing sessions to help you get your 
simulations off the ground.

.. _here: https://github.com/westpa/westpa/wiki/Tutorials

------------
Getting help
------------

WESTPA FAQ_

A mailing list for WESTPA is available, at which one can ask questions (or see
if a question one has was previously addressed). This is the preferred means
for obtaining help and support. See http://groups.google.com/group/westpa-users
to sign up or search archived messages.

.. _FAQ: https://github.com/westpa/westpa/wiki/Frequently-Asked-Questions
 
----------
Developers
----------

Search archived messages or post to the westpa-devel Google group: https://groups.google.com/group/westpa-devel. 

Owner

  • Name: westpa
  • Login: westpa
  • Kind: organization

Interoperable, highly-scalable software for weighted ensemble simulation

Citation (CITATION.bib)

%% Citations for WESTPA 2.0
%% Includes the 2015 original paper and the 2022 WESTPA 2.0 paper
%% Saved with string encoding Unicode (UTF-8) 

@article{zwier_westpa_2015,
	title = {{WESTPA}: {An} {Interoperable}, {Highly} {Scalable} {Software} {Package} for {Weighted} {Ensemble} {Simulation} and {Analysis}},
	volume = {11},
	issn = {1549-9618},
	shorttitle = {{WESTPA}},
	url = {https://doi.org/10.1021/ct5010615},
	doi = {10.1021/ct5010615},
	abstract = {The weighted ensemble (WE) path sampling approach orchestrates an ensemble of parallel calculations with intermittent communication to enhance the sampling of rare events, such as molecular associations or conformational changes in proteins or peptides. Trajectories are replicated and pruned in a way that focuses computational effort on underexplored regions of configuration space while maintaining rigorous kinetics. To enable the simulation of rare events at any scale (e.g., atomistic, cellular), we have developed an open-source, interoperable, and highly scalable software package for the execution and analysis of WE simulations: WESTPA (The Weighted Ensemble Simulation Toolkit with Parallelization and Analysis). WESTPA scales to thousands of CPU cores and includes a suite of analysis tools that have been implemented in a massively parallel fashion. The software has been designed to interface conveniently with any dynamics engine and has already been used with a variety of molecular dynamics (e.g., GROMACS, NAMD, OpenMM, AMBER) and cell-modeling packages (e.g., BioNetGen, MCell). WESTPA has been in production use for over a year, and its utility has been demonstrated for a broad set of problems, ranging from atomically detailed host–guest associations to nonspatial chemical kinetics of cellular signaling networks. The following describes the design and features of WESTPA, including the facilities it provides for running WE simulations and storing and analyzing WE simulation data, as well as examples of input and output.},
	number = {2},
	urldate = {2020-06-19},
	journal = {Journal of Chemical Theory and Computation},
	author = {Zwier, Matthew C. and Adelman, Joshua L. and Kaus, Joseph W. and Pratt, Adam J. and Wong, Kim F. and Rego, Nicholas B. and Suárez, Ernesto and Lettieri, Steven and Wang, David W. and Grabe, Michael and Zuckerman, Daniel M. and Chong, Lillian T.},
	month = feb,
	year = {2015},
	pages = {800--809},
}

@article{russo_westpa_2022,
	title = {{WESTPA} 2.0: {High}-{Performance} {Upgrades} for {Weighted} {Ensemble} {Simulations} and {Analysis} of {Longer}-{Timescale} {Applications}},
	volume = {18},
	copyright = {All rights reserved},
	issn = {1549-9618},
	shorttitle = {{WESTPA} 2.0},
	url = {https://doi.org/10.1021/acs.jctc.1c01154},
	doi = {10.1021/acs.jctc.1c01154},
	abstract = {The weighted ensemble (WE) family of methods is one of several statistical mechanics-based path sampling strategies that can provide estimates of key observables (rate constants and pathways) using a fraction of the time required by direct simulation methods such as molecular dynamics or discrete-state stochastic algorithms. WE methods oversee numerous parallel trajectories using intermittent overhead operations at fixed time intervals, enabling facile interoperability with any dynamics engine. Here, we report on the major upgrades to the WESTPA software package, an open-source, high-performance framework that implements both basic and recently developed WE methods. These upgrades offer substantial improvements over traditional WE methods. The key features of the new WESTPA 2.0 software enhance the efficiency and ease of use: an adaptive binning scheme for more efficient surmounting of large free energy barriers, streamlined handling of large simulation data sets, exponentially improved analysis of kinetics, and developer-friendly tools for creating new WE methods, including a Python API and resampler module for implementing both binned and “binless” WE strategies.},
	number = {2},
	urldate = {2022-02-08},
	journal = {Journal of Chemical Theory and Computation},
	author = {Russo, John D. and Zhang, She and Leung, Jeremy M. G. and Bogetti, Anthony T. and Thompson, Jeff P. and DeGrave, Alex J. and Torrillo, Paul A. and Pratt, A. J. and Wong, Kim F. and Xia, Junchao and Copperman, Jeremy and Adelman, Joshua L. and Zwier, Matthew C. and LeBard, David N. and Zuckerman, Daniel M. and Chong, Lillian T.},
	month = feb,
	year = {2022},
	pages = {638--649},
}

GitHub Events

Total
  • Create event: 15
  • Release event: 1
  • Issues event: 9
  • Watch event: 10
  • Delete event: 13
  • Issue comment event: 55
  • Push event: 58
  • Gollum event: 9
  • Pull request review event: 55
  • Pull request review comment event: 14
  • Pull request event: 87
  • Fork event: 2
Last Year
  • Create event: 15
  • Release event: 1
  • Issues event: 9
  • Watch event: 10
  • Delete event: 13
  • Issue comment event: 55
  • Push event: 58
  • Gollum event: 9
  • Pull request review event: 55
  • Pull request review comment event: 14
  • Pull request event: 87
  • Fork event: 2

Committers

Last synced: 8 months ago

All Time
  • Total Commits: 1,820
  • Total Committers: 44
  • Avg Commits per committer: 41.364
  • Development Distribution Score (DDS): 0.687
Past Year
  • Commits: 46
  • Committers: 6
  • Avg Commits per committer: 7.667
  • Development Distribution Score (DDS): 0.413
Top Committers
Name Email Commits
Matt Zwier m****r@g****m 570
Jeremy M. G. Leung 6****1 234
Adam Pratt a****t@g****m 190
ASinanSaglam a****m@g****m 117
Alex DeGrave a****8@p****u 105
Joshua L. Adelman j****n@g****m 89
Jeff Thompson j****n@e****m 79
ajpratt a****5@p****u 64
joekaus d****l@l****t 41
Anthony Bogetti 3****i 38
She Zhang s****g@e****m 30
Nick Rego n****2@p****u 29
dependabot[bot] 4****] 29
Lillian Chong l****g@p****u 28
Kim F. Wong k****g@p****u 24
pre-commit-ci[bot] 6****] 20
Jeremy Leung j****1@g****m 18
Ali b****n@M****) 17
She Zhang s****0@g****m 17
Karl Debiec k****c@g****m 17
John Russo r****d@.****u 11
Jeff Thompson j****7@g****m 7
Page Harrison p****o@g****m 7
JD Russo r****d@o****u 5
Matt Zwier m****2@u****u 5
atbogetti a****3@p****u 5
Anthony Bogetti a****i@g****m 3
Joseph Kaus j****s@g****m 2
gma57 1****7 2
David LeBard d****d@e****m 2
and 14 more...

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 26
  • Total pull requests: 364
  • Average time to close issues: over 1 year
  • Average time to close pull requests: 18 days
  • Total issue authors: 8
  • Total pull request authors: 16
  • Average comments per issue: 1.65
  • Average comments per pull request: 0.95
  • Merged pull requests: 293
  • Bot issues: 0
  • Bot pull requests: 85
Past Year
  • Issues: 7
  • Pull requests: 103
  • Average time to close issues: 11 days
  • Average time to close pull requests: 8 days
  • Issue authors: 3
  • Pull request authors: 8
  • Average comments per issue: 0.57
  • Average comments per pull request: 0.73
  • Merged pull requests: 69
  • Bot issues: 0
  • Bot pull requests: 28
Top Authors
Issue Authors
  • jeremyleung521 (13)
  • synapticarbors (4)
  • jpthompson17 (4)
  • rcrehuet (1)
  • razvanmarinescu (1)
  • HScheiber (1)
  • Poruthoor (1)
  • jdrusso (1)
Pull Request Authors
  • jeremyleung521 (226)
  • dependabot[bot] (50)
  • pre-commit-ci[bot] (35)
  • atbogetti (11)
  • SHZ66 (9)
  • darianyang (6)
  • jpthompson17 (5)
  • jpkrowe (5)
  • Daniel-Chem (4)
  • gma57 (4)
  • jdrusso (2)
  • alexmgoldberg (2)
  • HScheiber (2)
  • synapticarbors (1)
  • ASinanSaglam (1)
Top Labels
Issue Labels
bug (4) dependencies (3) Error Messages Improvement (2) CI maintenance (2) enhancement (2)
Pull Request Labels
dependencies (67) bug (64) CI maintenance (61) enhancement (51) Error Messages Improvement (14) github_actions (11) westpa3 (3) good-first-issue (2) help wanted (2)

Packages

  • Total packages: 2
  • Total downloads:
    • pypi 312 last-month
  • Total docker downloads: 45
  • Total dependent packages: 1
    (may contain duplicates)
  • Total dependent repositories: 5
    (may contain duplicates)
  • Total versions: 24
  • Total maintainers: 2
pypi.org: westpa

WESTPA is a package for constructing and running stochastic simulations using the "weighted ensemble" approach of Huber and Kim (1996).

  • Versions: 16
  • Dependent Packages: 1
  • Dependent Repositories: 1
  • Downloads: 312 Last month
  • Docker Downloads: 45
Rankings
Docker downloads count: 3.2%
Dependent packages count: 4.8%
Stargazers count: 5.3%
Forks count: 6.0%
Average: 9.5%
Downloads: 16.2%
Dependent repos count: 21.5%
Maintainers (2)
Last synced: 6 months ago
conda-forge.org: westpa

WESTPA is a package for constructing and running stochastic simulations using the "weighted ensemble" approach of Huber and Kim (1996).

  • Versions: 8
  • Dependent Packages: 0
  • Dependent Repositories: 4
Rankings
Dependent repos count: 16.2%
Forks count: 26.6%
Stargazers count: 28.7%
Average: 30.8%
Dependent packages count: 51.6%
Last synced: 6 months ago

Dependencies

.github/workflows/build.yaml actions
  • actions/checkout v3 composite
  • actions/download-artifact v3 composite
  • actions/setup-python v4 composite
  • actions/upload-artifact v3 composite
  • pypa/cibuildwheel v2.11.2 composite
  • pypa/gh-action-pypi-publish release/v1 composite
.github/workflows/test.yaml actions
  • actions/checkout v3 composite
  • actions/setup-python v4 composite
  • codecov/codecov-action v3 composite
  • conda-incubator/setup-miniconda v2 composite
.github/workflows/codeql.yml actions
  • actions/checkout v3 composite
  • github/codeql-action/analyze v2 composite
  • github/codeql-action/autobuild v2 composite
  • github/codeql-action/init v2 composite
pyproject.toml pypi
setup.py pypi