DXA bond mapping


Is it possible to obtain the bond mapping from the defect-free ideal lattice to the dislocated lattice (as shown in the DXA documentation screenshot below), which is part of the DXA algorithm, from the OVITO python API?

I looked into the CNA modifier, and didn’t find an option to output the bond mapping. Maybe I missed something.

If that’s not possible, could you please point me to other existing python packages that can achieve this?


Dear Peiwen,

No, the Delaunay tessellation computed by DXA and the information the algorithm assigns to the tessellation edges are not accessible from Python. This is all work data that gets discarded at the end of the computation.

What would you do with it if there was a way to access this information?

On the Python side, there is a currently undocumented way to obtain similar information. The class ovito.data.PTMNeighborFinder allows you to take advantage of results from the PTM modifier to assign each nearest neighbor of a crystalline atom to a crystal lattice direction. Maybe this is something you can use. The mentioned class PTMNeighborFinder was employed in the development of the ILDA code to perform a mapping of Burgers circuit steps to the perfect crystal lattice.

Thanks for the info on the PTM modifier. The reason I asked was that I want to create some custom figures to explain how DXA works.

By the way, are the tutorial links in this old DXA website below expired or do I need an OVITO pro license to see them?

The figures in your screenshot above are illustrations I’ve created for a paper, which presents an approach slightly different from the DXA method implemented in OVITO.

They are 2D illustrations created with Python and the matplotlib package. You can find the collection of scripts here, but they were never meant for public use, nor any other purpose than creating the figures for my paper.

The web page you’ve mentioned is completely outdated and exists only for historical reasons. It’s not related to OVITO in any way - despite being hosted on the same server. I’ve created this page in 2010 to publish an early version of the DXA method - a predecessor of the code that is now found in OVITO. The tutorials mentioned on the page do not exists anymore. They got lost forever, unfortunately, when I reorganized the web server to set up the new homepage for OVITO in 2015 or so.