qha: A Python package for quasiharmonic free energy calculation for multi-configuration systems

33Citations
Citations of this article
39Readers
Mendeley users who have this article in their library.
Get full text

Abstract

In this work, we present a Python package, qha, which can calculate the equation of state and various thermodynamic properties of both single- and multi-configuration crystalline materials within a user-specified pressure and temperature range in the framework of the quasi-harmonic approximation (QHA). Two examples, one for single-configuration calculation and the other for multi-configuration calculation, are also distributed along with source code. Apart from its versatility, qha has been tested to be both accurate and computationally efficient. Program summary: Program Title: qha Program Files doi: http://dx.doi.org/10.17632/rz42b97px5.1 Licensing provisions: GPLv3 Programming language: Python3 Nature of problem: Calculations of thermodynamic properties of dynamically stable and structurally disordered solids, e.g., H-disordered phases of H2O-ice, solid solutions, defects with multiple possible configurations need to sample the phase space of all relevant configurations. These calculations start from a calculation of the partition function, which includes all structural and vibrational states and from which the Helmholtz free energy and all thermodynamics properties are derived within the quasi-harmonic approximations for a user-defined temperature and pressure range. Solution method: The method involves the calculation of the partition function of a harmonic oscillator along with the calculated energy and vibrational spectra of multiple crystalline configurations to derive the Helmholtz free energy F(Vi,Tj), where i labels the discrete set of volumes and j labels ionic temperature. The free energy is then fit to temperature-dependent finite-strain equations of state from which all thermodynamic properties can be derived. Additional comments including restrictions and unusual features: The package contains executable scripts that can be run directly in the command line given input data and a computational settings file. It can also be separated into stand-alone modules for incorporating into other programs. Though the package is written in Python, it does not seem to be slow since the just-in-time (JIT) compilation technique is used to improve its performance significantly.

Cite

CITATION STYLE

APA

Qin, T., Zhang, Q., Wentzcovitch, R. M., & Umemoto, K. (2019). qha: A Python package for quasiharmonic free energy calculation for multi-configuration systems. Computer Physics Communications, 237, 199–207. https://doi.org/10.1016/j.cpc.2018.11.003

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free