Shry: Application of Canonical Augmentation to the Atomic Substitution Problem - Prayogo, Genki Imam; Tirelli, Andrea; Utimula, Keishu; Hongo, Kenta; Maezono, Ryo; Nakano, Kousuke (Journal of chemical information and modeling, 2022)
A common approach for studying a solid solution or disordered system within a periodic ab initio framework is to create a supercell in which certain amounts of target elements are substituted with other elements. The key to generating supercells is determining how to eliminate symmetry-equivalent structures from many substitution patterns. Although the total number of substitutions is on the order of trillions, only symmetry-inequivalent atomic substitution patterns need to be identified, and their number is far smaller than the total. Our developed Python software package, which is called Shry (Suite for High-throughput generation of models with atomic substitutions implemented by Python), allows the selection of only symmetry-inequivalent structures from the vast number of candidates based on the canonical augmentation algorithm. Shry is implemented in Python 3 and uses the CIF format as the standard for both reading and writing the reference and generated sets of substituted structures. Shry can be integrated into another Python program as a module or can be used as a stand-alone program. The implementation was verified through a comparison with other codes with the same functionality, based on the total numbers of symmetry-inequivalent structures, and also on the equivalencies of the output structures themselves. The provided crystal structure data used for the verification are expected to be useful for benchmarking other codes and also developing new algorithms in the future.