Abstract
The functional properties of crystalline inorganic materials in a variety of applications including, but not limited to, catalysts, batteries, solar cells, electronics, fundamentally depend on their crystal structures. Discovery of novel materials could be transformative for these fields. In the past few decades, the computational science community has developed crystal structure prediction (CSP) methods with the goal to find the exact symmetry-constrained atomic arrangements in the periodic unit cell, which are globally and/or locally energetically favorable: finding the globally minimal or locally minimal crystal structure for a given chemical formula. The implementation of CSP typically involves an iteration procedure with at least two components: the sampling of the potential energy surface (PES) for generating raw/unrelaxed crystal structures, and the subsequent local energy minimization of generated structures. The latter part is typically carried out through computationally expensive density functional (DFT) calculations. A non-exhaustive but representative list of available CSP codes includes USPEX, CALYPSO, AIRSS, XtalOpt, IM2ODE; due to the nature of DFT calculations, this CSP process can be very time-consuming. Recent rapid advances of pre-trained machine-learning interatomic potentials (ML-IAPs) based on data from DFT calculations, such as, M3GNet, CHGNet and MACE (amongst others) have significantly accelerated the process of local energy minimization but have not thoroughly been tested on CSP tasks. The realization of local energy minimization using ML-IAPs, referred to as pre-relaxation when compared with using DFT calculations, plays a critical role in the CSP implementation. We present here, CrySPR, which stands for Crystal Structure Pre-Relaxation and PRediction, which is specifically designed to serve as a Python package that provides user-friendly application programming interfaces (APIs), functionalities and utilities for crystal structure generation, pre-relaxation of structures using ML-IAPs and structure prediction. The codes are open-source and have been released to the Python Package Index (PyPI).
Supplementary weblinks
Title
CrySPR
Description
CrySPR /ˈkrɪspɚ/ is a Python interface for crystal structure pre-relaxation and prediction using machine-learning interatomic potentials (ML-IAPs). Features include:
Implement structure generation from the input info (e.g., formula, Z, space group, etc.) via pyxtal and local structure optimization/relaxation through ase calculator using ML-IAPs
Implement global search task for crystal structure prediction using 1) random search (done), and 2) particle swarm optimization (PSO) for a given reduced formula
Actions
View