Free Energy Reconstruction from Biased Experiments (FERBE) version 0.2

The calculation of free energy differences is a major focus in chemistry. Chemists are interested in free energy differences between thermodynamic states. For example, we would like to know how likely it is for a ligand to bind a particular receptor. We are also interested the free energy surface along a system order parameter, such as a protein dihedral angle or the length of a molecule; this is known as the potential of mean force (PMF). A difficulty with rigorous free energy calculations, however, is that they require thorough search of configuration space. This often includes the sampling of rare events. Fortunately, it is possible to improve the sampling of these events by modifying the search space - performing a biased experiment.

I've written several MATLAB programs to calculate free energy differences from different types of biased experiments.

The source codes for these programs are available for free under a general public license (GPL). I recognize that as a proprietary commerical software, MATLAB has the disadvantage of being less widely available than languages with open-source compilers, such as FORTRAN and C, but I have chosen to use it as a platform for algorithmic development because its extensive library of mathematical and matrix manipulation routines. These codes should at least serve a pedagogical purpose to computational scientists without MATLAB. All of the files below are available in FERBE.zip.

If you use these in a scientific publication I ask that you cite the appropriate work. Feel free to send me comments and suggestions.

About the versions...

version 0.2 (4/23/2008) - Analysis of bidirectional data added.
version 0.1 alpha (3/22/2007) - Original version. Includes WHAM and unidirectional pulling analysis.


1. Equilibrium Umbrella Sampling

This implementation of the WHAM method [1-3] refers to equations in Roux's paper [3]. I referred to Alan Grossfield's C++ implementation while writing it. I used it my multidimensional PMF paper [9] to compare umbrella sampling and nonequilibrium pulling experiments.

Simulation

Analysis

To generate Figure 1 in reference 9, enter the following commands in MATLAB:

a = 0;
[Xs,Ys,Bxs] = umbrella_twoD(a);
plot_WHAM_twoD(Xs,Ys,Bxs,a);

2. Unidirectional Single-Molecule Pulling

These codes implement Hummer and Szabo's free energy reconstruction method [6-7], as well as several extensions [8-9].

Simulation

Analysis

To generate Figure 1 in reference [8] using an reconstruction algorithm that assumes a fixed biasing protocol, enter the following commands in MATLAB:

[Xs,Bxs,Wt,Fs] = slowpull_DBwell;
[HSJE,meanW,FD,xspace] = reconstruct_time(Xs,Bxs(1,:)',Wt,2.0);
plot(xspace,[HSJE;FD;meanW]);

Notice that the input for reconstruct_time includes Bxs(1,:)'. This is because the input for the pulling protocol of reconstruct_time is a Nx1 vector, whereas the output from slowpull_DBwell is a matrix. The reason it is designed to be a matrix is to make it compatible with reconstruct_bias, in which the pulling protocol for each run can be different.

To generate the same figure using a reconstruction algorithm that allows you to input the biasing protocol for each trajectory, enter the following commands in MATLAB:

[Xs,Bxs,Wt,Fs] = slowpull_DBwell;
[HSJE,meanW,FD,xspace] = reconstruct_bias(Xs,Bxs,Wt,2.0);
plot(xspace,[HSJE;FD;meanW]);

To generate Figure 2 in reference [9], enter the following commands in MATLAB:

a = 0.3;
[Xs,Ys,Bxs,Wt] = pull_twoD(a);
plot_pullreconstruct_twoD(Xs,Ys,Bxs,Wt,a);

3. Bidirectional Single-Molecule Pulling

These codes implement the Bennett Acceptance Ratio, the Conjugate Twin Estimator, and Chelli et al.'s Maximum Likelihood Method.

Simulation

Analysis

To generate Figures 1 and 2 in reference [12], run test_pullFR.m


Citations

[1] A. Ferrenberg and R. Swendsen. Optimized Monte Carlo data analysis. Physical Review Letters 63, 1195 (1989).
[2] S. Kumar, J.M. Rosenberg, D. Bouzida, R.H. Swendsen, and P.A. Kollman. Multidimensional free-energy calculations using the weighted histogram analysis method. Journal of Computational Chemistry 16(11):1339-1350 (1995).
[3] B. Roux. The calculation of the potential of mean force using computer simulations. Computer Physics Communications 91, 275 (1995).
[4] C. Jarzynski. Nonequilibrium Equality for Free Energy Differences. Physical Review Letters 78, 2690 (1997).
[5] C. Jarzynski. Equilibrium free-energy differences from nonequilibrium measurements: A master-equation approach. Physical Review E 56, 5018-5035 (1997).
[6] G. Hummer and A. Szabo. Free energy reconstruction from nonequilibrium single-molecule pulling experiments. Proceedings of the National Academy of Sciences U.S.A. 98, 3658-3661 (2001).
[7] G. Hummer and A. Szabo. Free Energy Surfaces from Single-Molecule Force Spectroscopy. Accounts of Chemical Research 38(7), 504-513 (2005).
[8] D. Minh. Free-energy reconstruction from experiments performed under different biasing programs. Physical Review E 74, 061120 (2006).
[9] D. Minh. Multidimensional Potentials of Mean Force from Biased Experiments Along a Single Coordinate. Journal of Physical Chemistry B 111(16), 4137-4140 (2007).
[10] C. Bennett. Efficient Estimation of Free Energy Differences from Monte Carlo Data. Journal of Computational Physics 22, 245-268 (1976).
[11] G. Crooks. Path-ensemble averages in systems driven far from equilibrium. Physical Review E 61, 2361-2366 (2000).
[12] D. Minh and A. Adib. Optimized free energies from bidirectional single-molecule force spectroscopy. Physical Review Letters 100, 180602 (2008).
[13] R. Chelli, S. Marsili, and P. Procacci. Calculation of the potential of mean force from nonequilibrium measurements via maximum likelihood estimators. Physical Review E 77, 031104 (2008).

[Home |Research |Software |CV |Newspaper |Personal]