[gmx-users] gromacs energies very different from other MD engine for the very same system and conditions
Berk Hess
gmx3 at hotmail.com
Tue Jul 27 16:56:49 CEST 2010
Hi,
The kinetic energy is non-zero because Gromacs uses a leap frog integrator and the kinetic energy
at t=0 is the average of the kinetic energies at -dt/2 and +dt/2 (as described in the manual).
Eric Sorin did comparisons between Amber and Gromacs (uses his Amber force field port in Gromacs)
and found differences only of the size of roughly the machine precision. So I don't think there is an issue
in Gromacs. But I have no experience with the route you took.
Berk
> Date: Tue, 27 Jul 2010 10:43:30 -0400
> From: chris.neale at utoronto.ca
> To: gmx-users at gromacs.org
> Subject: [gmx-users] gromacs energies very different from other MD engine for the very same system and conditions
>
> Dear Alan:
>
> I don't have a solution for you, but I do have a simpler test case: a
> single spc water molecule. I have not addressed your noted energy
> difference between programs because I am not familiar with them
> (although you should try gromacs compiled in double precision).
>
> I can reproduce the non-zero kinetic energy with a single spc water,
> as long as I add define=-DFLEXIBLE to the .mdp file. The output .gro
> contains all zeroes for velocities (as long as the input .gro does not
> contain any velocities!):
>
> title
> 3
> 1SOL OW 1 0.230 0.628 0.113 0.0000 0.0000 0.0000
> 1SOL HW1 2 0.137 0.626 0.150 0.0000 0.0000 0.0000
> 1SOL HW2 3 0.231 0.589 0.021 0.0000 0.0000 0.0000
> 10.00000 10.00000 10.00000
>
> but the run indicates a non-zero kinetic energy (log and .edr file, gromacs
> 4.0.5 and 3.3.3).
>
> The reported kinetic energy is small though, 1.16470e-03, with a
> reported temperature of 9.33871e-02.
>
> I added unconstrainted_start=yes to your .mdp file but that did not help.
>
> I tried in double precision, and I get the same reported kinetic
> energy (1.16473e-03)
>
> Chris.
>
> -- original message --
>
> Hi there,
>
> I have a very simple case of a tri alanine (AAA). You can use tleap from
> ambertools to create such peptide and save the pdb and amber's parameters.
>
> Then I do a single point calculation to get the potential energy. I am using
> mdin (amber input file) like:
>
> cat << EOF >| mdin
> Single point
> &cntrl
> imin=0, maxcyc=0,
> ntmin=2,
> ntb=0,
> igb=0,
> cut=999,
> /
> EOF
>
> Then I test the same input parameters with Namd2, using namd.conf (Amber is
> not freely available, but AmberTools and Namd are):
>
> cat << EOF >| AAAamb_namd.conf
> outputEnergies 1 # Energy output frequency
> DCDfreq 1 # Trajectory file frequency
> timestep 2 # in unit of fs
> temperature 300 # Initial temp for velocity assignment
> cutoff 999
> switching off # Turn off the switching functions
> PME off # Use PME for electrostatic calculation
> amber on # Specify this is AMBER force field
> parmfile AAAamb.prmtop # Input PARM file
> ambercoor AAAamb.inpcrd # Input coordinate file
> outputname AAAamb # Prefix of output files
> exclude scaled1-4
> 1-4scaling 0.833333 # =1/1.2, default is 1.0
> minimize 0
> EOF
>
> I have only a 0.001 kcal/mol absolute diff (or relative 0.0037%) for the
> Elec term, everything else is absolutely the same.
>
> Then comes gromacs. I convert my prmtop and inpcrd to gromacs top and gro
> with either acpype or amb2gmx and then doing a single point with file:
>
> cat << EOF >| SPE.mdp
> integrator = md
> nsteps = 0
> dt = 0.001
> constraints = none
> emtol = 10.0
> emstep = 0.01
> nstcomm = 1
> ns_type = simple
> nstlist = 0
> rlist = 0
> rcoulomb = 0
> rvdw = 0
> Tcoupl = no
> Pcoupl = no
> gen_vel = no
> nstxout = 1
> pbc = no
> nstlog = 1
> nstenergy = 1
> nstvout = 1
> nstfout = 1
> nstxtcout = 1
> comm_mode = ANGULAR
> EOF
>
> I got something like:
> Energies (kJ/mol)
> Bond Angle Ryckaert-Bell. LJ-14 Coulomb-14
> 1.77662e+02 3.19281e+01 4.55707e+01 2.48926e+01 9.40060e+02
> LJ (SR) Coulomb (SR) Potential Kinetic En. Total Energy
> -9.21735e+00 -1.05005e+03 1.60848e+02 8.84934e+00 1.69697e+02
> Temperature Pressure (bar)
> 2.28887e+01 0.00000e+00
>
> First question, why I have temperature and kinetic energy? Remember, it's a
> single point energy calculation, without any sort of coupling, 0 velocities
> and and gen_vel = no.
>
> Secondly, converting gromacs energies (kJ/mol) by dividing the terms by
> 4.184 and they don't match amber/namd results. See relative diffs
> (abs(g-a)/max(abs(a),abs(g))):
>
> Bond: 5.87%
> Angle: 3.49%
> Dihe: 0.14%
> vdW: 0.52%
> Elec: 0.17%
> Pot.Tot: 5.90%
>
> I am very surprised to find this difference, in special for Bond since it's
> for this term essentially the same equation and parameters. Any ideas of
> what could be missing here?
>
> Many thanks,
>
> Alan
>
>
>
> --
> gmx-users mailing list gmx-users at gromacs.org
> http://lists.gromacs.org/mailman/listinfo/gmx-users
> Please search the archive at http://www.gromacs.org/search before posting!
> Please don't post (un)subscribe requests to the list. Use the
> www interface or send it to gmx-users-request at gromacs.org.
> Can't post? Read http://www.gromacs.org/mailing_lists/users.php
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://maillist.sys.kth.se/pipermail/gromacs.org_gmx-users/attachments/20100727/65c469a5/attachment.html>
More information about the gromacs.org_gmx-users
mailing list