aflow++: A C++ framework for autonomous materials design

Corey Oses, Marco Esters, David Hicks, Simon Divilov, Hagen Eckert, Rico Friedrich, Michael J. Mehl, Andriy Smolyanyuk, Xiomara Campilongo, Axel van de Walle, Jan Schroers, A. Gilad Kusne, Ichiro Takeuchi, Eva Zurek, Marco Buongiorno Nardelli, Marco Fornari, Yoav Lederer, Ohad Levy, Cormac Toher, Stefano Curtarolo

Research output: Contribution to journalArticlepeer-review

1 Scopus citations

Abstract

The realization of novel technological opportunities given by computational and autonomous materials design requires efficient and effective frameworks. For more than two decades, aflow++ (Automatic-Flow Framework for Materials Discovery) has provided an interconnected collection of algorithms and workflows to address this challenge. This article contains an overview of the software and some of its most heavily-used functionalities, including algorithmic details, standards, and examples. Key thrusts are highlighted: the calculation of structural, electronic, thermodynamic, and thermomechanical properties in addition to the modeling of complex materials, such as high-entropy ceramics and bulk metallic glasses. The aflow++ software prioritizes interoperability, minimizing the number of independent parameters and tolerances. It ensures consistency of results across property sets — facilitating machine learning studies. The software also features various validation schemes, offering real-time quality assurance for data generated in a high-throughput fashion. Altogether, these considerations contribute to the development of large and reliable materials databases that can ultimately deliver future materials systems.

Original languageEnglish
Article number111889
JournalComputational Materials Science
Volume217
DOIs
StatePublished - Jan 25 2023

Keywords

  • AFLOW
  • Autonomous computation
  • Machine learning
  • Workflows

Fingerprint

Dive into the research topics of 'aflow++: A C++ framework for autonomous materials design'. Together they form a unique fingerprint.

Cite this