pyHMA: A VASP post-processor for precise measurement of crystalline anharmonic properties using harmonically mapped averaging
We introduce a new Python package (pyHMA) that interfaces with VASP to compute (classical) anharmonic properties of crystalline systems by post-processing data from NVT Born–Oppenheimer ab initio molecular dynamics (AIMD) simulation. It is based on the recently developed harmonically mapped averaging (HMA) method, which leverages the analytically known harmonic behavior to reformulate the direct/conventional ensemble averages in order to significantly improve precision, for a given CPU time. The package consists of two stages: reading AIMD data from vasprun.xml file(s) and then computing anharmonic properties. While the first stage is MD package-dependent, the second one is universal, given that it receives data in the required format. To demonstrate the usage of pyHMA, we compute anharmonic energy and pressure of aluminum fcc crystal at high pressure (~ 115 GPa) and up to 4000 K (near melting). We further compute anharmonic free energy as a function of temperature, using thermodynamic integration of the HMA anharmonic energy. Although pyHMA currently interfaces with VASP to compute HMA anharmonic energy and pressure, it is moduled in such a way to allow for interfacing with other codes (e.g., LAMMPS) by adding a new reader and can compute other HMA anharmonic properties (e.g., heat capacity) by adding a new method, once relevant data are available.