Electron Phonon Coupling
Here we show step-by-step how to use Quantum Espresso to calculate phonons and electron-phonon matrix-elements on a regular q-grid, with the final aim to allow Yambo to read these databases and calculate the temperature-dependent correction to the electronic states. This tutorial is quite complicated, take your time to follow all the steps
Calculations will be divided in different folders:
- pseudo the pseudo potential folder
- scf for the self-consistent calculation
- nscf for the non-self-consistent calcaultion with a larger number of bands
- dvscf for the calculation of phonons and electron-phonon matrix elements
In this tutorial we will show how to calculate electron-phonon induced corrections to the bands and optical properties of 2D hexagonal boron nitride. All input file are availabe in the following tgz file: hBN.epc.tgz
1. In scf we run a standard scf calculation choosing the a large k-grid in such a way to converge density. Do not forget to set force_symmorphic=.true., because not symmorphic symmetries are not supported yet in Yambo.
2. In the main directory I copy the previously created ${PREFIX}.save directory and I run a dVscf calculation, meaning a phonon calculation setting the flag electron_phonon = ‘dvscf’, and a q grid equivalent to the k grid you used before, for example
&inputph
tr2_ph = 1e-16
prefix = '6HSiC'
fildvscf = '6HSiC-dvscf'
fildyn = '6HSiC.dyn'
electron_phonon = 'dvscf',
epsil = .true.
trans = .true.
ldisp = .true.
verbosity = 'high'
nq1=10, nq2 =10, nq3=2
/
3. In nscf folder I run an nscf calculation, setting the number of bands nbnd equal to the desired band number, force_symmorphic=.true. and the same q grid as before. A ${PREFIX}.save folder will be automatically created.
4. In the main directory I copy and then overwrite the previous ${PREFIX}.save directory with the new one. Now I run an elph calculation setting electron_phonon = ‘yambo’, and the q grid.
&inputph
fildvscf = '6HSiC-dvscf'
fildyn = '6HSiC.dyn'
verbosity = 'high'
epsil = .true.
ldisp = .true.
tr2_ph = 1e-16
prefix = '6HSiC'
electron_phonon = 'yambo',
trans = .false.
nq1=10, nq2 =10, nq3=2
/