Author Topic: Dislocations vary between DXA Analysis in-program and exported CA File  (Read 81 times)

chs210

  • Newbie
  • *
  • Posts: 2
Hello,

I've recently attempted to analyze dislocation in a single-crystal using DXA. First, I was simply concerned with total segments and total length as shown in the right panel under DXA after the algorithm runs. Then, I subsequently decided to export this information for further analysis via a Crystal Analysis file. Upon investigation, for a single file/timestep, the total segment # (and therefore total length of dislocations) differs between what OVITO/DXA plans in-program (right panel, Dislocation Analysis) and what is exported to the CA File. The difference is small (4 segments) but different nonetheless. More specifically, the CA file shows fewer dislocations than what is presented in Ovito.

Is there any obvious reason for this difference that I'm neglecting? I can provide the CA file if needed, but the dump file itself is too large to share.

Thanks!

Chris

Alexander Stukowski

  • Administrator
  • Hero Member
  • *****
  • Posts: 533
Re: Dislocations vary between DXA Analysis in-program and exported CA File
« Reply #1 on: December 18, 2018, 08:48:14 AM »
Hi Chris,

It may be that these differences are actually due to the DXA producing non-deterministic results in general (i.e. it's not related to the CA file export). This has been an older problem (which I thought was solved up until now): When you re-run the DXA analysis on the same input data, the resulting dislocation network may slightly vary. I just tested this with Ovito 3.0.0-dev on my Mac. You can manually force a recalculation of the DXA results by refreshing the input data from the external simulation file (see here). Every time I do this, the resulting dislocation lines slightly change (and with them the reported line lengths).

The reason for this behavior doesn't lie in the DXA itself (I made sure it is deterministic) but rather in the Geogram library that is used by the DXA to compute the Delaunay tessellation of the atomistic system. The Delaunay routine randomly shuffles the input atoms, affecting all subsequent steps of the DXA algorithm.

Several years ago I developed a workaround for this issue, and back then I had confirmed that DXA delivers stable, deterministic results. I'm not sure why this has recently changed. Perhaps I had checked it only under Linux but not macOS. Which platform do you work on?

Incidentally, I am currently working on replacing the Geogram library with a newer version (in order to support >200M atoms, which currently blow up DXA). As part of this, I will investigate this problem again and hopefully provide a solution soon. I'll let you know.

-Alex

chs210

  • Newbie
  • *
  • Posts: 2
Re: Dislocations vary between DXA Analysis in-program and exported CA File
« Reply #2 on: December 18, 2018, 02:05:37 PM »
Hi Alex -

Thank you for the thorough explanation - that makes a lot of sense once I think about it. I'm currently using v2.9 on a local windows machine. Sure enough, when refreshing the input file, I do see a change in the distribution and number of dislocations. It's small and not enough for concern based on your explanation.

Thanks again for looking into this!

Chris

Alexander Stukowski

  • Administrator
  • Hero Member
  • *****
  • Posts: 533
Re: Dislocations vary between DXA Analysis in-program and exported CA File
« Reply #3 on: December 18, 2018, 02:18:44 PM »
I've just put Ovito version 3.0.0-dev322 online. It comes with a newer version of the Geogram library (now supporting >100 million atoms) and a new patch for that library that should give fully deterministic behavior.