icet - A Python library for constructing and sampling alloy cluster expansions

Mattias Ångqvist,William A. Muñoz,J. Magnus Rahm,Erik Fransson,Céline Durniak,Piotr Rozyczko,Thomas Holm Rod,Paul Erhart
DOI: https://doi.org/10.1002/adts.201900015
2019-01-25
Abstract:Alloy cluster expansions (CEs) provide an accurate and computationally efficient mapping of the potential energy surface of multi-component systems that enables comprehensive sampling of the many-dimensional configuration space. Here, we introduce \textsc{icet}, a flexible, extensible, and computationally efficient software package for the construction and sampling of CEs. \textsc{icet} is largely written in Python for easy integration in comprehensive workflows, including first-principles calculations for the generation of reference data and machine learning libraries for training and validation. The package enables training using a variety of linear regression algorithms with and without regularization, Bayesian regression, feature selection, and cross-validation. It also provides complementary functionality for structure enumeration and mapping as well as data management and analysis. Potential applications are illustrated by two examples, including the computation of the phase diagram of a prototypical metallic alloy and the analysis of chemical ordering in an inorganic semiconductor.
Materials Science
What problem does this paper attempt to address?