[lammps-users] tip3p water and pppm

Hi everyone,

I am trying to simulate tip3p water with pppm using the most recent version of LAMMPS and I get

ERROR: Out of range atoms - cannot compute PPPM

If I turn off kspace and use lj/cut/coul/cut it runs fine. My input script, data file and log file follow. Any help is greatly appreciated.

Cheers,

Nick

units real
atom_style full
bond_style harmonic
angle_style charmm
pair_style lj/cut/coul/long 8.5
kspace_style pppm 0.0001

read_data h2oT25P1atmN1.data
replicate 10 10 10

fix 1 all nvt 298.3 298.3 100.0
fix 2 all shake 0.0001 10 0 b 1 a 1
velocity all create 298.3 87287 dist gaussian
timestep 2.0

neighbor 2.0 bin
neigh_modify delay 2 check yes

thermo_style multi
thermo 10
run 100

3 atoms
2 bonds
1 angles

2 atom types
1 bond types
1 angle types

0 3.10736908 xlo xhi
0 3.10736908 ylo yhi
0 3.10736908 zlo zhi

Masses

1 1.008
2 15.9994

Pair Coeffs

1 0.000 0.00000
2 0.102 3.1507

Bond Coeffs

1 450 0.9572

Angle Coeffs

1 55 104.52 0.0 0.0

Atoms

1 1 2 -0.830 0.857359 0.100000 0.100000
2 1 1 0.415 0.100000 0.100000 0.685354
3 1 1 0.415 1.613900 0.100000 0.686411

Bonds

1 1 1 2
2 1 1 3

Angles

1 1 2 1 3

LAMMPS (12 Feb 2007)
Scanning data file ...
   2 = max bonds/atom
   1 = max angles/atom
Reading data file ...
   1 by 1 by 1 processor grid
   3 atoms
   2 bonds
   1 angles
Finding 1-2 1-3 1-4 neighbors ...
   2 = max # of 1-2 neighbors
   1 = max # of 1-3 neighbors
   1 = max # of 1-4 neighbors
   2 = max # of special neighbors
Replicating atoms ...
   1 by 1 by 1 processor grid
   3000 atoms
   2000 bonds
   1000 angles
Finding 1-2 1-3 1-4 neighbors ...
   2 = max # of 1-2 neighbors
   1 = max # of 1-3 neighbors
   1 = max # of 1-4 neighbors
   2 = max # of special neighbors
Finding SHAKE clusters ...
   0 = # of size 2 clusters
   0 = # of size 3 clusters
   0 = # of size 4 clusters
   1000 = # of frozen angles
PPPM initialization ...
   G vector = 0.305444
   grid = 18 18 18
   RMS precision = 8.83059e-05
   brick FFT buffer size/proc = 15625 5832 7500
Setting up run ...
Memory usage per processor = 11.4588 Mbytes
---------------- Step 0 ----- CPU = 0.0000 (sec)

This looks like the problem with some compilers messing up
Coulomb tabling in the "long" potentials. Discussed in the
Section_start of the manual. Seems to be happening more
often. Paul - any progress on another work-around?

Steve

Nicholas, Steve,

A good alternative work-around suggested by Axel Kohlmeyer is to add the
following lines to the makefile:

NOALIAS = -fno-strict-aliasing

pair_lj_cut_coul_long.o : pair_lj_cut_coul_long.cpp
        \(CC\) (CCFLAGS) \(NOALIAS\) \-c <

pair_lj_charmm_coul_long.o : pair_lj_charmm_coul_long.cpp
        \(CC\) (CCFLAGS) \(NOALIAS\) \-c <

Paul

Thanks for the solution, but I only needed to remove the Mac G5 -fast compiler option.

Nick