orgdisord.merge.merge_canonical#
- orgdisord.merge.merge_canonical(supercell_images, symops, symprec=0.0001, use_disordered_only=True, check_species=True)[source]#
Group structures into symmetry-inequivalent orbits using canonical labelling.
Builds a shared discrete site template across all images, closes it under the symmetry operations, and maps each image to an occupancy vector over the template. The canonical key for each image is the lexicographical minimum of the occupancy vector across all symmetry operations in the group.
- Parameters:
supercell_images (list) – List of ASE Atoms objects.
symops (list) – List of (rotation, translation) symmetry operations in supercell fractional coordinates (see
supercell_symops).symprec (float) – Tolerance for site mapping, in fractional coordinates of the supercell.
use_disordered_only (bool) – If True, compare only disordered atoms (tag != 0).
check_species (bool) – If True, differentiate atom species.
- Returns:
Grouped indices of equivalent images.
- Return type:
list of list of int
- Raises:
NonDiscreteSitesError – if the atoms are not on a discrete set of sites closed under
symops.