Re: strange behavior of ABF

From: Danilo Di Maio (danilo.dimaio_at_gmail.com)
Date: Tue Apr 14 2015 - 12:48:13 CDT

I have checked the colvars trajectory file and i found that the values oscillate very close to the starting one (with differences at the second decimal place), consistent with the fact that the ion is not moving along the z-axis.

I have also read about the wrapAround keyword in the NAMD manual. To what i understood (and i hope having understood correctly), this keyword is used (along with the keyword period) to make distanceZ colvar periodic, in a way similar to a dihedral angle. These two keywords should allow to define the amplitude of the period (period keyword) and the center of the wrapping interval (wrapAround keyword).

I assumed that i had to use the total extension of my colvar as period value and the center of this extension as wrapAround value. Since the total length of my colvar is 110 Ang and it spans +62.5 to -47.5 from the reference point (i.e. the central point should be 7.5), i used

period 110
wrapAround 7.5

I also tried to run a simulation specifying only the keyword period leaving wrapAround to its default value.

However, both these two attempts were not able to fix the problem.

Il giorno 14/apr/2015, alle ore 14:06, Jérôme Hénin <jerome.henin_at_ibpc.fr> ha scritto:

> Dear Danilo,
>
> I wonder if this could be a periodic boundary condition problem, and come from the wrapping of the coordinate being different from what you expect. Check the documentation of the wrapAround keyword and see if that can help you.
> Also, check the colvars trajectory file and see if the values are what you expect.
>
> Best,
> Jerome
>
> On 14 April 2015 at 12:41, Danilo Di Maio <danilo.dimaio_at_gmail.com> wrote:
> Dear NAMD community,
>
> I am studying the free energy profile for the translocation of an ion inside a protein channel, using the ABF method implemented in NAMD 2.9. I divided my reaction coordinate (distance along the z-axis) in several windows (5 Angstrom each) taking as reference point the center of mass of a stretch of residues inside the protein channel.
>
> Surprisingly, i ran into a very strange problem. All the simulations terminated successfully but I noted that for some windows, NAMD was able to produce normal .grad and .count output files (i.e. filled with values), while for other windows the .grad and .count files were completely filled with zeros in each bin. This looked very strange to me since all the input files were substantially equal (i simply duplicated several times the first one and changed only those options regarding input .coor .vel .xsc files and the boundaries of the investigated region in the colvar file). I payed attention that all the simulation options were equal among the various simulations.
>
> When I visually inspected the various trajectories, i noted that in the windows for which NAMD could produce "correct" .grad and .count output files the ion is able to move along the z-axis, while in the windows for which NAMD produced .count and .grad files filed with zeros the ion is like "constrained" to move on the XY plane only.
>
> Though, on one hand, this maybe explains why in some windows gradients and counts are everywhere zero (the ion doesn't explore regions along the z-axis), on the other hand i have really no idea about how to fix this issue, because apparently this problem is not related to differences in the input files. As a countercheck i compared the log files of the various simulations and they also looked very similar.
>
> Moreover i tried to use different versions of NAMD (2.9 and 2.9b3) obtaining the same outcome.
>
> Below i attach a NAMD input file and a colvar file used in the simulation, marking as bold those options which were different among the various windows.
>
>
> I would really appreciate if you could help me to solve this issue please.
>
> Thanks in advance
> Danilo
>
>
> abf.conf
>
> set inputname equi
> set outputname 14th_win
> set restart name 14th_win_restart
>
> paraTypeCharmm on
> parameters par_all27_prot_lipidNBFIX.prm
> parameters par_all36_lipid.prm
> structure Ca2+_PMF_autopsf.psf
> coordinates Ca2+_win14_autopsf.pdb
> bincoordinates $inputname.coor
> exclude scaled1-4
> 1-4scaling 0.833333
>
> outputname $outputname
> binaryoutput yes
> binaryrestart yes
> XSTfile $outputname.xst;
> XSTfreq 500;
>
> restartfreq 500
> outputEnergies 500
> outputTiming 500
> outputMomenta 500
> outputPressure 500
> dcdfreq 10000 ;
> DCDfile $outputname.dcd
>
> timestep 2
> firsttimestep 0
> cutoff 10
> switching on
> switchdist 8
> pairlistdist 14
> stepspercycle 10
> margin 0
>
> rigidBonds all
> rigidIterations 300
> rigidTolerance 0.00001
>
> symmetryRestraints on
> symmetryFile 5-fold-symmetry.pdb
> symmetrykFile FK_file.pdb
>
> binvelocities $inputname.vel
>
> PME yes;
> PMEInterpOrder 4
> PMEGridSpacing 1.0
> extendedSystem $inputname.xsc
>
> wrapall on
> wrapWater off
> wrapNearest off
>
> fullElectFrequency 2
> nonbondedFreq 1
>
> langevin on
> langevinDamping 5
> langevinTemp 310
> langevinHydrogen off
>
> useGroupPressure yes
> useFlexibleCell yes
> useConstantRatio yes
> langevinPiston on
> langevinPistonTarget 1.01325
> langevinPistonPeriod 200
> langevinPistonDecay 100
> langevinPistonTemp 310
>
> colvars on
> colvarsConfig abf14.in
>
> run 2500000
>
>
>
>
> abf14.in
>
>
> colvarsTrajFrequency 500
> colvarsRestartFrequency 500
>
>
> colvar {
> name Na+_XY_restraint
>
> width 0.5
>
> lowerboundary 15.0
> upperboundary 75.0
>
> lowerwallconstant 10.0
> upperwallconstant 10.0
>
> distanceXY {
> main {
> atomnumbers { 398004 398005 398006 398007 398008 398009 398010 398011 398012 398013 398014 398015 398016 398017 398018 398019 398020 398021}
> }
> ref {
> atomnumbers { 4239 9655 15071 20487 25903 }
> }
> axis ( 1.0, 1.0, 0.0 )
> }
> }
>
>
>
> colvar {
> name Translocation
>
> width 0.1
>
> lowerboundary -7.5
> upperboundary -2.5
>
> lowerwallconstant 50.0
> upperwallconstant 50.0
>
> distanceZ {
> main {
> atomnumbers { 398022 }
> }
> ref {
> atomnumbers { 4239 9655 15071 20487 25903 }
> }
> axis ( 0.0, 0.0, 1.0 )
> }
> }
>
> colvar {
> name XY_restraint
>
> width 0.5
>
> lowerboundary 0.0
> upperboundary 15.0
>
> lowerwallconstant 100.0
> upperwallconstant 100.0
>
> distanceXY {
> main {
> atomnumbers { 398022 }
> }
> ref {
> atomnumbers { 4239 9655 15071 20487 25903 }
> }
> axis ( 1.0, 1.0, 0.0 )
> }
> }
>
>
> abf {
> colvars Translocation
> fullSamples 800
> historyFreq 250
> }
>

This archive was generated by hypermail 2.1.6 : Thu Dec 31 2015 - 23:21:47 CST