Author: Samuel Poncé
The following example aims at providing physically meaningful results. Calculations can therefore take a significant amount of time. For quick calculations, look at the
Running EPW on bulk fcc Pb¶
The bulk fcc lead example is located inside the
EPW/examples/pb/ directory. Within this directory there are three directories.
pp/ contains the Pb pseudopotential,
woSOC/ contains the input files to calculate the lead without spin-orbit coupling (SOC);
wSOC contains the inputs files to run the lead calculations including SOC.
epw.x have been compiled, we are ready to run the example.
The first step is to calculate the phonons in the irreducible wedge. For this example, we use a
6x6x6 coarse grid.
First go inside the phonon directory of both
wSOC/ and issue
The phonon code from QE requires a ground-state self-consistent run
../../../../bin/pw.x < scf.in >& scf.out &
The electronic bandstructure of Pb is presented in Figure 1 below with and without SOC.
Calculating the phonons¶
Let us compute the dynamical matrix, phonon frequencies and change of potential using the
../../../../bin/ph.x < ph.in >& ph.out &
This will give us the phonon frequency and dynamical matrices at 16 irreducibles q-points. You can check that your results correspond to the phonon frequency of the Figure 2 below.
We then need to copy the
.dvscf as well as the
_ph0/pb.phsave folder inside the
save folder. Those are all the quantities produced by Quantum Espresso that EPW needs.
Because the files need to have a specific name and because there can be quite a few files, you can use the small python script to help you. Just issue
in the phonons folder. The script will ask you the prefix used for the QE calculations as well as the number of irreducible q-points computed. The script will place all the files in the
save folder. We are now done with QE and can move to the
We first have to do a scf and nscf calculations. To do that, go inside the
epw directory and issue:
../../../../bin/pw.x < scf.in >& scf.out
../../../../bin/pw.x < nscf.in >& nscf.out
We can then run the EPW calculation. We will start by computing the phonon linewidth (imaginary part of the phonon self-energy). Note that we have set
phonselfen = .true. in the
epw.in input file.
We are here interested in the Eliashberg spectral function. For that you need to set
a2f = .true..
You can then launch the EPW calculation:
../../../bin/epw.x < epw.in >& epw.out
The code should generate a file called
pb.a2f.01. This file contains the Eliashberg spectral function \(\alpha^2F\) for different phonon smearing as a function of energy.
The convergence of this quantity with the k and q-point grid can be quite tedious in a material with a complex Fermi surface like Pb. See for example Figure 3 with and without SOC pseudopotential. These calculations are heavy and are not intended to be reproduced here. We gave it as an indication of the typical fine grid that might be required.
Also note that random k or q-point integration converges faster than homogeneous. To perform random integration, please refer to the input variables [[ Inputs#rand_q | rand_q ]] and [[ Inputs#rand_nq | rand_nq]].
Finally, the Figure 4 presents the calculated isotropic Eliashberg spectral function \(\alpha^2F(\omega)\) of Pb with and without SOC as well as its transport counterpart.