XTALOPT Version r12: An open-source evolutionary algorithm for crystal structure prediction


Journal Article

© 2018 Elsevier B.V. Version 12 of XTALOPT, an evolutionary algorithm for crystal structure prediction, is now available for download from the CPC program library or the XTALOPT website, http://xtalopt.github.io. The new version includes: a method for calculating hardness using a machine learning algorithm within AFLOW-ML (Automatic FLOW for Materials Discovery — Machine Learning), the ability to predict hard materials, a generic optimizer (which allows the user to employ many optimizers that were previously not supported), and the ability to generate simulated XRD (X-ray diffraction) patterns. New version program summary: Program Title: XTALOPT Program Files doi: http://dx.doi.org/10.17632/jt5pvnnm39.3 Licensing provisions: 3-Clause BSD [1] Programming language: C++ External routines/libraries: QT [2], QWT [3], AVOGADRO2 [4,5] (optional), LIBSSH [6], OPEN BABEL [7,8] (separate executable), OBJCRYST++ [9,10] (separate executable), AFLOW-ML [11,12] (through network), and an external program for optimizing the geometries of extended systems. Subprograms used: PUGIXML [13], SPGLIB [14], XTALCOMP [15], RANDSPG [16]. Nature of problem: Computationally predicting stable and/or hard crystal structures given only their stoichiometry. Solution method: Evolutionary algorithms (EAs), which use ideas from biological evolution, are optimization algorithms whose goal is to find the optimal solution for a problem that has many degrees of freedom. For a priori crystal structure prediction (CSP), EAs search to find the lattice parameters and atomic coordinates that, for example, minimize the energy/enthalpy or maximize the hardness. The XTALOPT EA for crystal structure prediction is published under the 3-Clause BSD License, which is an open source license that is officially recognized by the Open Source Initiative [17]. More information is available in the following publications: XTALOPT's original implementation [18], previous version announcements [19–22], manuscripts detailing the subprograms XTALOPT employs: XTALCOMP [23] and RANDSPG [24], and the XtalOpt website [25]. Reasons for new version: Since the release of XTALOPT version r11 in January 2018, the following changes have been made: • Added a hardness calculation via AFLOW-ML (Automatic FLOW for Materials Discovery — Machine Learning). • Added a hardness fitness function, which allows for the prediction of hard structures. • Added a generic optimizer, which allows the user to employ many previously unsupported optimizers for minimizing the geometry of an extended system. • Added the ability to generate a simulated XRD (X-ray Diffraction) pattern. • Added the ability to use different optimizers and queuing interfaces for each optimization step. • Implemented various bug fixes. Summary of revisions: The theoretical hardness of a crystal can now be automatically calculated during an XTALOPT run. The hardness is calculated through a linear relationship with the shear modulus (originally discovered by Teter [26]) as reported by Chen [27]. The shear modulus is obtained via AFLOW-ML [11,12], which employs a machine learning model trained with the AFLOW Automatic Elasticity Library (AEL) [28,29]. As a result, the EA can employ a new fitness function, which attempts to minimize the enthalpy and maximize the hardness of the predicted structures. This facilitates the search for crystals that are both stable and hard. Additionally, a new generic optimizer was added that allows the user to employ optimizers that were previously not supported (ADF BAND [30] and ADF DFTB [31] are examples that we have thoroughly tested). The only caveat is that the rules for the generic optimizer, which are provided in the online tutorial, must be followed. OPEN BABEL [7,8] is used to read the output of the generic optimizer. Because of the addition of an executable that uses OBJCRYST++ [9,10], a simulated XRD pattern of a crystal can now also be generated during a structure search. Finally, different optimizers and different queuing interfaces can now be used for each optimization step.

Full Text

Duke Authors

Cited Authors

  • Avery, P; Toher, C; Curtarolo, S; Zurek, E

Published Date

  • April 1, 2019

Published In

Volume / Issue

  • 237 /

Start / End Page

  • 274 - 275

International Standard Serial Number (ISSN)

  • 0010-4655

Digital Object Identifier (DOI)

  • 10.1016/j.cpc.2018.11.016

Citation Source

  • Scopus