[gmx-users] tabulated potential energy=nan for r=0 nm and charged atoms
chris.neale at utoronto.ca
chris.neale at utoronto.ca
Sun May 8 01:22:48 CEST 2011
Dear Users:
I am trying to work with tabulated potentials for the first time. I
would like to allow 2 charges to be at the same spot. Imagine taking a
sodium and chloride ion and removing the LJ entirely and I want the
system to evaluate energies correctly and be stable during the
simulation. It was my intention to add a sort-of soft-core to the
charge-charge interactions at very close distances so that the system
did not crash. However, my testing didn't even get that far. I find
that the Coulomb(SR) energy = nan even when using tables that suggest
it should be zero.
I suppose that there is some other place in the code where this
problem develops?
While looking at share/gromacs/top/table6-12.xvg it seems that this
should not lead to energies of nan, but it does.
$ head share/gromacs/top/table6-9.xvg
#
# Table AB1: ndisp=6 nrep=9
#
0.0000000000e+00 0.0000000000e+00 0.0000000000e+00
0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00
2.0000000000e-03 0.0000000000e+00 0.0000000000e+00
0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00
4.0000000000e-03 0.0000000000e+00 0.0000000000e+00
0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00
6.0000000000e-03 0.0000000000e+00 0.0000000000e+00
0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00
8.0000000000e-03 0.0000000000e+00 0.0000000000e+00
0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00
1.0000000000e-02 0.0000000000e+00 0.0000000000e+00
0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00
1.2000000000e-02 0.0000000000e+00 0.0000000000e+00
0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00
and therefore, according to manual 4.5.4 page 151 equation 6.23, the
[(qi*qj)/(4*pi*epsilon)]*f(rij) coulomb SR value should equal zero. I
tried a few things, like modifying the values so that they are
constant from 0 to 0.04 nm in the table.xvg file, but this did not help.
#################### here is the .top file that I used along with
ffoplsaa to test out this idea:
#include "ffoplsaa.itp"
#include "na.itp"
[ system ]
; name
tables
[ molecules ]
; name number
MOL_A 1
MOL_B 1
#################### and here is the .itp file that I used along with
ffoplsaa to test out this idea:
[ atomtypes ]
aaa AA 8 15.99940 0.0 A 0.00000 0.00000
[ moleculetype ]
; molname nrexcl
MOL_A 1
[ atoms ]
; id at type res nr residu name at name cg nr charge
1 aaa 1 MLA AA 1 1.0
[ moleculetype ]
; molname nrexcl
MOL_B 1
[ atoms ]
; id at type res nr residu name at name cg nr charge
1 aaa 1 MLB BB 1 -1.0
#################### And the .gro file:
title
2
1MLA AA 1 0.000 0.000 0.000
1MLB BB 1 0.000 0.000 0.000
5.00000 5.00000 5.00000
################### And my .mdp file is
nsteps = 0
ns_type = grid
rlist = 1
rcoulomb = 1
rvdw = 1
coulombtype = user
tc_grps = System
tau_t = 1.0
ld_seed = -1
ref_t = 300
gen_temp = 300
gen_vel = yes
unconstrained_start = no
gen_seed = -1
Pcoupl = berendsen
pcoupltype = isotropic
tau_p = 4
compressibility = 4.5e-5
ref_p = 1.0
############################################################################
Still, when I run a 0-step mdrun (mdrun -deffnm md1 -table
mod2.table.xvg), I get:
Energies (kJ/mol)
LJ (SR) Coulomb (SR) Potential Kinetic En. Total Energy
0.00000e+00 nan nan nan nan
Temperature Pressure (bar)
nan nan
# I get the same thing if the two charges are like or dislike...
But if I then modity my topologies to turn the +1 charge to zero, I
get sensible output:
LJ (SR) Coulomb (SR) Potential Kinetic En. Total Energy
0.00000e+00 0.00000e+00 0.00000e+00 5.27174e+00 5.27174e+00
Temperature Pressure (bar)
4.22694e+02 4.66876e-01
Also, if I leave the charges on and separate the two ions by 0.001 nm,
I also don't get the nan values.
Energies (kJ/mol)
LJ (SR) Coulomb (SR) Potential Kinetic En. Total Energy
0.00000e+00 0.00000e+00 0.00000e+00 6.64240e-01 6.64240e-01
Temperature Pressure (bar)
5.32595e+01 5.88265e-02
Thank you for your assistance,
Chris.
More information about the gromacs.org_gmx-users
mailing list