**From:** Jeff Comer (*jeffcomer_at_gmail.com*)

**Date:** Fri Sep 11 2015 - 08:10:02 CDT

**Next message:**Jeff Comer: "Re: Error in NAMD Controller Class Reference- Adaptive Tempering"**Previous message:**Sachin Natesh: "Error in NAMD Controller Class Reference- Adaptive Tempering"**In reply to:**Sachin Natesh: "Error in NAMD Controller Class Reference- Adaptive Tempering"**Next in thread:**Jeff Comer: "Re: Error in NAMD Controller Class Reference- Adaptive Tempering"**Reply:**Jeff Comer: "Re: Error in NAMD Controller Class Reference- Adaptive Tempering"**Messages sorted by:**[ date ] [ thread ] [ subject ] [ author ] [ attachment ]

Dear Sachin Natesh,

I'm not that familiar with adaptive tempering, but I noticed that this

equation bears similarity with integrators for overdamped Brownian

dynamics. What you have pointed out is not actually an error, but the

correct discretization of the Gaussian noise.

First, a quick dimensional analysis. Notice that the Gaussian noise

has the correlation function <ζ(t')ζ(t)> = δ(t-t'), which is stated in

the paper you cite

(http://www.ncbi.nlm.nih.gov/pmc/articles/PMC2905458/). The delta

function has units of the inverse of its argument since ∫ dt δ(t) = 1.

So the noise, ζ(t), has units of 1/sqrt(t). Thus, ζ(t) Δt must have

units of sqrt(t).

You might want to do a search on the "Wiener process", which will give

you more insight about what is going on. Basically, we are integrating

the Gaussian noise ζ(t) over a finite time Δt. The integral of a

zero-mean unit-variance Gaussian noise is the Wiener process, which is

basically Brownian dynamics with a diffusion constant=1 (which obeys

the diffusion equation with D=1 if you average over many instances).

Integrating ζ(t) from 0 to Δt gives a Gaussian probability density

p(x)=1/(4πΔt) exp(–x^2/(4Δt)). (See

https://en.wikipedia.org/wiki/Heat_kernel ) If you compare this to the

standard normal distribution, you see that the standard deviation is

sqrt(2Δt). So to discretize Eq. 1 of the reference you cited, you need

a Gaussian random number with a standard deviation of sqrt(2Δt).

random->gaussian()*sqrt(2.*adaptTempDt) is just that.

Regards,

Jeff

–––––––––––––––––––––––––––––––––––———————

Jeffrey Comer, PhD

Assistant Professor

Institute of Computational Comparative Medicine

Nanotechnology Innovation Center of Kansas State

Kansas State University

Office: P-213 Mosier Hall

Phone: 785-532-6311

On Thu, Sep 10, 2015 at 7:13 PM, Sachin Natesh <snatesh_at_uchicago.edu> wrote:

*> Hello all,
*

*>
*

*> In the NAMD controller class reference, which can be found here, I notice a
*

*> possible error in the computation of the adaptive tempering temperature
*

*> update (lines 1875-1878; see below)
*

*>
*

*> 01875 //dT is new temperature
*

*> 01876 BigReal dT =
*

*> ((potentialEnergy-potEnergyAverage)/BOLTZMANN+adaptTempT)*adaptTempDt;
*

*> 01877 dT += random->gaussian()*sqrt(2.*adaptTempDt)*adaptTempT;
*

*> 01878 dT += adaptTempT;
*

*>
*

*>
*

*> On line 1877, the stochastic portion of the temperature update is added to
*

*> what has been computed for the new temperature thus far, though the
*

*> integration time-step, adaptTempDt, is placed within the sqrt function. This
*

*> seems particularly erroneous to me as equation 1 of the paper upon which the
*

*> NAMD implementation is based (here) calls for the integration time-step to
*

*> fall outside of the radical, which can be realized through simple cross
*

*> multiplication of the dt differential.
*

*>
*

*> Does the NAMD implementation of the adaptive tempering algorithm actually
*

*> contain this error, is it the online documentation that is flawed, or am I
*

*> missing something?
*

*>
*

*> Any information in this regard would be much appreciated.
*

*>
*

*>
*

*> Best,
*

*>
*

*> Sachin Natesh
*

*>
*

*>
*

*>
*

*>
*

*>
*

*>
*

*>
*

*>
*

*>
*

**Next message:**Jeff Comer: "Re: Error in NAMD Controller Class Reference- Adaptive Tempering"**Previous message:**Sachin Natesh: "Error in NAMD Controller Class Reference- Adaptive Tempering"**In reply to:**Sachin Natesh: "Error in NAMD Controller Class Reference- Adaptive Tempering"**Next in thread:**Jeff Comer: "Re: Error in NAMD Controller Class Reference- Adaptive Tempering"**Reply:**Jeff Comer: "Re: Error in NAMD Controller Class Reference- Adaptive Tempering"**Messages sorted by:**[ date ] [ thread ] [ subject ] [ author ] [ attachment ]

*
This archive was generated by hypermail 2.1.6
: Tue Dec 27 2016 - 23:21:18 CST
*