Cij: A Python Code for Quasiharmonic Thermoelasticity

Chenxing Luo,Xin Deng,Wenzhong Wang,Gaurav Shukla,Zhongqing Wu,Renata M. Wentzcovitch
DOI: https://doi.org/10.1016/j.cpc.2021.108067
IF: 4.717
2021-01-01
Computer Physics Communications
Abstract:The Wu-Wentzcovitch semi-analytical method (SAM) is a concise and predictive formalism to calculate the high-pressure and high-temperature (high-PT) thermoelastic tensor (Cij) of crystalline materials. This method has been successfully applied to materials across different crystal systems in conjunction with ab initio calculations of static elastic coefficients and phonon frequencies. Such results have offered firsthand insights into the composition and structure of the Earth's mantle. Here we introduce the cij package, a Python implementation of the SAM-Cij formalism. It enables a thermoelasticity calculation to be initiated from a single command and fully configurable from a calculation settings file to work with solids within any crystalline system. These features allow SAMCij calculations to work on a personal computer and to be easily integrated as a part of high-throughput workflows. Here we show the performance of this code for three minerals from different crystal systems at their relevant PTs: diopside (monoclinic), akimotoite (trigonal), and bridgmanite (orthorhombic). Program summary Program title: cij CPC Library link to program files: https://doi.org/10.17632/b8xf5jh5s8.1 Developer's repository link: https://github.com/MineralsCloud/cij Licensing provisions: GNU General Public License 3 Programming language: Python 3 Nature of problem: Experimental measurements of full elastic tensor coefficients under high-pressure and high-temperature conditions are challenging and susceptible to uncertainties. Computations of thermoelastic coefficients based on the conventional density functional theory (DFT) plus quasiharmonic approximation (QHA) or ab initio molecular dynamics (AIMD) methods are computationally extremely demanding, especially for materials with low symmetries because of the revaluation of free energy for strained configurations. Solution method: Based on a semi-analytical method proposed by Wu and Wentzcovitch [1], we developed a handy code that only needs static-state elastic coefficients and phonon vibrational density of states for several equilibrium configurations at different pressure points as input to calculate the thermal elasticity. This method avoids the reevaluation of free energy for strained configurations and can be applied to all crystal systems. Reference [1] Z. Wu, R.M. Wentzcovitch, Phys. Rev. B 83 (2011) 184115. (C) 2021 Elsevier B.V. All rights reserved.
What problem does this paper attempt to address?