Static screening: Difference between revisions

From The Yambo Project
Jump to navigation Jump to search
 
(8 intermediate revisions by 4 users not shown)
Line 14: Line 14:


==Choosing input parameters==
==Choosing input parameters==
Start by [[Input_file_generation_and_command_line_options|generating the input]] by invoking yambo with the option "-b"  from the command line:
First, we need to initialize the yambo <code>SAVE</code> by just typing


  $ yambo -b -F 01_3D_BSE_screening.in
  $ yambo
 
Next, we [[Input_file_generation_and_command_line_options|generate the input]] by invoking yambo with the option "-X s"  from the command line:
 
$ yambo -X s -F 01_3D_BSE_screening.in


The input opens in the standard editor. Similarly to the other linear response calculations the relevant input variables to be changed are:  
The input opens in the standard editor. Similarly to the other linear response calculations the relevant input variables to be changed are:  
Line 23: Line 27:
   1 | 40 |                 
   1 | 40 |                 
  %
  %
   [[Variables#NGsBlkXs|NGsBlkXs]]= 4 Ry
   [[Variables#NGsBlkXs|NGsBlkXs]]= 4000 mRy


The first variable gives how many bands are included in the sum to calculate the static response function. The second is a cutoff for the dimension of the static dielectric matrix.
The first variable gives how many bands are included in the sum to calculate the static response function. The second is a cutoff for the dimension of the static dielectric matrix.


In the [[How to choose the input parameters|next tutorial]] you will see how to choose these two parameters. Another relevant input parameter to change is
In a [[How to choose the input parameters|subsequent tutorial]] you will see how to choose these two parameters. Another relevant input parameter to change is


  % [[Variables#LongDrXs|LongDrXs]]
  % [[Variables#LongDrXs|LongDrXs]]
Line 33: Line 37:
  %
  %


so that the perturbing electric field has component in each direction.
In this way the perturbing electric field has components in each direction.


==Static screening runlevel==
==Static screening runlevel==
Line 39: Line 43:
  $ yambo -F 01_3D_BSE_screening.in -J 3D_BSE  
  $ yambo -F 01_3D_BSE_screening.in -J 3D_BSE  


In the log (l_em1s) of the calculation you can see that after calculating the dipole matrix elements, for each q vector yambo calculates the IP response function and by inversion the RPA response function  
In the log of the calculation - found either in the file <code>l_3D_BSE_screen_dipoles_em1s</code>, if you used mpirun, or directly printed on the terminal, if you ran yambo as is - you can see that after calculating the dipole matrix elements, for each q vector yambo calculates the IP response function and by inversion the RPA response function  


  <02s> Xo@q[1] |########################################| [100%] --(E) --(X)
  <02s> Xo@q[1] |########################################| [100%] --(E) --(X)
  <02s> X@q[1] |########################################| [100%] --(E) --(X)
  <02s> X@q[1] |########################################| [100%] --(E) --(X)


In the report, r_em1s, the details of the calculations are reported under the 5th section
In the report, <code>r-3D_BSE_dipoles_em1s</code>, the details of the calculations are reported under the 5th section


  [05] Static Dielectric Matrix
  [05] Static Dielectric Matrix
Line 51: Line 55:
This calculation does not produce any human readable output, but both the dipole matrix elements and the static screening dielectric function are saved in a database in the 3D_BSE directory:
This calculation does not produce any human readable output, but both the dipole matrix elements and the static screening dielectric function are saved in a database in the 3D_BSE directory:


  3D_BSE/ndb.dip_iR_and_P
  3D_BSE/ndb.dipoles
  3D_BSE/ndb.em1s
  3D_BSE/ndb.em1s
3D_BSE/ndb.dipoles
3D_BSE/ndb.em1s_fragment_*


which are needed in the [[Bethe-Salpeter kernel|BS kernel runlevel]].
which are needed in the [[Bethe-Salpeter kernel|BS kernel runlevel]].
Line 60: Line 66:
* How to compute the static screening as first step in a BSE calculation
* How to compute the static screening as first step in a BSE calculation


==Links==
==Navigate==
* Next module: [[Bethe-Salpeter kernel]]
* Next module: [[Bethe-Salpeter kernel]]
* Back to [[Calculating optical spectra including excitonic effects: a step-by-step guide|Calculating optical spectra including excitonic effects: a step-by-step guide]] tutorial
* Back to [[Calculating optical spectra including excitonic effects: a step-by-step guide|Calculating optical spectra including excitonic effects: a step-by-step guide]] tutorial

Latest revision as of 12:15, 6 April 2022

In this module you will learn how to calculate the static screening. This is the first step in the calculation of optical spectra within the Bethe-Salpeter framework.


Background

To calculate the correlation part of the kernel W we need the static dielectric screening. This is a calculation of the linear response of the system analogous to the calculation of the RPA/IP dielectric function. One important difference is that here we consider the static dielectric function.

BSE1-Eq2.png

Prerequisites

  • You must first complete the "How to use Yambo" modules

You will need:

  • The SAVE databases for 3D hBN
  • The yambo executable

Choosing input parameters

First, we need to initialize the yambo SAVE by just typing

$ yambo

Next, we generate the input by invoking yambo with the option "-X s" from the command line:

$ yambo -X s -F 01_3D_BSE_screening.in

The input opens in the standard editor. Similarly to the other linear response calculations the relevant input variables to be changed are:

% BndsRnXs
  1 | 40 |                 
%
 NGsBlkXs= 4000 mRy

The first variable gives how many bands are included in the sum to calculate the static response function. The second is a cutoff for the dimension of the static dielectric matrix.

In a subsequent tutorial you will see how to choose these two parameters. Another relevant input parameter to change is

% LongDrXs
 1.000 | 1.000| 1.000
%

In this way the perturbing electric field has components in each direction.

Static screening runlevel

Run the calculation by invoking yambo:

$ yambo -F 01_3D_BSE_screening.in -J 3D_BSE 

In the log of the calculation - found either in the file l_3D_BSE_screen_dipoles_em1s, if you used mpirun, or directly printed on the terminal, if you ran yambo as is - you can see that after calculating the dipole matrix elements, for each q vector yambo calculates the IP response function and by inversion the RPA response function

<02s> Xo@q[1] |########################################| [100%] --(E) --(X)
<02s> X@q[1] |########################################| [100%] --(E) --(X)

In the report, r-3D_BSE_dipoles_em1s, the details of the calculations are reported under the 5th section

[05] Static Dielectric Matrix
=============================

This calculation does not produce any human readable output, but both the dipole matrix elements and the static screening dielectric function are saved in a database in the 3D_BSE directory:

3D_BSE/ndb.dipoles 
3D_BSE/ndb.em1s
3D_BSE/ndb.dipoles
3D_BSE/ndb.em1s_fragment_*

which are needed in the BS kernel runlevel.

Summary

From this tutorial you've learned:

  • How to compute the static screening as first step in a BSE calculation

Navigate