Skip to main content

The umbrella integration algorithm.

Project description

Umbrella Integration[1] algorithm of calculating PMF using Python.

Dependence

  • Python3

  • Numpy

  • pandas for parsing metafile

  • Scipy for trapz integration

Usage:

See help:

python3 ubint.py -h

Input

Metafile

The <your-metafile> should be in fellowing form:

/path/to/your/window/file window_center spring_constant [temperature]

There is a variable of T in ubint.py, if the temperature left blank in the metafile, the default temperature would be variable T in the ubint.py, or you can set specific temperature for some window.

Data file for each window

The data file of each window need to be a 2-column file with time reaction_coordinate, the coordinate should be 1-dimensional.

Output

The output file is free_py.txt with 2-column reaction_coordinate free_energy

Warning

Unit

I use kJ/mol in this program.

Spring constant K

In your simulation, the biased spring potential shoud be in form of 0.5 * K * (r - r0) ** 2, here K is the parameter set in your <your-metafile>, for some simulation program, there is no 0.5 in the biased spring potential.

Screen shots

Raw data was generated by Gaussian distribution for each window with MEAN=window_center and STD=0.8, the centers are in range of 0.0 ~ 19.5 by step of 0.5, here is the result compare with WHAM[2]:

  • Raw Data

Raw Raw
Raw IL
  • Compare with WHAM

CMP CMP

The zero point in WHAM is the minimum value and the zero point in UI is 0.

TO DO

The UI algorithm with higher oder terms[3] of A(xi) is ubint_ho_devel.py, the result is not ideal using previous data, still in development.

Problems occurred at standard normal distributions, maybe the quadruplicate term which even possesses a small value could cause a huge deviation. I should try some systems with non-quadratic potentials.

The function ``exp(-beta(a1*xi+a2*xi^2+a3*xi^3+a4*xi^4))`` and its integration (Normalization factor) give very large value (even inf), this is unable to solve yet.

Results

CMP\_HO CMP\_HO

Ref

  1. Kästner, Johannes, and Walter Thiel. “Bridging the Gap between Thermodynamic Integration and Umbrella Sampling Provides a Novel Analysis Method: ‘Umbrella Integration.’” The Journal of Chemical Physics 123, no. 14 (October 8, 2005): 144104. doi:10.1063/1.2052648.

  2. http://membrane.urmc.rochester.edu/content/wham

  3. Kästner, Johannes. “Umbrella Integration with Higher-Order Correction Terms.” The Journal of Chemical Physics 136, no. 23 (June 21, 2012): 234102. doi:10.1063/1.4729373.

Project details


Release history Release notifications | RSS feed

This version

0.41

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

UmbrellaIntegrate-0.41.tar.gz (5.5 kB view details)

Uploaded Source

Built Distributions

UmbrellaIntegrate-0.41-py3-none-any.whl (7.4 kB view details)

Uploaded Python 3

UmbrellaIntegrate-0.41-py2.py3-none-any.whl (7.4 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file UmbrellaIntegrate-0.41.tar.gz.

File metadata

File hashes

Hashes for UmbrellaIntegrate-0.41.tar.gz
Algorithm Hash digest
SHA256 feff335412622dad0dd1a4b75fd7e1a8a8a0ec62e366467c215749f85bb2219b
MD5 d53c57277cc005f2841f293f12f22ce6
BLAKE2b-256 050b716a285345a65912f6b982ce2d5a1ae557058f05af2dbbb08caed02fed79

See more details on using hashes here.

File details

Details for the file UmbrellaIntegrate-0.41-py3-none-any.whl.

File metadata

File hashes

Hashes for UmbrellaIntegrate-0.41-py3-none-any.whl
Algorithm Hash digest
SHA256 c068c648eab7cd7c6c0feda793b12cced51c91b17b0af52fd0292bd5fe0ecc69
MD5 4c87ec03f9c9b60b9791bea7b9e2e95d
BLAKE2b-256 8a5bd03f75892b7f34dff961ef4fd47e4b9bd2f768c2d394c22483f660d7c107

See more details on using hashes here.

File details

Details for the file UmbrellaIntegrate-0.41-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for UmbrellaIntegrate-0.41-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 0b074941fc276c50ed26207c71f7c0f765957bd2c7707a1ac9358ed836102558
MD5 7bca97e59ad30d2d90898750cbb191ce
BLAKE2b-256 2d304bc93340ebb951f2b6601c02fbae8eee0baea12fae4c1bd0049edbed424e

See more details on using hashes here.

Supported by

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