[gmx-users] pull_pbcatom reporting strangely when set to 0
chris.neale at utoronto.ca
chris.neale at utoronto.ca
Mon Jun 21 18:49:47 CEST 2010
You're right, although I did not realize this at first. I got confused
(again) by the global numbering. Regarding the off-by-one numbering, I
can figure out what is meant there and that was not really my question.
Thanks Berk, and sorry for the confusion.
Chris.
> I coded this and I looked at the code again.
> pbcatom is always the global, system wide atom number.
> But it seems that mdrun forgets to add one to the atom number
> or maybe this is part of the mdrun output scheme of starting numbering at 0.
> We would have to check this.
>
> As far as I can see that is consistent with your results, right?
>
> Berk
-- previous message --
> Date: Sun, 20 Jun 2010 18:54:13 -0400
> From: chris.neale at utoronto.ca
> To: gmx-users at gromacs.org
> Subject: [gmx-users] pull_pbcatom reporting strangely when set to 0
>
> Dear gromacs users:
>
> I am confused (again) about pull_pbcatom0. From this analysis, I am
> questioning if the pbcatom reported from grompp and in the top of
> the .log file is numerically defined *within* a group or in the
> context of the entire .gro file.
>
> Either way, I think that I have conclusively shown below that
> setting pull_pbcatomN to 0 is not reported properly. My hunch is
> that it is just a reporting problem and is working alright. For the
> reporting by grompp and at the beginning of mdrun, I think that the
> pbcatom is defined *within* a group, but that the selection of the
> pbcatom when setting pbcatom=0 is incorrect (sometimes drastically).
>
> I'm posting to the mailing list in the hopes that somebody can
> simply take a look at the relevant code and see where the problem is.
>
> Here, I have a .gro file that has protein, then lipid, then water. I
> have the lipid as pull group 0 and the protein as pull group 1.
> The protein has 14 atoms and the lipid group has 3456 atoms.
>
> These tests have all been run with 4.0.7 (and also 4.0.5 gives
> identical results).
>
> If I specify pull_pbcatom0=10 in my .mdp, then:
>
> grompp says:
> Pull group natoms pbc atom distance at start reference at t=0
> 0 3456 10
> 1 14 7 -0.000 0.000 -0.001 0.000 0.000 0.000
>
> and the .log file says:
> pull_group 0:
> atom (3456):
> atom[0,...,3455] = {14,...,3469}
> weight: not available
> pbcatom = 9
>
> This makes me think that at this stage the pull_pbcatom0 is defined
> within the group such that the accessible numebrs are [0,...,3455]
> -- If this was not the case, then pbcatom0 should be reported as
> 9+14 protein atoms = 25.
>
> ####################################################################################
> Ok, so now I define pull_pbcatom0=0 in my .mdp, then:
>
> grompp says:
> Pull group natoms pbc atom distance at start reference at t=0
> 0 3456 1742
> 1 14 7 -0.000 0.000 -0.001 0.000 0.000 0.000
>
> and the .log file says:
> pull_group 0:
> atom (3456):
> atom[0,...,3455] = {14,...,3469}
> weight: not available
> pbcatom = 1741
>
> Which surprised me because 3456/2=1728 and 1728 -1 (use zero as
> first #) +14 (protein atoms) = 1741
>
> However, this suggests that at this stage the pull_pbcatom0 is
> defined in the context of the entire .gro file, not only within the
> group. This contradicts what I saw above.
>
> ####################################################################################
> Next, I added a second protein (there are now 28 atoms of protein
> before the lipid coordinates start) and left pull_pbcatom0=0, now:
>
> grompp says:
> Pull group natoms pbc atom distance at start reference at t=0
> 0 3456 1756
> 1 28 14 -0.000 0.000 -0.001 0.000 0.000 0.000
>
> and the .log file says:
> pull_group 0:
> atom (3456):
> atom[0,...,3455] = {28,...,3483}
> weight: not available
> pbcatom = 1755
>
> Where 1755 = 1741+14 so again it looks as if the pull_pbcatom0 is
> defined (or at least decided) in the context of the entire .gro file.
>
> ####################################################################################
> ####################################################################################
> ####################################################################################
> Now I reverse the order of the protein and the lipid, with only one
> copy of the protein again.
> Here, I specify pull_pbcatom0=10 (pull group 0 remains the lipid):
>
> grompp says:
> Pull group natoms pbc atom distance at start reference at t=0
> 0 3456 10
> 1 14 3463 -0.000 0.000 -0.001 0.000 0.000 0.000
>
> and the .log file says:
> pull_group 0:
> atom (3456):
> atom[0,...,3455] = {0,...,3455}
> weight: not available
> pbcatom = 9
>
> ####################################################################################
> Now I specify pull_pbcatom0=0
>
> grompp says:
> Pull group natoms pbc atom distance at start reference at t=0
> 0 3456 1728
> 1 14 3463 -0.000 0.000 -0.001 0.000 0.000 0.000
>
> and the .log file says:
> pull_group 0:
> atom (3456):
> atom[0,...,3455] = {0,...,3455}
> weight: not available
> pbcatom = 1727
> ...
> pull_group 1:
> atom (14):
> atom[0,...,13] = {3456,...,3469}
> weight: not available
> pbcatom = 3462
>
> And from these last 2 I conclude that pull_pbcatom0 had better be
> defined in the context of the entire file, or else the 14 atom
> peptide having a pull_pbcatom of 3463 is going to be a real problem.
>
> #####################################################################################
>
> To test that, I removed all of the water so that the protein pbcatom
> would go out of bounds if it was really #3462 as defined within the
> group:
>
> gromp says (the exact same as before):
> Pull group natoms pbc atom distance at start reference at t=0
> 0 3456 1728
> 1 14 3463 -0.000 0.000 -0.001 0.000 0.000 0.000
>
> and the .log file says:
> pull_group 0:
> atom (3456):
> atom[0,...,3455] = {0,...,3455}
> weight: not available
> pbcatom = 1727
> pull_group 1:
> atom (14):
> atom[0,...,13] = {3456,...,3469}
> weight: not available
> pbcatom = 3462
>
> And it appears to be stable over 1000 steps of MD, so perhaps it's
> not going out of bounds.
>
> Thank you very much,
> Chris.
More information about the gromacs.org_gmx-users
mailing list