Models of configurationally-complex alloys made simple

Dominik Gehringer, Martin Friák, David Holec

Research output: Contribution to journalArticleResearchpeer-review


We present a Python package for the efficient generation of special quasi-random structures (SQS) for atomic-scale calculations of disordered systems. Both, a Monte-Carlo approach or a systematic enumeration of structures can be used to carry out optimizations to ensure the best optimal configuration is found for given cell size and composition. We present a measure of randomness based on Warren-Cowley short-range order parameters allowing for fast analysis of atomic structures. Hence, optimal structures are found in a reasonable time for several dozens or even hundreds of atoms. Both SQS optimizations and analysis of structures can be carried out via a command-line interface or a Python API. Additional features, such as optimization towards partial ordering or independent sublattices allow the generation of atomistic models of modern complex materials. Moreover, hybrid parallelization, as well as distribution of vacancies, are supported. The output data format is compatible with ase, pymatgen and pyiron packages to be easily embeddable in complex simulation workflows. Program summary: Program title: sqsgenerator CPC Library link to program files: Developer's repository link: Licensing provisions: MIT Programming language: Python, C++ Supplementary material: Nature of problem: Many technological relevant materials, exhibit a crystalline disorder. Within atomistic modelling approaches such as Density Functional Theory (DFT) or Molecular Dynamics, disorder is modelled with a cell containing a (small) finite set of atoms. Such an atomic configuration is usually found by enumerating structures. However, since configurational space is growing exponentially efficient tools are needed to sample it properly. Solution method: Efficient quantification of disorder using a generalization of Warren-Cowley Short Range Order (WC-SRO) parameters [1,2]. By either a Monte-Carlo approach or systematic enumeration, optimal structures can be found. The software is distributed as a Python package offering a command line interface. Core parts are written in C++ and exhibit shared (OpenMP) and distributed (MPI) memory parallelism. For embedding into complex simulation workflows, the tool exposes a Python API to integrate into popular packages such as ase [3], pymatgen [4] or pyiron [5]. References: [1] J.M. Cowley, An approximate theory of order in alloys, Phys. Rev. 77 (5) (1950) 669–675. URL [2] J.M. Cowley, Short-range order and long-range order parameters, Phys. Rev. 138 (5A) (1965) A1384–A1389. URL [3] A.H. Larsen, J.J. Mortensen, J. Blomqvist, I.E. Castelli, R. Christensen, M. Dułak, J. Friis, M.N. Groves, B. Hammer, C. Hargus, E.D. Hermes, P.C. Jennings, P.B. Jensen, J. Kermode, J.R. Kitchin, E.L. Kolsbjerg, J. Kubal, K. Kaasbjerg, S. Lysgaard, J.B. Maronsson, T. Maxson, T. Olsen, L. Pastewka, A. Peterson, C. Rostgaard, J. Schiøtz, O. Schütt, M. Strange, K.S. Thygesen, T. Vegge, L. Vilhelmsen, M. Walter, Z. Zeng, K.W. Jacobsen, The atomic simulation environment—a python library for working with atoms, Journal of Physics: Condensed Matter 29 (27) (2017) 273002. URL [4] S.P. Ong, W.D. Richards, A. Jain, G. Hautier, M. Kocher, S. Cholia, D. Gunter, V.L. Chevrier, K.A. Persson, G. Ceder, Python materials genomics (pymatgen): A robust, open-source python library for materials analysis, Computational Materials Science 68 (2013) 314–319. URL [5] J. Janssen, S. Surendralal, Y. Lysogorskiy, M. Todorova, T. Hickel, R. Drautz, J. Neugebauer, pyiron: An integrated development environment for computational materials science, Computational Materials Science 163 (2019) 24–36. URL

Original languageEnglish
Article number108664
Number of pages11
JournalComputer physics communications
Issue numberMay
Early online date20 Jan 2023
Publication statusPublished - May 2023

Bibliographical note

Publisher Copyright: © 2023 The Author(s)
  • sqsgenerator

    Holec, D., Gehringer, D. & Friák, M., 21 Nov 2023

    Research output: Non-textual formSoftwareTransfer

Cite this