ERROR on proc 0: Out of range atoms - cannot compute PPPM (../pppm.cpp:1937)

Hi there,

I am a new LAMMPS user and I’m trying to simulate a very simple system at the start (40 glycerol monooleate molecules (it’s a surfactant) and 360 n-heptane molecules).

I have been repeatedly getting the following error during my NPT simulation:

ERROR on proc 0: Out of range atoms - cannot compute PPPM (…/pppm.cpp:1937).

Simulation crashes at this point (always during NPT) and atoms “clump together”.

Any advice and input will be greatly appreciated!

Please find below my input files for two different simulations:

simulation 1: NVE and then NPT

units real
dimension 3
boundary p p p
atom_style full

pair_style lj/cut/coul/long 12.0
pair_modify mix geometric tail yes
bond_style harmonic
angle_style harmonic
kspace_style pppm 0.00001
dihedral_style opls
special_bonds lj/coul 0 0 0.5

read_data gmo10.in

neighbor 2.0 bin
neigh_modify delay 0 every 1 check yes

#NVE (RELAXING THE SYSTEM)

fix 1 all nve
timestep 0.1
velocity all create 298.15 126469147 mom yes rot yes dist gaussian
thermo_style custom step temp etotal press lx ly lz vol
thermo 1000
thermo_modify flush yes

log log.10gmo_nve
dump 1 all custom 1000 10gmo_nve.lammpstrj id type x y z vx vy vz fz fy fz
dump_modify 1 sort id
run 200000

minimize 1.0e-4 1.0e-6 1000 10000
write_restart restart.10gmo_nve

unfix 1
undump 1

#NPT (SHRINKING THE BOX)

fix 2 all npt temp 298.0 298.0 60 iso 1.0 1.0 600
timestep 0.6

thermo_style custom step temp epair emol evdwl ecoul elong etotal press lx ly lz vol
thermo 500
thermo_modify flush yes

log log.10gmo_npt
dump 2 all custom 5000 10gmo_npt.lammpstrj id type x y z vx vy vz
dump_modify 2 sort id

run 5000000

write_restart restart.10gmo_npt

unfix 2
undump 2

simulation 2: NVT at 373 K, NVT at 298 K, NPT at 298 K and 1 atm.

units real
dimension 3
boundary p p p
atom_style full

pair_style lj/cut/coul/long 12.0
pair_modify mix geometric tail yes
bond_style harmonic
angle_style harmonic
kspace_style pppm 0.00001
dihedral_style opls
special_bonds lj/coul 0 0 0.5

read_data gmo10.in

neighbor 2.0 bin
neigh_modify delay 0 every 1 check yes

#NVT (equilibration at 373 K)

fix 1 all nvt temp 373.15 373.15 100
timestep 1.0

thermo_style custom step temp epair emol evdwl ecoul elong etotal press lx ly lz vol
thermo 1000
thermo_modify flush yes

log log.10gmo_nvt_373

restart 1000 *.10gmo_nvt_373
dump 1 all custom 500 10gmo_nvt_373.lammpstrj id type x y z vx vy vz
dump_modify 1 sort id
run 50000

write_restart restart.10gmo_nvt_373

unfix 1
undump 1

#NVT (equilibration at 298 K)

fix 2 all nvt temp 298.15 298.15 100
timestep 1.0

thermo_style custom step temp epair emol evdwl ecoul elong etotal press lx ly lz vol
thermo 1000
thermo_modify flush yes

log log.10gmo_nvt_298

restart 1000 *.10gmo_nvt_298
dump 2 all custom 500 10gmo_nvt_298.lammpstrj id type x y z vx vy vz
dump_modify 2 sort id
run 250000

write_restart restart.10gmo_nvt_298

unfix 2
undump 2

#NPT (real conditions)

fix 3 all npt temp 298.0 298.0 100 iso 1.0 1.0 1000
timestep 1.0

thermo_style custom step temp epair emol evdwl ecoul elong etotal press lx ly lz vol
thermo 500
thermo_modify flush yes

log log.10gmo_npt
restart 100000 *.10gmo_npt
dump 3 all custom 5000 10gmo_npt.lammpstrj id type x y z vx vy vz
dump_modify 3 sort id

run 15000000

write_restart restart.10gmo_npt

unfix 3
undump 3

Best wishes,

Joanna