Author Topic: Applying conventional CNA  (Read 53 times)

FirstTimeUser

  • Newbie
  • *
  • Posts: 2
Applying conventional CNA
« on: November 15, 2017, 04:47:19 AM »
I successfully can load LAMMPS 3D time dependent trajectories from a series of txt files and can create movies of this. The units of my LAMMPS files are in SI and my box lengths are roughly 7e-6 meters, i.e. 7 microns, to a side. Particles within my simulation are 100e-9 meters in radius and I want to color them according to their coordination number, which changes over the course of the simulation.

When I add the common neighbor analysis modification and select conventional CNA with a fixed cut off, I cannot specify a cut off radius that does not throw the following error:
Invalid input data: Simulation cell is degenerate.

To clarify, I attempted the following values and still obtain the error message above:
220e-10, 220e-9, 220e-6, 1 to 10 by increments of 0.1, 10 to 1000 by increments of 10, and other random guesses to no avail. There absolutely is ordering within my system, especially at the beginning of my simulations. However, for all the values listed above, Ovito only returns Invalid input data: Simulation cell is degenerate. Lastly, I know Ovito can be used to identify ordering with these exact simulation sets, as I am trying to reproduce some results.

Am I misunderstanding something about CNA? Should I post-process my LAMMPS dump files to artificially change the units, e.g. to nanometers? I welcome any ideas or input.

Thanks for you help!

Alexander Stukowski

  • Administrator
  • Full Member
  • *****
  • Posts: 221
Re: Applying conventional CNA
« Reply #1 on: November 15, 2017, 07:51:48 AM »
OVITO has originally been designed for simulation datasets with typical inter-particle distances on the order of 1 unit of length, because most molecular dynamics simulations use Angstroms as units. The neighbor list builder in OVITO refuses your dataset, because its internal threshold for the box volume is set too large. A box with volume ~1e-15 m^3 is currently considered degenerate. The cutoff radius parameter has no influence on this as the volume threshold is hardcoded.

I will see if I can make changes to the source code to better prepare OVITO for simulations that use SI units. Other analysis and visualization functions of OVITO might suffer from similar limitations at the moment. Perhaps you have a typical simulation data file for me as a test case.

For the time being you should be able to work around the problem by rescaling the dataset. You can do this within OVITO by applying the Affine Transformation modifier. Set the three diagonal elements of the matrix to 1e6 or so to scale up the entire box and its contents.

After that, the CNA analysis modifier should work. BTW: If you just want to color particles according to their coordination numbers, you can do so using the Coordination Analysis modifier followed by a Color Coding modifier. The CNA modifier is more appropriate though if you want to detect structural order in your system, like you said.

FirstTimeUser

  • Newbie
  • *
  • Posts: 2
Re: Applying conventional CNA
« Reply #2 on: November 16, 2017, 12:28:44 AM »
Thanks for the quick reply. Your suggestions were helpful. My quick and easy fix was to find and replace all box dimension values with "e-6" by "e+3" and then I could load everything easily. Affine Transformation also worked. CNA works perfectly now. Although you're welcome to update Ovito accordingly using the attached example dump file, I think the workaround is so easy (and my type of simulations so uncommon) that it might not be worth your time to change source code.

Thanks again!