[lammps-users] pair distance < table inner cutoff

Hi all,

I am getting the error “pair distance < table inner cutoff” during the first timestep of a tribology simulation using a potential table, obviously - with an inner cutoff. The simulation has under 80 atoms total, with periodic boundary conditions. The strange part is, using a debugger I have found the the atoms who are too close to one another are labeled i=48 and j=1695. The only reasoning I can find for an atom to be index 1695 is if it is a periodic image, but then they certainly shouldn’t be this close to one another. Overall, we are pretty baffled. Any tips? Thanks so much!

input file

3-d 2 metal surfaces coming in contact and then sliding

dimension 3
boundary p p p
units metal
atom_style atomic

read_data data

LJ potentials

pair_style table spline 299
pair_coeff 1 1 all_pots AlAl
pair_coeff 1 2 all_pots AlCo
pair_coeff 1 3 all_pots AlNi
pair_coeff 1 4 all_pots AdAl
pair_coeff 2 2 all_pots CoCo
pair_coeff 2 3 all_pots CoNi
pair_coeff 2 4 all_pots AdCo
pair_coeff 3 3 all_pots NiNi
pair_coeff 3 4 all_pots AdNi
pair_coeff 4 4 all_pots AdAd

define groups

group qcfix id <= 20
group qctemp id <> 21 40
group qcfree id <> 41 75
group adfix id <> 76 79

fix 1 all nve
fix 2 adfix setforce 0.0 0.0 0.0
velocity adfix set 0.0 -0.33 0.0 units box sum no
fix 3 qctemp langevin 300 300 0.01 239482 axes 0 1 0
fix 4 qcfix setforce 0.0 0.0 0.0


timestep 0.001
thermo_style custom step temp f_2[1] f_2[2] f_2[3]
thermo 100

dump 1 all custom 100 comp.trial tag type x y z fx fy fz
run 3000

undump 1

reset_timestep 0
velocity upper set 0.5 0.0 0.0
dump 3 all custom 100 slide.trial tag type x y z fx fy fz
run 50000

Can you print out the distance the code thinks the
2 atoms are apart, and their coordinates? I.e.
add a print statement before the error message
is invoked. You are using a triclinic box,
so periodic images of atoms are also shifted,
so are you sure your input config accounts for that?


Here are the coordinates and such:
i 48 x -14.830252 y 6.634883 z 6.931973
j 1695 x -15.092447 y 7.468805 z 6.935740
delx 0.262194 dely -0.833922 delz -0.003767 rsq 0.764186 tb->innersq 1.234921

The strangest part is that j=1695, when there are fewer than 100 atoms in the simulation. Perhaps it is possible that the table inner cutoff is simply too high. I would really like to make sure that this j value makes sense before proceeding.


Actually, the part I said about the inner cutoff can’t be correct, as with an even shorter time step I’ve gotten values for rsq < 0.1, which is completely unrealistic given the potential (equilibrium ~ 3 )

This output doesn't make sense to me. You said this
is for the 1st timestep, so I assume the coords will
be the same or nearly what is in the input data file.
In the data file the z extent is 0 to 48.96. None of
the 79 atoms has a z coord anywhere close to 6.9.
In fact atom 49 (i = 48) is at 6.2, 4.5, 2.9 in the data
file, but 20 Angs away in the print out below.

The number of ghosts is determined by the outer
cutoff of the table potential. Is it really long,
thus creating a large number of perioidic images?


Thanks Steve. You are completely right. We’ve been able to isolate the problem to something wrong with the potential file (ironically, the only thing I didn’t supply on this listserv - or perhaps, expectedly).