Electron-phonon potential from supercells
The computation of the electron-phonon potential, , is a prerequisite for the calculation of the electron-phonon matrix element:
In the direct interpolation approach, is computed from a supercell calculation by means of Fourier interpolation while the Bloch orbitals, , are computed directly in the primitive cell. Naturally, this process involves multiple VASP calculations in different cells, which can introduce additional complexities compared to just a single execution of VASP. This page tries to give a high-level overview of the general workflow associated with electron-phonon calculations using the direct interpolation approach.
Tip: The entire workflow of initializing a calculation, computing the electron-phonon potential in the supercell and performing subsequent electron-phonon calculations in the primitive cell can be facilitated by the velph command-line tool. It helps guide you through the process step by step and ensures a certain level of consistency between the required VASP calculations. |
Finite displacements in the supercell
The electron-phonon potential is computed from finite atomic displacements in a sufficiently large supercell. In this case, sufficient means that the effects of an atomic displacement become negligible at about half the supercell size. Usually, converging the phonon frequencies is a good way of finding a supercell that is sufficiently large. Polar materials can exhibit long-range electrostatic interactions that go beyond reasonable supercell sizes. In this case, a correction scheme exists that explicitly treats the long-range dipole interactions and works with smaller cells. More information can be found on the theory page.
Currently, there are two complementary ways to calculate the electron-phonon potential. One relies solely on VASP, while the other uses VASP in combination with the phelel python package. Both approaches calculate the derivative of the Kohn-Sham potential in real space via the displacement of atoms. However, they may differ in terms of flexibility and computational performance. Below, we describe the general workflow of each approach and highlight their advantages and disadvantages.
Regardless of which approach is chosen, the output is then written to the phelel_params.hdf5 binary file. This file can then be read during a VASP calculation in the primitive unit cell to compute electron-phonon interactions. For more information on how to perform specific electron-phonon calculations, visit missing.
VASP internal driver
This way of calculating the electron-phonon potential is activated by setting PHELEL_WRITE = True
in the INCAR file.
It utilizes the VASP-internal finite-difference driver that is activated by setting IBRION = 6
in the INCAR file.
The atomic displacement directions are automatically determined by VASP.
As usual, POTIM and NFREE can be used to control the displacement amount and finite-difference stencil, respectively.
This is the same procedure used to calculate phonons from finite differences and many of the same considerations regarding performance and accuracy apply in this case.
Therefore, phonon frequencies are a great way to test the convergence with respect to supercell size.
Mind: Currently, VASP generates more displacements with PHELEL_WRITE = True and IBRION = 6 than would be required in principle. This will be improved in a future version of the code.
|
This is the minimal setup required to calculate the electron-phonon potential, map it to the primitive cell and store the result in the phelel_params.hdf5 file. By default, the primitive cell is the one determined by VASP during the supercell calculation. You can find this information in the OUTCAR file. For example, here is the relevant section for a diamond structure:
---------------------------------------------------------------------------------------- Primitive cell volume of cell : 11.1771 direct lattice vectors reciprocal lattice vectors 1.774598550 1.774598550 0.000000000 0.281753865 0.281753865 -0.281753865 0.000000000 1.774598550 1.774598550 -0.281753865 0.281753865 0.281753865 1.774598550 0.000000000 1.774598550 0.281753865 -0.281753865 0.281753865 length of vectors 2.509661338 2.509661338 2.509661338 0.488012009 0.488012009 0.488012009 position of ions in fractional coordinates (direct lattice) 0.000000000 0.000000000 0.000000000 0.250000000 0.250000000 0.250000000 ion indices of the primitive-cell ions primitive index ion index 1 1 2 9 ----------------------------------------------------------------------------------------