TIP4P/ice/long and initial data file

Dear lammps users,

I am attempting to simulate bulk hexagonal ice. I followed the instruction of Axel via http://lammps.sandia.gov/threads/msg69558.html to create my input script, and using the data file that Ankit provided, I was able to obtain a stable structure and reproduce ice properties.

However, I then attempted to create my own data file starting from the hexagonal unit cell. I obtained the hexagonal cell as a cif file from materials project, and modified this to be an orthorhombic cell. I then modified it such that it satisfied the requirements for a TIP4P/ice data file, making sure that in the ‘atoms’ portion, each oxygen is followed by the two hydrogens it is bonded to. The angles and bonds portion of the data file is relatively simple after doing this. Looking at the data file in OVITO, the structure is correct.

The problem is that when I attempt to use this data file and replicate it to be equivalent to Ankit’s data file, and then run my simulation, lammps gives me “ERROR on proc X:TIP4P hydrogen is missing” at the initial timestep. Looking more into this issue, it seems to be the result of an improper data file, missing a hydrogen for one or more of the oxygens, or because of bad physics/large forces causing atoms to move greatly at the beginning of the simulation. Again checking OVITO I do not find any overlapping atoms, or oxygens without two bonded hydrogens. I attempted to modify the fix shake command by increasing the iterations and/or decreasing the tolerance, but to no avail.

My only guess at this point is that it might be due to the fact that in my intial data file, the O-H bond distance is between 1.006 and 1.0085 Angstroms and the intial H-O-H angle is about 106.8 degrees. The equilibrium values in the TIP4P/ice model and used in the fix shake are 0.9572 Angstrom and 104.52 degrees. However, this difference does not seem like it could produce a large enough force to cause such an error.

So my question is: could this error be due to the fix shake algorithm giving a large extra force to snap these values to the assigned values? If so, can I modify the fix shake command to redress this, and if not, what else could be the issue?

I have attached both my input script and data file. I am using the 11Aug17 version of lammps.



in.ice (1.61 KB)

H2O.lmp (4.31 KB)