Difference between revisions of "Bethe-Salpeter kernel"

From The Yambo Project
Jump to: navigation, search
(Choosing input parameters)
(Choosing input parameters)
(One intermediate revision by the same user not shown)
Line 13: Line 13:
[[File:Yambo-handbook-v4.1.2-p-14.png|thumb|Cheatsheet on BSE Kernel|150px]]
* You must first complete the [[Static screening|static screening]] module
* You must first complete the [[Static screening|static screening]] module
Line 21: Line 22:
==Choosing input parameters==
==Choosing input parameters==
Start by generating the input by invoking yambo with the option "-o b -k sex -V qpfrom the command line:
Generate the input file by invoking yambo with the option <code>-o b -k sex -V qp</code> from the command line:
  $ yambo -o b -k sex -V qp -F 02_3D_BSE_kernel.in
  $ yambo -o b -k sex -V qp -F 02_3D_BSE_kernel.in

Revision as of 11:40, 7 November 2019

In this module you will learn how to calculate the matrix elements of the Bethe-Salpeter kernels. This is a fundamental step in the calculation of optical spectra within the Bethe-Salpeter equation framework.


To solve the Bethe-Salpeter equations the latter is usually rewritten in the space of transitions between valence and conduction states as the (pseudo)eigenvalue problem for a two-particle Hamiltonian. The two-particle Hamiltonian matrix elements are given by:


where vck indicates the pair of quasiparticle states vk and ck. The first term on the RHS is the quasiparticle energy differences (diagonal only). The second term is the kernel which is the sum of the electron-hole exchange part V (which stems from the Hartree potential) and the electron-hole attraction part W (which stems from the screened exchange potential). The kernel both shifts (diagonal contributions) and couples (off-diagonal contributions) the quasiparticle energy differences:

BSE1 Eq3.png

Here εGG'-1 is the inverse of the dielectric screening matrix which was evaluated in the Static screening module


Cheatsheet on BSE Kernel

You will need:

  • The SAVE databases for 3D hBN
  • The 3D_BSE directory with the databases generated in the static screening module
  • The yambo executable

Choosing input parameters

Generate the input file by invoking yambo with the option -o b -k sex -V qp from the command line:

$ yambo -o b -k sex -V qp -F 02_3D_BSE_kernel.in

The input opens in the standard editor. The relevant input parameters to be changed are

BSENGexx = 30 Ry
BSENGBlk = 4 Ry
% BSEBands
 6 | 10 |       

The first two are the cutoff for the summations on the reciprocal lattice vectors which appear in the expressions for V (BSENGexx) and W (BSENGBlk) here above.

The third parameter gives the range of quasiparticle states (their band index) that define the basis of quasiparticle pairs that we need to describe the excitons (in the energy range of interest). For example since we have 8 occupied bands, here we consider the pairs of bands: 6-9, 6-10, 7-9, 7-10, 8-9, 8-10 (those are 6 pairs of bands = 2 valence times 3 conduction bands).

For each of those pairs we then consider all k points in the Brillouin zone available from the DFT calculations. Since we have a 6 x 6 x 2 grid, this amounts to 72 k points in the Brillouin zone.

Then finally we are using a basis of 6 x 72 = 432 vck pairs to represent the excitons of the system.

The values for these 3 parameters are chosen from convergence studies, as discussed in the next tutorial.

Bethe-Salpeter kernel runlevel

Run the calculation by invoking yambo in the command line:

$ yambo -F 02_3D_BSE_kernel.in -J 3D_BSE 

In the log (either in standard output or in l_optics_bse_bsk), after various setup/loading, the kernel is calculated:

<01s> [05.04.03] Kernel loop
<02s> Kernel |########################################| [100%] --(E) --(X)

In the report r_optics_bse_bsk the information relative to this runlevel are reported under the section:

[05] Response Functions in Transition space

Take some time to inspect the log and the report. For example try to find where the input parameters are reported, the dimension of the 2-particle Hamiltonian and if these match your expectations.

This run does not produce any human readable output. The kernel is stored in a database in the 3D_BSE directory



From this tutorial you've learned:

  • How to compute the Bethe-Salpeter kernel