Question regarding RMSD calculation with structural alignment in OVITO

Hello OVITO Developers,

I am currently analyzing a 10 ns trajectory from a LAMMPS simulation of a perovskite structure. The simulation was performed under an NPT ensemble at 600K.

My goal is to calculate the Root Mean Square Deviation (RMSD) over the course of the simulation to assess structural stability. From my experience with other tools like VMD, I understand that it’s necessary to first align each trajectory frame to a reference structure (e.g., the initial frame) to remove global translation and rotation before calculating the RMSD.

Could you please guide me on how to perform this procedure in OVITO? Specifically, I would like to know how to align my trajectory against a static reference structure for the purpose of calculating RMSD.

Any help, such as relevant Python script examples or links to tutorials in the documentation, would be greatly appreciated.

It depends a bit on how your sample and simulation are set up. OVITO offers a wide range of tools that can help you calculate the RMSD.

  • The Calculate Displacements modifier can be used to perform affine mapping of the simulation to a reference configuration, compensating for changes in the simulation cell geometry during an NPT simulation. It then calculates the displacement of particles relative to a static or dynamic reference while handling periodic boundary conditions.
  • Depending on the displacement distances in your simulation and your trajectory settings, you may need to use the Unwrap Trajectories modifier to unwrap the trajectory and obtain correct displacements over long distances.
  • Rotations of particles inside the simulation cell are more difficult to compensate for. The Align Molecule modifier might help; however, it has not been tested in combination with the Calculate Displacements modifier and is primarily intended for visualization. Depending on your needs, you may need to implement a custom Python Script modifier to account for rotations.
  • The Compute Property and Reduce Property modifiers can be used to post-process displacements into the required form.