/WHAM

Python package to construct free energy profiles from biased molecular simulation data using both log-likelihood maximization and self-consistent iteration approaches.

Primary LanguagePythonMIT LicenseMIT

WHAM

Python package to construct free energy profiles from umbrella sampling simulation data.

Link to documentation.

Status

Actions Status Open Issues Closed Issues

Code

Python Google Python Style

Details

Binless formulation/MBAR (WHAM.binless) [more accurate]

  • Implemented using log-likelihood maximization for superlinear convergence and self-consistent iteration (as a baseline/for debugging)
  • Support for both 1D and multidimensional umbrella sampling.
  • Support for reweighting 1D profiles to 2D (in a second related order parameter).

Binned formulation (WHAM.binned) [faster]

  • Implemented using log-likelihood maximization for superlinear convergence and self-consistent iteration (as a baseline/for debugging)
  • Support for both 1D and multidimensional^ umbrella sampling.

^-> in progress

Both log-likelihood maximization approaches can use multiple nonlinear optimization algorithms. Read the documentation to see which algorithms are available.

Installation

  1. Install requirements
pip install -r requirements.txt
  1. Build C extensions
python setup.py build_ext --inplace
  1. Install package
pip install .

Usage

See the Jupyter notebooks in the examples/ directory.

Tests

Integration tests are in the directory tests/tests_integration and unit tests are in the directory tests/tests_unit. Navigate to a test directory and run:

pytest

References:

  • Shirts, M. R., & Chodera, J. D. (2008). Statistically optimal analysis of samples from multiple equilibrium states. Journal of Chemical Physics, 129(12). DOI
  • Zhu, F., & Hummer, G. (2012). Convergence and error estimation in free energy calculations using the weighted histogram analysis method. Journal of Computational Chemistry, 33(4), 453–465. DOI
  • Tan, Z., Gallicchio, E., Lapelosa, M., & Levy, R. M. (2012). Theory of binless multi-state free energy estimation with applications to protein-ligand binding. Journal of Chemical Physics, 136(14). DOI