Re: CSVR + eABF, system temperature set to zero

From: Jérôme Hénin (jerome.henin_at_ibpc.fr)
Date: Tue Feb 12 2019 - 07:54:15 CST

Sorry, I missed CSVR because it's not named that way in the NAMD user's
guide.

Lowe-Andersen is statistically correct.

Jerome

On Tue, 12 Feb 2019 at 14:20, Giacomo Fiorin <giacomo.fiorin_at_gmail.com>
wrote:

>
>
> On Tue, Feb 12, 2019 at 8:10 AM Jérôme Hénin <jerome.henin_at_ibpc.fr> wrote:
>
>> Dear Michael,
>>
>>
>> On Tue, 12 Feb 2019 at 05:18, Giacomo Fiorin <giacomo.fiorin_at_gmail.com>
>> wrote:
>>
>>> This is not a bug, but to paraphrase a major software house, "it's a
>>> (lack of) a feature" :-) NAMD does not have a general method to provide
>>> the ensemble's target temperature, but it can be given one, so that these
>>> cases are all considered.
>>>
>>> If you would like, you can modify the code yourself with your patch for
>>> everybody's benefit at https://github.com/Colvars/colvars.
>>>
>>> I'll let others comment on the role of the temperature in the various
>>> estimators, but seeing as kT appears at the denominator of many quantities
>>> the derivation of any sampling method is flawed for T=0.
>>>
>>> Giacomo
>>>
>>> On Mon, Feb 11, 2019, 7:53 PM Michael von Domaros <mail_at_vondomaros.eu
>>> wrote:
>>>
>>>> Dear NAMD users,
>>>>
>>>> I'm trying to run meta-eABF in combination with the CSVR thermostat.
>>>> When doing so, I get the error message "WARNING: ABF should not be run
>>>> without a thermostat or at 0 Kelvin!".
>>>>
>>>> This appears to be the case, because the function cvm::temperature()
>>>> returns 0.0 K for CSVR, which is because CSVR is not included in
>>>> colvarproxy_namd.C. After I added the corresponding if statement, the
>>>> warning went away. Is this a bug?
>>>> Related question: Why is loweAnderson commented out at the same place?
>>>>
>>>
>> I'm not sure. It's been that way ever since that code was written,
>> apparently. I don't see a reason not to enable it.
>>
>>
>>> Are there compelling reasons why one should not use any of these
>>>> thermostats with eABF?
>>>>
>>>
>> Velocity rescaling does not generate a correct statistical ensemble, and
>> I don't know of a good reason to use it for anything at all, really.
>>
>
> This is probably true about Lowe-Andersen, but Bussi's CSVR thermostat
> should probably be accounted for.
>
>
>
>>
>>
>>> Second problem: As far as I understand the code, cvm::temperature() is
>>>> also used in the calculation of the CZAR gradients in
>>>> colvarbias_abf::write_gradient_samples(). A system temperature of zero
>>>> would make the kT ln(rho(z)) term of the czar estimator zero, so results
>>>> would be wrong. Is this correct?
>>>>
>>>
>> That is correct. Neither CZAR, nor ABF, nor free energy in general makes
>> much sense at T=0K.
>>
>>
>>> I'm asking, because a co-worker is doing meta-eABF with CSVR in NAMD and
>>>> her PMF's converge to those obtained through ABF with a langevin
>>>> thermostat, despite of these issues above. When I asked her to do a 0
>>>> length run with langevin on, which should rewrite the CZAR files with the
>>>> correct temperature, she observed discontinuities in her PMF at the window
>>>> boundaries.
>>>>
>>>
>> That may also involve a separate issue, which is that CZAR is defined
>> based on sampling in a contiguous window. Stitching together separate
>> windows will produce artefacts. The correct way to combine those windows is
>> to run CZAR in each window individually, and then merge the resulting free
>> energy gradients "by hand", and integrate them. I still need to clarify
>> this in the documentation.
>>
>> Best,
>> Jerome
>>
>>
>
>
> --
> Giacomo Fiorin
> Associate Professor of Research, Temple University, Philadelphia, PA
> Contractor, National Institutes of Health, Bethesda, MD
> http://goo.gl/Q3TBQU
> https://github.com/giacomofiorin
>

This archive was generated by hypermail 2.1.6 : Mon Nov 18 2019 - 23:20:24 CST