Difference between revisions of "Calculating optical spectra including excitonic effects: a step-by-step guide"

From The Yambo Project
Jump to navigation Jump to search
 
(25 intermediate revisions by 6 users not shown)
Line 1: Line 1:
This tutorial guides you through the workflow of a calculation of the optical spectrum of a given material by solving the Bethe-Salpeter equation.
This tutorial guides you through the workflow of a calculation of the optical spectrum of a given material by solving the Bethe-Salpeter equation.
Specifically we will use [[Bulk material: h-BN|bulk h-BN]] as an example.
Specifically, we will use [[Bulk material: h-BN|bulk h-BN]] as an example.


[[File:HBN-bulk-3x3-annotated.png|x200px|center|Atomic structure of bulk hBN]]
[[File:HBN-bulk-3x3-annotated.png|x200px|center|Atomic structure of bulk hBN]]


Before starting, you need to obtain the tarballs for hBN. See instructions on the [[Tutorials|main tutorials page]].
Before starting, you need to obtain the tarballs for hBN. See instructions on the [[Tutorials|main tutorials page]].
__TOC__


The target quantity in a Bethe-Salpeter calculation is the macroscopic dielectric matrix &epsilon;<sub>M</sub>. The following quantities/steps are needed to obtain &epsilon;<sub>M</sub>:  
The target quantity in a Bethe-Salpeter calculation is the macroscopic dielectric matrix &epsilon;<sub>M</sub>. The following quantities/steps are needed to obtain &epsilon;<sub>M</sub>:  


[[File:Scheme1.png|500px|center|BSE calculation scheme]]
[[File:Scheme1b.png|500px|center|BSE calculation scheme]]


The optical absorption spectrum corresponds to Im&epsilon;<sub>M</sub>(&omega;). Following this scheme we go through the flow of a calculation:
The optical absorption spectrum corresponds to Im&epsilon;<sub>M</sub>(&omega;). Following this scheme we go through the flow of a calculation:
__TOC__


===Step 1: Static screening===
===Step 1: Static screening===
Use the ''SAVE'' folders that are already provided. For the CECAM tutorial, do:
Use the ''SAVE'' folders that are already provided and type:
  $ cd YAMBO_TUTORIALS/hBN/YAMBO
  $ cd YAMBO_TUTORIALS/hBN/YAMBO


Follow the '''[[Static screening]]''' module and then '''return to this tutorial '''Calculating optical spectra...'''
Follow the '''[[Static screening]]''' module and then '''return to this tutorial '''


===Step 2: Bethe-Salpeter kernel===
===Step 2: Bethe-Salpeter kernel===
Follow the module on '''[[Bethe-Salpeter kernel]]''' and '''return to this tutorial "Calculating optical spectra..." '''  
Follow the module on '''[[Bethe-Salpeter kernel]]''' and '''return to this tutorial'''  


===Step 3: Bethe-Salpeter solver===
===Step 3: Diagonalisation of the excitonic Hamiltonian ===
This is the final step in which you finally obtained the spectra.
This is the step in which you obtain the spectra. Mathematically this implies solving a large eigenvalue problem. In this tutorial, we diagonalise the whole Bethe-Salpeter matrix, but there are other numerical approaches available in Yambo. The difference between these approaches and when they should be used is the object of [[BSE solvers overview|one of the next tutorials]].
Mathematically this implies to solve a large eigenvalue problem.  
Two main solvers are available in yambo


(1) diagonalization of the full Hamiltonian (diagonalization solver)
Follow the module on '''[[Bethe-Salpeter solver: diagonalization]]''' then '''return to this tutorial'''


(2) subspace iterative [https://en.wikipedia.org/wiki/Lanczos_algorithm| Lanczos algorithm] which by-pass diagonalization with the Haydock approach<ref>R. Haydock, in
===Step 4: Include previous quasiparticle (GW) results ===
''Solid State Phys.'', '''35''' 215 (1980) edited by H. Ehrenfest, F. Seitz, and D. Turnbull, Academic Press</ref> (Lanczos-Haydock solver)
In Step 3, we included the quasiparticle corrections to the Kohn-sham energies as a scissor operator. An alternative is to use the results from a previous run of Yambo.


For (1) follow the module on '''[[Bethe-Salpeter solver: diagonalization]]''' then either  '''return to this tutorial "Calculating optical spectra..." '''  
Follow the module on '''[[Bethe-Salpeter on top of quasiparticle energies]]''' and '''return to this tutorial'''
or follow the link to '''[[Bethe-Salpeter solver: Lanczos-Haydock]]''' for (2).
 
==Links==
* Back to [[Rome 2023#Tutorials]]
* [[Modules|Back to technical modules menu]]
* [[Tutorials|Back to tutorials menu]]


<!--  
<!--  
Line 161: Line 162:
(1) diagonalize the full Hamiltonian (diagonalization solver)  
(1) diagonalize the full Hamiltonian (diagonalization solver)  


(2) use the subspace iterative [https://en.wikipedia.org/wiki/Lanczos_algorithm| Lanczos algorithm] and by-pass diagonalization with the Haydock approach<ref>R. Haydock, in
(2) use the subspace iterative [https://en.wikipedia.org/wiki/Lanczos_algorithm | Lanczos algorithm] and by-pass diagonalization with the Haydock approach<ref>R. Haydock, in
  ''Solid State Phys.'', '''35''' 215 (1980)
  ''Solid State Phys.'', '''35''' 215 (1980)
  edited by H. Ehrenfest, F. Seitz, and D. Turnbull, Academic Press</ref> (Lanczos-Haydock solver)
  edited by H. Ehrenfest, F. Seitz, and D. Turnbull, Academic Press</ref> (Lanczos-Haydock solver)
Line 329: Line 330:
[[File:03 bse diago qp.png|none|600px]]
[[File:03 bse diago qp.png|none|600px]]
It is clear that this makes a difference in the peak distribution and intensity. Note that beside a simple shift you can renormalise as well the bandwidth of the valence and conduction bands in KfnQP_E (respectively the third and second value). You can try as an exercise to set up a new calculation using e.g. 1.440000 | 1.200000 | 0.900000 | for KfnQP_E.
It is clear that this makes a difference in the peak distribution and intensity. Note that beside a simple shift you can renormalise as well the bandwidth of the valence and conduction bands in KfnQP_E (respectively the third and second value). You can try as an exercise to set up a new calculation using e.g. 1.440000 | 1.200000 | 0.900000 | for KfnQP_E.
-->
 


=References =
=References =
<references />
<references />
-->

Latest revision as of 14:08, 19 May 2023

This tutorial guides you through the workflow of a calculation of the optical spectrum of a given material by solving the Bethe-Salpeter equation. Specifically, we will use bulk h-BN as an example.

Atomic structure of bulk hBN

Before starting, you need to obtain the tarballs for hBN. See instructions on the main tutorials page.

The target quantity in a Bethe-Salpeter calculation is the macroscopic dielectric matrix εM. The following quantities/steps are needed to obtain εM:

BSE calculation scheme

The optical absorption spectrum corresponds to ImεM(ω). Following this scheme we go through the flow of a calculation:

Step 1: Static screening

Use the SAVE folders that are already provided and type:

$ cd YAMBO_TUTORIALS/hBN/YAMBO

Follow the Static screening module and then return to this tutorial

Step 2: Bethe-Salpeter kernel

Follow the module on Bethe-Salpeter kernel and return to this tutorial

Step 3: Diagonalisation of the excitonic Hamiltonian

This is the step in which you obtain the spectra. Mathematically this implies solving a large eigenvalue problem. In this tutorial, we diagonalise the whole Bethe-Salpeter matrix, but there are other numerical approaches available in Yambo. The difference between these approaches and when they should be used is the object of one of the next tutorials.

Follow the module on Bethe-Salpeter solver: diagonalization then return to this tutorial

Step 4: Include previous quasiparticle (GW) results

In Step 3, we included the quasiparticle corrections to the Kohn-sham energies as a scissor operator. An alternative is to use the results from a previous run of Yambo.

Follow the module on Bethe-Salpeter on top of quasiparticle energies and return to this tutorial

Links