[gmx-developers] enhanced ensemble

Mirabzadeh, Christopher (mira2978@vandals.uidaho.edu) mira2978 at vandals.uidaho.edu
Mon Apr 6 22:35:06 CEST 2015

Hello all,

I'm new to the mailing list so hopefully I'm doing this correctly. I searched through the archives but didn't find anything helpful. There may have been something that I looked over or missed entirely. Apologies if this has already been covered elsewhere. If so, please point me in that direction.

What I'm trying to do;

I'm attempting to add functionality to the expanded ensemble calculations in Gromacs by adding the Adaptive Integration Method by Fasnacht, DOI: 10.1103/PhysRevE.69.056704, for free energy calculations. AIM is an enhanced sampling method that uses Metropolis Monte Carlo to change the value of lambda with an acceptance probability determined by the current running free energy estimated by the same integral used in Thermodynamic Integration.

What I've done so far;

I've added elamstatsAIM and elmcmoveAIM in enums.h.

I've added partial code to the ChooseNewLambda() function in expanded.c. I'm taking advantage of the metropolis sampler with trial +/- 1.

Where I'm stuck;

I'm not sure if I need to add code to UpdateWeights(). How is UpdateWeights() used?

I need the derivative of the Hamiltonian with respect to lambda at every md step. I'm having a hard time narrowing down this variable. I know it's calculated and I see in mdebin.c there is a line that says "/* store_dh is dE */". Is the derivative "store_dhdl[]=enerd->term[F_DVDL]"?  Or, is this already being called somewhere in expanded.c that I can take advantage of, maybe dfhist?

I appreciate any advice that can be offered.



Christopher A. Mirabzadeh
Research Assistant/Physics Instructor
Physics Department
University of Idaho, Moscow
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://maillist.sys.kth.se/pipermail/gromacs.org_gmx-developers/attachments/20150406/add8f38b/attachment.html>

More information about the gromacs.org_gmx-developers mailing list