Enumerate#

Tools for exhaustive enumeration of symmetrically distinct supercell matrices.

enumerate_supercell_matrices(size, symmops, tol=1e-05)[source]#

Generate all symmetrically distinct supercell matrices of a given size.

Matrices are given in Hermite normal form following the following work:

Parameters:
  • size (int) – size of the supercell in multiples of the primitive cell

  • symmops (list of SymmOps) – symmetry operations

  • tol (float) – optional tolerance for checking if a matrix is symmetrically distinct

Returns:

list of supercell matrices with given size

Return type:

list of ndarray