diffsims icon indicating copy to clipboard operation
diffsims copied to clipboard

Make better use of crystallographic libraries

Open dnjohnstone opened this issue 6 years ago • 1 comments

We depend on diffpy.structure for atomic structure manipulations but perhaps currently under-utilise some of the functionality of that package.

One example is that the is_lattice_hexagonal() function in sim_utils is probably superseded by the isSpaceGroupLatPar() function in SymmetryUtilities in diffpy.

Another case is when we need dot products, angles etc - we should be using Lattice.angle, Lattice.norm etc from diffpy.structure.

This mostly requires us getting a bit more familiar with diffpy.structure and should have the advantage of making things more robust and more general moving forwards.

This may involve implementing a space group analyzer e.g. https://github.com/materialsproject/pymatgen/blob/master/pymatgen/symmetry/analyzer.py for diffpy structures.

That functionality depends mostly on spglib https://atztogo.github.io/spglib/python-spglib.html#python-spglib

Note we should also consider use and dependence on other crystallographic libraries

dnjohnstone avatar Jul 16 '19 13:07 dnjohnstone

This is a useful reference for this: http://journals.iucr.org/j/issues/2019/04/00/gj5229/index.html

dnjohnstone avatar Jul 29 '19 17:07 dnjohnstone