[gmx-users] gmxcheck and GROMOS96 bonds
Reid Van Lehn
rvanlehn at gmail.com
Tue Jan 8 16:56:18 CET 2013
Hi Gromacs users,
I was using gmxcheck to check a simple trajectory of surfactants, and get
many errors of the type "Distance between atoms X and Y is 0.153, should be
0.023" where the actual distance is always approximately correct and the
"correct" value is the square of the actual distance. This always occurs
for G96 type bonds, where I am defining the bonds using the macros in the
ffbonded.ff file for the gromos53a6.ff force field (e.g. gb_27 in that
example). A typical line from my topology is then:
[ bonds ]
3 4 2 gb_27
etc.
I also noticed the same errors when using gmxcheck on the output of the
energy minimization in Justin Lemkul's KALP-15 tutorial, which also uses
GROMOS96 bonds. I did not get errors for other steps in that tutorial,
presumably because the bonds are constrained using LINCs.
I am using Gromacs 4.5.5 and it appears that the relevant lines from the
source code in gmxcheck.c are:
switch (ftype) {
case F_BONDS:
case F_G96BONDS:
b0 = idef->iparams[type].harmonic.rA;
break;
case F_MORSE:
b0 = idef->iparams[type].morse.b0;
break;
case F_CUBICBONDS:
b0 = idef->iparams[type].cubic.b0;
break;
case F_CONSTR:
b0 = idef->iparams[type].constr.dA;
break;
default:
break;
}
It's not clear to me why b0 would be squared here since the switch
statement doesn't look to discriminate between function 1 and function 2
bonds (if I interpret this correctly). Do you think I have something
incorrectly defined in my topology, or does gmxcheck not correctly process
G96 bonds? Since the actual bond lengths look correct I'm not too worried
about it, but I want to resolve any errors if they do exist since right now
gmxcheck cannot really be used to find actual bonding errors. I apologize
if this is something obvious that I missed as I am a beginner in Gromacs.
Thank you and please let me know if more information is necessary to help
figure this out!
Reid
More information about the gromacs.org_gmx-users
mailing list