Hello,
I’m attempting to calculate the potential energy between adsorbed water molecules and a zeolite framework obtained from GCMC simulation (I used GOMC to generate the coordinates, not LAMMPS) using the rerun functionality in LAMMPS so I can omit the framework-framework and water-water interactions. The ultimate goal is to calculate the heat of adsorption at a given temperature and pressure.
I’ve gotten the calculation up and running and added in a dynamic variable to keep track of the water oxygen atoms. I also included the thermo variable “atoms” in my thermo_style for good measure. To my dismay both of these return a constant number of atoms that reflects the atom count in the first frame of the trajectory. But the potential energy does seem to be different for each frame. Is the calculation carrying on correctly but the atom count just isn’t updating?
To initialize the system I generated a data file from the first frame of the trajectory. Additionally, I’m aware that due to the long range electrostatic interactions I need to run additional separate calculations to remove the water-water and zeolite-zeolite contributions.
Below is my input and the corresponding log file showing the constant atom count. I’m using version LAMMPS (27 Oct 2021).
Input
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
units real
atom_style full
#bond_style harmonic
#angle_style harmonic
pair_style lj/cut/coul/long 12.0 12.0
pair_modify tail yes
kspace_style ewald 0.000001
boundary p p p
read_data bea_a-silica-tip5pe-water-25C-7240Pa.data
mass 1 15.999 # O TIP5P-E Water
mass 2 1.0078 # H TIP5P-E Water
mass 3 1e-30 # M TIP5P-E Water
mass 47 1.0 # Placeholders
mass 8 15.999 # O Zeo
mass 913 1.0 # Placeholders
mass 14 28.09 # Si Zeo
#pair_coeff 1 1 0.16 3.12 # O TIP5P-E Water
pair_coeff 1 1 0.0 0.0 # O-O TIP5P-E Water
pair_coeff 1 2 0.0 0.0 # O-H TIP5P-E Water
pair_coeff 1 3 0.0 0.0 # O-M TIP5P-E Water
pair_coeff 2 2 0.0 0.0 # H TIP5P-E Water
pair_coeff 2 3 0.0 0.0 # H-M TIP5P-E Water
pair_coeff 3 3 0.0 0.0 # M TIP5P-E Water
pair_coeff 1 8 0.1283745 3.0655 # O Water - O Zeo
pair_coeff 2 8 0.0 0.0 # H Water - O Zeo
pair_coeff 3 8 0.0 0.0 # M Water - O Zeo
pair_coeff 1 14 0.1011929 3.045 # O Water - Si Zeo
pair_coeff 2 14 0.0 0.0 # H Water - Si Zeo
pair_coeff 3 14 0.0 0.0 # M Water - Si Zeo
pair_coeff 4 4 0.0 0.0 # Necessary placeholders
pair_coeff 5 5 0.0 0.0 # Necessary placeholders
pair_coeff 6 6 0.0 0.0 # Necessary placeholders
pair_coeff 7 7 0.0 0.0 # Necessary placeholders
pair_coeff 8 8 0.0 0.0 # O Zeo
pair_coeff 8 14 0.0 0.0 # O Zeo - Si Zeo
pair_coeff 9 9 0.0 0.0 # Necessary placeholders
pair_coeff 10 10 0.0 0.0 # Necessary placeholders
pair_coeff 11 11 0.0 0.0 # Necessary placeholders
pair_coeff 12 12 0.0 0.0 # Necessary placeholders
pair_coeff 13 13 0.0 0.0 # Necessary placeholders
pair_coeff 14 14 0.0 0.0 # Si Zeo
group framework type 8 14
group water type 1 2 3
neigh_modify every 1 delay 0 check yes page 10000 one 1000
thermo 1
set type 1 charge 0.0 # O TIP5P-E Water
set type 2 charge 0.241 # H TIP5P-E Water
set type 3 charge -0.241 # M TIP5P-E Water
set type 47 charge 0.0 # Placeholders
set type 8 charge -0.7065 # O Zeo
set type 913 charge 0.0 # Placeholders
set type 14 charge 1.413 # Si Zeo
variable water_O atom “type==1”
group water_O dynamic all every 1 var water_O
variable nOw equal count(water_O)
thermo_style custom step pe atoms v_nOw
variable PE_mol equal pe
fix avg2 all ave/time 1 1 1 v_PE_mol file thermo-props-rerun-all-charges.dat
rerun bea_a-silica-tip5pe-water-25C-7240Pa.lammpstrj first 0 dump x y z box yes
Log
#~~~~~~~~~~~~~~~~~~~~~~~~~~
LAMMPS (27 Oct 2021)
OMP_NUM_THREADS environment is not set. Defaulting to 1 thread. (src/comm.cpp:98)
using 1 OpenMP thread(s) per MPI task
Reading data file …
orthogonal box = (0.0000000 0.0000000 0.0000000) to (37.983000 37.983000 52.812000)
1 by 1 by 1 MPI processor grid
reading atoms …
3491 atoms
Finding 1-2 1-3 1-4 neighbors …
special bond factors lj: 0 0 0
special bond factors coul: 0 0 0
0 = max # of 1-2 neighbors
0 = max # of 1-3 neighbors
0 = max # of 1-4 neighbors
1 = max # of special neighbors
special bonds CPU = 0.020 seconds
read_data CPU = 0.033 seconds
3456 atoms in group framework
35 atoms in group water
Setting atom values …
7 settings made for charge
Setting atom values …
14 settings made for charge
Setting atom values …
14 settings made for charge
Setting atom values …
0 settings made for charge
Setting atom values …
2304 settings made for charge
Setting atom values …
0 settings made for charge
Setting atom values …
1152 settings made for charge
dynamic group water_O defined
Ewald initialization …
using 12-bit tables for long-range coulomb (src/kspace.cpp:340)
G vector (1/distance) = 0.28520638
estimated absolute RMS force accuracy = 0.00040031343
estimated relative force accuracy = 1.205532e-06
KSpace vectors: actual max1d max3d = 5313 17 21437
kxmax kymax kzmax = 12 12 17
Neighbor list info …
update every 1 steps, delay 0 steps, check yes
max neighbors/atom: 1000, page size: 10000
master list distance cutoff = 14
ghost atom cutoff = 14
binsize = 7, bins = 6 6 8
1 neighbor lists, perpetual/occasional/extra = 1 0 0
(1) pair lj/cut/coul/long, perpetual
attributes: half, newton on
pair build: half/bin/newton
stencil: half/bin/3d
bin: standard
Per MPI rank memory allocation (min/avg/max) = 39.32 | 39.32 | 39.32 Mbytes
Step PotEng Atoms v_nOw
0 -522630.78 3491 7
1 -522630.33 3491 7
2 -522633.58 3491 7
3 -522631.16 3491 7
4 -522629.88 3491 7
5 -522640.83 3491 7
6 -522631.59 3491 7
7 -522633.07 3491 7
8 -522633.07 3491 7
9 -522627.94 3491 7
10 -522627.84 3491 7
11 -522627.84 3491 7
12 -522634.65 3491 7
13 -522630.27 3491 7
14 -522626.4 3491 7
15 -522632.24 3491 7
16 -522632.24 3491 7
17 -522632.24 3491 7
18 -522632.76 3491 7
19 -522632.69 3491 7
20 -522632.32 3491 7
Loop time of 4.34358 on 1 procs for 21 steps with 3491 atoms
Total wall time: 0:00:04
Any help would be appreciated!