I am trying to run a ReaxFF simulation for lignin and ozone in the water system. I am using ReaxFF potential from here, which I believe is good for me. I noticed that few bonds are stretched to unrealistic lengths without breaking, and a couple of atoms get very close without forming a bond. I am not able to understand why bond formation and breakage are not taking place. Moreover, during simulation, bonds from water molecules are running across the box, which I suppose is because of PBC. I use Ovito for visualization and followed the same procedure mentioned in the website i.e., 1) Load data file; 2) Load trajectory (dump file); 3) Again load trajectory (bond file). The bond file was obtained from the command: fix 4 all reaxff/bonds 5 bonds.reaxff.lignin+ozone+water
Can anyone help me fix this issue and improve the visualization?
Could you please describe some more how you dump the atomic trajectories in LAMMPS? Do you include the atom IDs in the trajectory dump file(s) that you write?
And how do you import the atomic trajectories in OVITO? Are you using a second Load Trajectory modifier for this? If so, did you place it before or after the Load Trajectory modifier for loading the bond information in the pipeline?
Hi Alex,
Thank you for your reply.
So I use the following commands to obtain the dump file and bond file:
dump 1 all atom 10 dump.reaxff.lignin+ozone+water
fix 4 all reaxff/bonds 5 bonds.reaxff.lignin+ozone+water
And the process by which I upload it in Ovito is:
Uploading data file first
Using Load Trajectory to upload the dump file.
Using one more Load Trajectory to upload the bond file.
The process mentioned above is mentioned on the Ovito website.
This work for a simple system like methane in an empty box but in a system with the extended movement of atoms, the problem of bond stretching occurs.
Hi Yuvam,
It sounds correct what you are doing. Hard to tell for me in this case what is going wrong. I should take a first-hand look at it. Do you think you can share the simulation with me (LAMMPS input script + all necessary input data files)? Then I will try to recreate the situation you describe and can investigate what is happening.
Thanks. But I am having trouble downloading the file in.lignin+ozone+water. For some reason the MatSci forum says that it is private or does not exist. Could you please upload it again - perhaps under a different filename?
Your LAMMPS script has the following structure (leaving out the irrelevant parts):
fix 4 all reaxff/bonds 5 bonds.reaxff.lignin+ozone+water
minimize 1.0e-5 1.0e-7 10000 100000
dump 1 all atom 10 dump.reaxff.lignin+ozone+water
run 1000
Notice how fix reaxff/bonds starts writing snapshots at intervals of 5 steps already during the initial minimization, whereas the dump command starts writing after the minimization at intervals of 10 timesteps. That means the sequence of bond snapshots and the sequence of atomic trajectory snapshots will be out of sync from the beginning and will further diverge during the course of the MD simulation.
OVITO doesn’t use the LAMMPS timestep information as a common time basis. It rather assumes that all input files loaded via the Load Trajectory modifier contain simulation snapshots taken at the exact same times. This should explain why the bonds you see in OVITO do not really fit to the atomic positions.
Please check yourself if you obtain correct results once you align the output timesteps of the fix reaxff/bonds and dump commands.
Hi Alex,
Thank you very much for pointing it out.
I ran the simulation again and used the same interval for both bonds and dump this time i.e., 10 for both. But the issue is still there. Bonds are getting stretched without breaking and long bonds are getting reflected too across the box.
Is there something else that is causing it?