Re: Problem with alpha colvar in NAMD 2.12b1

From: Giacomo Fiorin (giacomo.fiorin_at_gmail.com)
Date: Fri Dec 09 2016 - 17:14:34 CST

That problem has been fixed between 2.10 and 2.11, like you said.

This is a new problem, part of which is related to the performance
improvements, more specifically how groups are handled by NAMD. Both show
up as NANs because a division by zero is done when computing the angle
functions.

Th new problem is fixed, too, and I'm about to send to Amy the updated code
(also available for download, of course).

Giacomo

On Fri, Dec 9, 2016 at 5:58 PM, JC Gumbart <gumbart_at_physics.gatech.edu>
wrote:

> This is reminiscent of a problem my student Anthony and I had a while back
> with the 2.10 release. Apparently the hbond colvar (called by the alpha
> one) was not updated properly, leading to a bunch of nan’s. It was fixed
> in a later version of 2.10 and then 2.11 but maybe it has resurfaced
> somehow? Or it could be a new problem with a similar result?
>
> Best,
> JC
>
>
> On Dec 8, 2016, at 5:04 PM, Giacomo Fiorin <giacomo.fiorin_at_gmail.com>
> wrote:
>
> Hello Amy, I don't think there would be a big difference between a local
> run and Stampede, so it's a good idea to download a precompiled multicore
> binary and check.
>
> This sounds like a probable bug in the atom selection routines: many of
> the atom groups involved in the alpha function, which are not being
> initialized properly (see 0 atoms and/or the mass exactly 1 for some of
> them).
>
> Please send a starting configuration (whether or not you attach the .state
> file shouldn't matter) and the NAMD config file.
>
> Giacomo
>
> On Thu, Dec 8, 2016 at 4:23 PM, Amy Rice <arice3_at_hawk.iit.edu> wrote:
>
>> Hi all,
>> I am writing to report an issue with the alpha colvar in 2.12b1, or at
>> least as it is installed on the Stampede supercomputer. I recently went
>> back to extend some 2D REUS simulations that I had done previously on
>> Stampede ~5 months ago, and when I tried to restart the colvar simulations
>> they kept crashing with '-nan' for MISC, kinetic, total energy,
>> temperature, etc. The log file shows that it is correctly reading in the
>> colvar configuration and state file. From here, I attempted to restart only
>> one replica instead of all 81 at once, but the simulation still crashed
>> with 'nan'. However, when I turned collective variables off and used the
>> same coor, vel, and xsc to restart, it ran without issue. From there, I
>> tested using only the distance or only the alpha colvar, and distance ran
>> fine but alpha gave 'nan' so the problem seems to be isolated to the alpha
>> colvar. I was able to run the one replica locally without errors using NAMD
>> 2.11 and these same input files. We have not yet installed 2.12b1 locally,
>> so I am unsure if the problem is with 2.12b1 or only the build on Stampede.
>> I have copied my colvars input file and some portions of the output below.
>> Please let me know if there is any other information I can provide; I am
>> more than happy to supply files for testing purposes.
>>
>>
>> -------------------------------colvars.conf-----------------
>> ---------------
>> colvarsTrajFrequency 200
>>
>> colvar {
>> name length
>> width 5
>>
>> lowerboundary 0.0
>> upperboundary 50.0
>>
>> distance {
>> group1 {
>> atomnumbers {1}
>> }
>> group2 {
>> atomnumbers {233}
>> }
>> forceNoPBC on
>>
>> }
>> }
>>
>> colvar {
>> name alpha
>> width 0.1
>>
>> lowerboundary 0.0
>> upperboundary 1.0
>>
>> alpha {
>> residueRange 2-11
>> psfSegID P1
>> }
>> }
>>
>> harmonic {
>> name lenpot
>> colvars alpha length
>> centers 0.5 15.0
>> forceConstant 10
>> }
>>
>> # 10/25 = 0.4 for length
>> # 10/0.001 = 1000 for alpha
>>
>> --------------------------------------Selected
>> Output-------------------------------------------
>> harm++> cpuaffinity PE-core map : 0-15
>> Charm++> Running on 1 unique compute nodes (16-way SMP).
>> Charm++> cpu topology info is gathered in 0.014 seconds.
>> Info: NAMD 2.12b1 for Linux-x86_64-verbs-Stampede
>> Info:
>> Info: Please visit http://www.ks.uiuc.edu/Research/namd/
>> Info: for updates, documentation, and support information.
>> Info:
>> Info: Please cite Phillips et al., J. Comp. Chem. 26:1781-1802 (2005)
>> Info: in all publications reporting results obtained with NAMD.
>> Info:
>> Info: Based on Charm++/Converse 60701 for verbs-linux-x86_64-iccstatic
>> Info: Built Mon Nov 7 17:51:38 CST 2016 by tg455591 on
>> login4.stampede.tacc.utexas.edu
>> Info: 1 NAMD 2.12b1 Linux-x86_64-verbs-Stampede 16
>> c461-702.stampede.tacc.utexas.edu tg824315
>> [...]
>> colvars: ------------------------------------------------------------
>> ----------
>> colvars: Initializing the collective variables module, version 2016-10-21.
>> colvars: Please cite Fiorin et al, Mol Phys 2013:
>> colvars: http://dx.doi.org/10.1080/00268976.2013.813594
>> colvars: in any publication based on this calculation.
>> colvars: Using NAMD interface, version 2016-10-20.
>> colvars: ------------------------------------------------------------
>> ----------
>> colvars: Reading new configuration from file "colvars.conf":
>> colvars: # indexFile = "" [default]
>> colvars: # smp = on [default]
>> colvars: # analysis = off [default]
>> colvars: # colvarsTrajFrequency = 200
>> colvars: # colvarsRestartFrequency = 0 [default]
>> colvars: # colvarsTrajAppend = off [default]
>> colvars: # scriptedColvarForces = off [default]
>> colvars: # scriptingAfterBiases = on [default]
>> colvars: ------------------------------------------------------------
>> ----------
>> colvars: Initializing a new collective variable.
>> colvars: # name = "length"
>> colvars: Initializing a new "distance" component.
>> colvars: # componentCoeff = 1 [default]
>> colvars: # componentExp = 1 [default]
>> colvars: # period = 0 [default]
>> colvars: # wrapAround = 0 [default]
>> colvars: # scalable = on [default]
>> colvars: Initializing atom group "group1".
>> colvars: # indexGroup = "" [default]
>> colvars: # psfSegID = [default]
>> colvars: # atomsFile = "" [default]
>> colvars: # dummyAtom = ( 0 , 0 , 0 ) [default]
>> colvars: # enableForces = on [default]
>> colvars: # centerReference = off [default]
>> colvars: # rotateReference = off [default]
>> colvars: # enableFitGradients = on [default]
>> colvars: Enabling scalable calculation for group "group1".
>> colvars: Atom group "group1" defined, 1 atoms initialized: total
>> mass = 14.007, total charge = -0.3.
>> colvars: Initializing atom group "group2".
>> colvars: # indexGroup = "" [default]
>> colvars: # psfSegID = [default]
>> colvars: # atomsFile = "" [default]
>> colvars: # dummyAtom = ( 0 , 0 , 0 ) [default]
>> colvars: # enableForces = on [default]
>> colvars: # centerReference = off [default]
>> colvars: # rotateReference = off [default]
>> colvars: # enableFitGradients = on [default]
>> colvars: Enabling scalable calculation for group "group2".
>> colvars: Atom group "group2" defined, 1 atoms initialized: total
>> mass = 12.011, total charge = 0.34.
>> colvars: # forceNoPBC = on
>> colvars: Computing distance using absolute positions (not
>> minimal-image)
>> colvars: # oneSiteSystemForce = off [default]
>> colvars: # oneSiteTotalForce = off [default]
>> colvars: All components initialized.
>> colvars: # width = 5
>> colvars: # lowerBoundary = 0
>> colvars: # lowerWallConstant = 0 [default]
>> colvars: # upperBoundary = 50
>> colvars: # upperWallConstant = 0 [default]
>> colvars: # hardLowerBoundary = off [default]
>> colvars: # hardUpperBoundary = off [default]
>> colvars: # expandBoundaries = off [default]
>> colvars: # timeStepFactor = 1 [default]
>> colvars: # extendedLagrangian = off [default]
>> colvars: # outputValue = on [default]
>> colvars: # outputVelocity = off [default]
>> colvars: # outputTotalForce = off [default]
>> colvars: # outputAppliedForce = off [default]
>> colvars: # subtractAppliedForce = off [default]
>> colvars: ------------------------------------------------------------
>> ----------
>> colvars: Initializing a new collective variable.
>> colvars: # name = "alpha"
>> colvars: Initializing a new "alpha" component.
>> colvars: # componentCoeff = 1 [default]
>> colvars: # componentExp = 1 [default]
>> colvars: # period = 0 [default]
>> colvars: # wrapAround = 0 [default]
>> colvars: # scalable = on [default]
>> colvars: # psfSegID = "P1"
>> colvars: # hBondCoeff = 0.5 [default]
>> colvars: # angleRef = 88 [default]
>> colvars: # angleTol = 15 [default]
>> colvars: # hBondCutoff = 3.3 [default]
>> colvars: # hBondExpNumer = 6 [default]
>> colvars: # hBondExpDenom = 8 [default]
>> colvars: All components initialized.
>> colvars: # width = 0.1
>> colvars: # lowerBoundary = 0
>> colvars: # lowerWallConstant = 0 [default]
>> colvars: # upperBoundary = 1
>> colvars: # upperWallConstant = 0 [default]
>> colvars: # hardLowerBoundary = off [default]
>> colvars: # hardUpperBoundary = off [default]
>> colvars: # expandBoundaries = off [default]
>> colvars: # timeStepFactor = 1 [default]
>> colvars: # extendedLagrangian = off [default]
>> colvars: # outputValue = on [default]
>> colvars: # outputVelocity = off [default]
>> colvars: # outputTotalForce = off [default]
>> colvars: # outputAppliedForce = off [default]
>> colvars: # subtractAppliedForce = off [default]
>> colvars: ------------------------------------------------------------
>> ----------
>> colvars: Collective variables initialized, 2 in total.
>> colvars: ------------------------------------------------------------
>> ----------
>> colvars: Initializing a new "harmonic" instance.
>> colvars: # name = "lenpot"
>> colvars: # colvars = { alpha, length }
>> colvars: # outputEnergy = off [default]
>> colvars: # forceConstant = 10
>> colvars: # centers = { 0.5, 15 }
>> colvars: # targetCenters = { 0.5, 15 } [default]
>> colvars: # targetForceConstant = 0 [default]
>> colvars: # outputCenters = off [default]
>> colvars: The force constant for colvar "alpha" will be rescaled to 1000
>> according to the specified width.
>> colvars: The force constant for colvar "length" will be rescaled to 0.4
>> according to the specified width.
>> colvars: ------------------------------------------------------------
>> ----------
>> colvars: Collective variables biases initialized, 1 in total.
>> colvars: ------------------------------------------------------------
>> ----------
>> colvars: Collective variables module (re)initialized.
>> colvars: ------------------------------------------------------------
>> ----------
>> colvars: Updating NAMD interface:
>> colvars: updating atomic data (24 atoms).
>> colvars: updating group data (2 scalable groups, 2 atoms in total).
>> colvars: Updating NAMD interface:
>> colvars: updating atomic data (24 atoms).
>> colvars: updating group data (2 scalable groups, 2 atoms in total).
>> colvars: Re-initialized atom group length:0/0. 1 atoms: total mass =
>> 14.007.
>> colvars: Re-initialized atom group length:0/1. 1 atoms: total mass =
>> 12.011.
>> colvars: Re-initialized atom group alpha:0/0. 0 atoms: total mass = 1.
>> colvars: Re-initialized atom group alpha:0/1. 0 atoms: total mass = 1.
>> colvars: Re-initialized atom group alpha:0/2. 0 atoms: total mass =
>> 12.011.
>> colvars: Re-initialized atom group alpha:0/3. 0 atoms: total mass = 1.
>> colvars: Re-initialized atom group alpha:0/4. 0 atoms: total mass = 1.
>> colvars: Re-initialized atom group alpha:0/5. 0 atoms: total mass = 1.
>> colvars: Re-initialized atom group alpha:0/6. 0 atoms: total mass = 1.
>> colvars: Re-initialized atom group alpha:0/7. 0 atoms: total mass = 1.
>> colvars: Re-initialized atom group alpha:0/8. 0 atoms: total mass = 1.
>> colvars: Re-initialized atom group alpha:0/9. 0 atoms: total mass = 1.
>> colvars: Re-initialized atom group alpha:0/10. 0 atoms: total mass = 1--001a114440242a980a054341ede8--

This archive was generated by hypermail 2.1.6 : Sun Dec 31 2017 - 23:20:52 CST