Absorption of black phosphorus with gw+BSE

Deals with issues related to computation of optical spectra in reciprocal space: RPA, TDDFT, local field effects.

Moderators: Davide Sangalli, andrea.ferretti, myrta gruning, andrea marini, Daniele Varsano, Conor Hogan

Tianshu
Posts: 27
Joined: Wed Sep 20, 2017 8:36 am

Absorption of black phosphorus with gw+BSE

Post by Tianshu » Fri Dec 29, 2017 6:18 am

Dear Developers,

I want to calculate exciton binding energy of monolayer black phosphorus. I have calculated band gap with gw method and plot band structure with no problem (the Eg is about 2eV with gw). Then I add BSE to get binding energy, but when I plot absorption spectrum with data in o-BSE.eps_q1_diago_bse file, the location of first peak is far away from Eg. Here is my bse input:

Code: Select all

#                                                           
# ooooo   oooo ..     ooo        ooo ooooooooo.    .oooo.   
#  `88.   .8" .88.    `88.       .88 `88"   `Y8b  dP"  `Yb  
#   `88. .8" .8"88.    888b     d"88  88     888 88      88 
#    `88.8" .8" `88.   8 Y88. .P  88  88oooo888" 88      88 
#     `88" .88ooo888.  8  `888"   88  88    `88b 88      88 
#      88 .8"     `88. 8    Y     88  88    .88P `8b    d8" 
#     o88o88o      888o8          88 o88bood8P"   `Ybod8P"  
#                                                           
#                                                           
#              GPL Version 4.1.2 Revision 120               
#                     MPI+OpenMP Build                      
#                 http://www.yambo-code.org                 
#
rim_cut                      # [R RIM CUT] Coulomb potential
optics                       # [R OPT] Optics
ppa                          # [R Xp] Plasmon Pole Approximation
bss                          # [R BSS] Bethe Salpeter Equation solver
bse                          # [R BSE] Bethe Salpeter Equation.
bsk                          # [R BSK] Bethe Salpeter Equation kernel
em1d                         # [R Xd] Dynamical Inverse Dielectric Matrix
StdoHash=  40                # [IO] Live-timing Hashes
Nelectro= 20.000000           # Electrons number
ElecTemp= 0.000000     eV    # Electronic Temperature
BoseTemp= 0.000000     eV    # Bosonic Temperature
OccTresh=0.1000E-4           # Occupation treshold (metallic bands)
NLogCPUs=0                   # [PARALLEL] Live-timing CPU`s (0 for all)
DBsIOoff= "none"             # [IO] Space-separated list of DB with NO I/O. DB=(DIP,X,HF,COLLs,J,GF,CARRIERs,W,SC,BS,ALL)
DBsFRAGpm= "none"            # [IO] Space-separated list of +DB to be FRAG and -DB NOT to be FRAG. DB=(DIP,X,W,HF,COLLS,K,BS,QINDX,
FFTGvecs=  4381        RL    # [FFT] Plane-waves
#WFbuffIO                    # [IO] Wave-functions buffered I/O
X_all_q_CPU= ""              # [PARALLEL] CPUs for each role
X_all_q_ROLEs= ""            # [PARALLEL] CPUs roles (q,k,c,v)
X_all_q_nCPU_LinAlg_INV= 1   # [PARALLEL] CPUs for Linear Algebra
X_Threads= 1                 # [OPENMP/X] Number of threads for response functions
DIP_Threads= 1               # [OPENMP/X] Number of threads for dipoles
BS_CPU= ""                   # [PARALLEL] CPUs for each role
BS_ROLEs= ""                 # [PARALLEL] CPUs roles (k,eh,t)
BS_nCPU_LinAlg_INV= 1        # [PARALLEL] CPUs for Linear Algebra
BS_nCPU_LinAlg_DIAGO= 1      # [PARALLEL] CPUs for Linear Algebra
NonPDirs= "none"             # [X/BSS] Non periodic chartesian directions (X,Y,Z,XY...)
RandQpts= 1000000            # [RIM] Number of random q-points in the BZ
RandGvec= 100          RL    # [RIM] Coulomb interaction RS components
#QpgFull                     # [F RIM] Coulomb interaction: Full matrix
% Em1Anys
 0.00     | 0.00     | 0.00     |        # [RIM] X Y Z Static Inverse dielectric matrix
%
IDEm1Ref=0                   # [RIM] Dielectric matrix reference component 1(x)/2(y)/3(z)
CUTGeo= "box Y"              # [CUT] Coulomb Cutoff geometry: box/cylinder/sphere X/Y/Z/XY..
% CUTBox
  0.00000 |  30.00000 | 0.00000 |        # [CUT] [au] Box sides
%
CUTRadius= 0.000000          # [CUT] [au] Sphere/Cylinder radius
CUTCylLen= 0.000000          # [CUT] [au] Cylinder length
#CUTCol_test                 # [CUT] Perform a cutoff test in R-space
Chimod= "Hartree"            # [X] IP/Hartree/ALDA/LRC/BSfxc
BSEmod= "retarded"           # [BSE] resonant/retarded/coupling
BSKmod= "SEX"                # [BSE] IP/Hartree/HF/ALDA/SEX
BSSmod= "d"                  # [BSS] (h)aydock/(d)iagonalization/(i)nversion/(t)ddft`
BSENGexx= 40 Ry    # [BSK] Exchange components
#ALLGexx                     # [BSS] Force the use use all RL vectors for the exchange part
BSENGBlk= 4 Ry    # [BSK] Screened interaction block size
#WehDiag                     # [BSK] diagonal (G-space) the eh interaction
#WehCpl                      # [BSK] eh interaction included also in coupling
KfnQPdb= "E < gw/ndb.QP"              # [EXTQP BSK BSS] Database
KfnQP_N= 1                   # [EXTQP BSK BSS] Interpolation neighbours
% KfnQP_E
 2.7900000 | 1.000000 | 1.000000 |        # [EXTQP BSK BSS] E parameters  (c/v) eV|adim|adim
%
KfnQP_Z= ( 1.000000 , 0.000000 )       # [EXTQP BSK BSS] Z factor  (c/v)
KfnQP_Wv_E= 0.000000   eV    # [EXTQP BSK BSS] W Energy reference  (valence)
% KfnQP_Wv
 0.00     | 0.00     | 0.00     |        # [EXTQP BSK BSS] W parameters  (valence) eV| eV|eV^-1
%
KfnQP_Wc_E= 0.000000   eV    # [EXTQP BSK BSS] W Energy reference  (conduction)
% KfnQP_Wc
 0.00     | 0.00     | 0.00     |        # [EXTQP BSK BSS] W parameters  (conduction) eV| eV|eV^-1
%
Gauge= "length"              # [BSE] Gauge (length|velocity)
#MetDamp                     # [BSE] Define \w+=sqrt(\w*(\w+i\eta))
DrudeWBS= ( 0.00     , 0.00     )  eV  # [BSE] Drude plasmon
#Reflectivity                # [BSS] Compute reflectivity at normal incidence
RandQpts= 1000000            # [RIM] Number of random q-points in the BZ
RandGvec= 100          RL    # [RIM] Coulomb interaction RS components
#QpgFull                     # [F RIM] Coulomb interaction: Full matrix
% Em1Anys
 0.00     | 0.00     | 0.00     |        # [RIM] X Y Z Static Inverse dielectric matrix
%
IDEm1Ref=0                   # [RIM] Dielectric matrix reference component 1(x)/2(y)/3(z)
CUTGeo= "box Y"              # [CUT] Coulomb Cutoff geometry: box/cylinder/sphere X/Y/Z/XY..
% CUTBox
  0.00000 |  30.00000 | 0.00000 |        # [CUT] [au] Box sides
%
CUTRadius= 0.000000          # [CUT] [au] Sphere/Cylinder radius
CUTCylLen= 0.000000          # [CUT] [au] Cylinder length
#CUTCol_test                 # [CUT] Perform a cutoff test in R-space
Chimod= "Hartree"            # [X] IP/Hartree/ALDA/LRC/BSfxc
BSEmod= "retarded"           # [BSE] resonant/retarded/coupling
BSKmod= "SEX"                # [BSE] IP/Hartree/HF/ALDA/SEX
BSSmod= "d"                  # [BSS] (h)aydock/(d)iagonalization/(i)nversion/(t)ddft`
BSENGexx= 40 Ry    # [BSK] Exchange components
#ALLGexx                     # [BSS] Force the use use all RL vectors for the exchange part
BSENGBlk= 4 Ry    # [BSK] Screened interaction block size
#WehDiag                     # [BSK] diagonal (G-space) the eh interaction
#WehCpl                      # [BSK] eh interaction included also in coupling
KfnQPdb= "E < gw/ndb.QP"              # [EXTQP BSK BSS] Database
KfnQP_N= 1                   # [EXTQP BSK BSS] Interpolation neighbours
% KfnQP_E
 2.7900000 | 1.000000 | 1.000000 |        # [EXTQP BSK BSS] E parameters  (c/v) eV|adim|adim
%
KfnQP_Z= ( 1.000000 , 0.000000 )       # [EXTQP BSK BSS] Z factor  (c/v)
KfnQP_Wv_E= 0.000000   eV    # [EXTQP BSK BSS] W Energy reference  (valence)
% KfnQP_Wv
 0.00     | 0.00     | 0.00     |        # [EXTQP BSK BSS] W parameters  (valence) eV| eV|eV^-1
%
KfnQP_Wc_E= 0.000000   eV    # [EXTQP BSK BSS] W Energy reference  (conduction)
% KfnQP_Wc
 0.00     | 0.00     | 0.00     |        # [EXTQP BSK BSS] W parameters  (conduction) eV| eV|eV^-1
%
Gauge= "length"              # [BSE] Gauge (length|velocity)
#MetDamp                     # [BSE] Define \w+=sqrt(\w*(\w+i\eta))
DrudeWBS= ( 0.00     , 0.00     )  eV  # [BSE] Drude plasmon
#Reflectivity                # [BSS] Compute reflectivity at normal incidence
BoseCut=  0.10000            # [BOSE] Finite T Bose function cutoff
% BEnRange
  0.00000 | 10.00000 | eV    # [BSS] Energy range
%
% BDmRange
  0.10000 |  0.10000 | eV    # [BSS] Damping range
%
BEnSteps= 300                # [BSS] Energy steps
% BLongDir
 1.000000 | 0.000000 | 0.000000 |        # [BSS] [cc] Electric Field
%
% BSEBands
   7 |  13 |                 # [BSK] Bands range
%
% BSEEhEny
-1.000000 |-1.000000 | eV    # [BSK] Electron-hole energy range
%
WRbsWF                      # [BSS] Write to disk excitonic the WFs
#BSSPertWidth                # [BSS] Include QPs lifetime in a perturbative way
XfnQPdb= "E < gw/ndb.QP"              # [EXTQP Xd] Database
XfnQP_N= 1                   # [EXTQP Xd] Interpolation neighbours
% XfnQP_E
 0.000000 | 1.000000 | 1.000000 |        # [EXTQP Xd] E parameters  (c/v) eV|adim|adim
%
XfnQP_Z= ( 1.000000 , 0.000000 )       # [EXTQP Xd] Z factor  (c/v)
XfnQP_Wv_E= 0.000000   eV    # [EXTQP Xd] W Energy reference  (valence)
% XfnQP_Wv
 0.00     | 0.00     | 0.00     |        # [EXTQP Xd] W parameters  (valence) eV| eV|eV^-1
%
XfnQP_Wc_E= 0.000000   eV    # [EXTQP Xd] W Energy reference  (conduction)
% XfnQP_Wc
 0.00     | 0.00     | 0.00     |        # [EXTQP Xd] W parameters  (conduction) eV| eV|eV^-1
%
% QpntsRXp
  1 |  60 |                   # [Xp] Transferred momenta
%
% BndsRnXp
   7 |  13 |                 # [Xp] Polarization function bands
%
NGsBlkXp= 4          Ry    # [Xp] Response block size
BoseCut=  0.10000            # [BOSE] Finite T Bose function cutoff
% BEnRange
  0.00000 | 10.00000 | eV    # [BSS] Energy range
%
% BDmRange
  0.10000 |  0.10000 | eV    # [BSS] Damping range
%
BEnSteps= 300                # [BSS] Energy steps
% BLongDir
 1.000000 | 0.000000 | 0.000000 |        # [BSS] [cc] Electric Field
%
% BSEBands
   7 |  13 |                 # [BSK] Bands range
%
% BSEEhEny
-1.000000 |-1.000000 | eV    # [BSK] Electron-hole energy range
%
WRbsWF                      # [BSS] Write to disk excitonic the WFs
#BSSPertWidth                # [BSS] Include QPs lifetime in a perturbative way
XfnQPdb= "E < gw/ndb.QP"              # [EXTQP Xd] Database
XfnQP_N= 1                   # [EXTQP Xd] Interpolation neighbours
% XfnQP_E
 0.000000 | 1.000000 | 1.000000 |        # [EXTQP Xd] E parameters  (c/v) eV|adim|adim
%
XfnQP_Z= ( 1.000000 , 0.000000 )       # [EXTQP Xd] Z factor  (c/v)
XfnQP_Wv_E= 0.000000   eV    # [EXTQP Xd] W Energy reference  (valence)
% XfnQP_Wv
 0.00     | 0.00     | 0.00     |        # [EXTQP Xd] W parameters  (valence) eV| eV|eV^-1
%
XfnQP_Wc_E= 0.000000   eV    # [EXTQP Xd] W Energy reference  (conduction)
% XfnQP_Wc
 0.00     | 0.00     | 0.00     |        # [EXTQP Xd] W parameters  (conduction) eV| eV|eV^-1
%
% QpntsRXp
  1 |  60 |                   # [Xp] Transferred momenta
%
% BndsRnXp
   7 |  13 |                 # [Xp] Polarization function bands
%
NGsBlkXp= 4          Ry    # [Xp] Response block size
CGrdSpXp= 100.0000           # [Xp] [o/o] Coarse grid controller
% EhEngyXp
-1.000000 |-1.000000 | eV    # [Xp] Electron-hole energy range
%
% LongDrXp
0.1000E-4 | 0.000    | 0.000    |        # [Xp] [cc] Electric Field
%
PPAPntXp= 27.21138     eV    # [Xp] PPA imaginary energy
XTermKind= "none"            # [X] X terminator ("none","BG" Bruneval-Gonze)
XTermEn= 40.81708      eV    # [X] X terminator energy (only for kind="BG")
I use the second and fourth columns to plot spectrum with and without bse, the figure and bse output file are attached. I hope you can give me some suggestions to solve this problem. Thank you a lot.


Best regards
Tianshu
Jilin University
You do not have the required permissions to view the files attached to this post.

User avatar
Daniele Varsano
Posts: 4198
Joined: Tue Mar 17, 2009 2:23 pm
Contact:

Re: Absorption of black phosphorus with gw+BSE

Post by Daniele Varsano » Fri Dec 29, 2017 11:03 am

Dear Tianshu,
the shift you see it is due to the fact you are correcting twice your quasiparticle energies:

Code: Select all

KfnQPdb= "E < gw/ndb.QP"     # [EXTQP BSK BSS] Database
 % KfnQP_E
  2.790000 | 1.000000 | 1.000000 |        # [EXTQP BSK BSS] E parameters  (c/v) eV|adim|adim
 %
You are reading the QP energies from the GW calculation (]KfnQPdb), and you are also adding a scissor operator. The scissor approximation KfnQP_E is usually used, when applicable,
when you do not use QP energies from database.

Next please note that your calculation of the screening could be highly under converged:

Code: Select all

 % BndsRnXp
   7 | 13 |                   # [Xp] Polarization function bands
 % 
Despite few bands could be enough to evaluate the BSE spectrum, the calculations of the screening is based on a sum over states, so you need for sure all the valence bands and you need to
add conduction bands until converged, so you need to check it something like:

Code: Select all

 % BndsRnXp
   1 | 20 |                   # [Xp] Polarization function bands
 % 
then

Code: Select all

 % BndsRnXp
   1 | 30 |                   # [Xp] Polarization function bands
 % 
and so on....

Please note that the bands in the screening for the GW calculations have to be checked: you used 25 bands (1-25). Next you changed the value of BndsRnXp in the bse input so the screening has been recalculated with fewer bands. My suggestion is to find the converged for the GW calculation and use the same for BSE: in this case you avoid to recalculate the screening as it will be read form the stored database.

May you want also to check a tutorial when GW and BSE calculations are computer step by step:
http://www.yambo-code.org/wiki/index.ph ... =Tutorials

Best,

Daniele
Dr. Daniele Varsano
S3-CNR Institute of Nanoscience and MaX Center, Italy
MaX - Materials design at the Exascale
http://www.nano.cnr.it
http://www.max-centre.eu/

Tianshu
Posts: 27
Joined: Wed Sep 20, 2017 8:36 am

Re: Absorption of black phosphorus with gw+BSE

Post by Tianshu » Thu Jan 04, 2018 2:22 pm

Dear Daniele,

Thank you a lot for your suggestions. I did again as you said, the peak did moved towards zero. But the gw line (blue line) didn't move enough to the bandgap position and the shape of curve is strange. In contrast, the peak position of bse line (purple line) is at the bandgap position, which is about 2.0eV.
So the question is: (1) the exciton binding energy was examined by experiment is about 0.5-0.8eV, so the difference between the first peak of gw line and that of bse line shouldn't be so much(as my figure showed); (2)the first peak position of gw line should be at about 2.0eV, but my calculated results are not.
What's the cause of this? Which parameter is most likely to change the shape of the curve?
The input is as following:

Code: Select all

#                                                           
#  **    **    **     ****     ****  ******     *******     
# //**  **    ****   /**/**   **/** /*////**   **/////**    
#  //****    **//**  /**//** ** /** /*   /**  **     //**   
#   //**    **  //** /** //***  /** /******  /**      /**   
#    /**   **********/**  //*   /** /*//// **/**      /**   
#    /**  /**//////**/**   /    /** /*    /**//**     **    
#    /**  /**     /**/**        /** /*******  //*******     
#    //   //      // //         //  ///////    ///////      
#                                                           
#              GPL Version 4.1.3 Revision 76                
#                      Serial Build                         
#                http://www.yambo-code.org                  
#
rim_cut                      # [R RIM CUT] Coulomb potential
optics                       # [R OPT] Optics
ppa                          # [R Xp] Plasmon Pole Approximation
bss                          # [R BSS] Bethe Salpeter Equation solver
bse                          # [R BSE] Bethe Salpeter Equation.
bsk                          # [R BSK] Bethe Salpeter Equation kernel
em1d                         # [R Xd] Dynamical Inverse Dielectric Matrix
StdoHash=  40                # [IO] Live-timing Hashes
Nelectro= 20.00000           # Electrons number
ElecTemp= 0.000000     eV    # Electronic Temperature
BoseTemp= 0.000000     eV    # Bosonic Temperature
OccTresh=0.1000E-4           # Occupation treshold (metallic bands)
DBsIOoff= "none"             # [IO] Space-separated list of DB with NO I/O. DB=(DIP,X,HF,COLLs,J,GF,CARRIERs,W,SC,BS,ALL)
DBsFRAGpm= "none"            # [IO] Space-separated list of +DB to be FRAG and -DB NOT to be FRAG. DB=(DIP,X,W,HF,COLLS,K,BS,QINDX,
#FFTGvecs=  40        Ry    # [FFT] Plane-waves
#WFbuffIO                    # [IO] Wave-functions buffered I/O
NonPDirs= "none"             # [X/BSS] Non periodic chartesian directions (X,Y,Z,XY...)
RandQpts=1000000                   # [RIM] Number of random q-points in the BZ
RandGvec= 100            RL    # [RIM] Coulomb interaction RS components
#QpgFull                     # [F RIM] Coulomb interaction: Full matrix
% Em1Anys
 0.00     | 0.00     | 0.00     |        # [RIM] X Y Z Static Inverse dielectric matrix
%
IDEm1Ref=0                   # [RIM] Dielectric matrix reference component 1(x)/2(y)/3(z)
CUTGeo= "box Y"               # [CUT] Coulomb Cutoff geometry: box/cylinder/sphere X/Y/Z/XY..
% CUTBox
 0.00     | 30.00     | 0.00     |        # [CUT] [au] Box sides
%
CUTRadius= 0.000000          # [CUT] [au] Sphere/Cylinder radius
CUTCylLen= 0.000000          # [CUT] [au] Cylinder length
#CUTCol_test                 # [CUT] Perform a cutoff test in R-space
Chimod= "Hartree"            # [X] IP/Hartree/ALDA/LRC/BSfxc
BSEmod= "retarded"           # [BSE] resonant/retarded/coupling
BSKmod= "SEX"                # [BSE] IP/Hartree/HF/ALDA/SEX
BSSmod= "d"                  # [BSS] (h)aydock/(d)iagonalization/(i)nversion/(t)ddft`
BSENGexx=  25       Ry    # [BSK] Exchange components
#ALLGexx                     # [BSS] Force the use use all RL vectors for the exchange part
BSENGBlk= 6            Ry    # [BSK] Screened interaction block size
#WehDiag                     # [BSK] diagonal (G-space) the eh interaction
#WehCpl                      # [BSK] eh interaction included also in coupling
KfnQPdb= "none"              # [EXTQP BSK BSS] Database
#KfnQPdb= "E < gw/ndb.QP"              # [EXTQP BSK BSS] Database
KfnQP_N= 1                   # [EXTQP BSK BSS] Interpolation neighbours
% KfnQP_E
 1.017000 | 1.000000 | 1.000000 |        # [EXTQP BSK BSS] E parameters  (c/v) eV|adim|adim
%
KfnQP_Z= ( 1.000000 , 0.000000 )       # [EXTQP BSK BSS] Z factor  (c/v)
KfnQP_Wv_E= 0.000000   eV    # [EXTQP BSK BSS] W Energy reference  (valence)
% KfnQP_Wv
 0.00     | 0.00     | 0.00     |        # [EXTQP BSK BSS] W parameters  (valence) eV| eV|eV^-1
%
KfnQP_Wc_E= 0.000000   eV    # [EXTQP BSK BSS] W Energy reference  (conduction)
% KfnQP_Wc
 0.00     | 0.00     | 0.00     |        # [EXTQP BSK BSS] W parameters  (conduction) eV| eV|eV^-1
%
Gauge= "length"              # [BSE] Gauge (length|velocity)
#MetDamp                     # [BSE] Define \w+=sqrt(\w*(\w+i\eta))
DrudeWBS= ( 0.00     , 0.00     )  eV  # [BSE] Drude plasmon
#Reflectivity                # [BSS] Compute reflectivity at normal incidence
BoseCut=  0.10000            # [BOSE] Finite T Bose function cutoff
% BEnRange
  0.00000 | 10.00000 | eV    # [BSS] Energy range
%
% BDmRange
  0.10000 |  0.10000 | eV    # [BSS] Damping range
%
BEnSteps= 300                # [BSS] Energy steps
%
CUTRadius= 0.000000          # [CUT] [au] Sphere/Cylinder radius
CUTCylLen= 0.000000          # [CUT] [au] Cylinder length
#CUTCol_test                 # [CUT] Perform a cutoff test in R-space
Chimod= "Hartree"            # [X] IP/Hartree/ALDA/LRC/BSfxc
BSEmod= "retarded"           # [BSE] resonant/retarded/coupling
BSKmod= "SEX"                # [BSE] IP/Hartree/HF/ALDA/SEX
BSSmod= "d"                  # [BSS] (h)aydock/(d)iagonalization/(i)nversion/(t)ddft`
BSENGexx=  25       Ry    # [BSK] Exchange components
#ALLGexx                     # [BSS] Force the use use all RL vectors for the exchange part
BSENGBlk= 6            Ry    # [BSK] Screened interaction block size
#WehDiag                     # [BSK] diagonal (G-space) the eh interaction
#WehCpl                      # [BSK] eh interaction included also in coupling
KfnQPdb= "none"              # [EXTQP BSK BSS] Database
KfnQP_N= 1                   # [EXTQP BSK BSS] Interpolation neighbours
% KfnQP_E
 1.017000 | 1.000000 | 1.000000 |        # [EXTQP BSK BSS] E parameters  (c/v) eV|adim|adim
%
KfnQP_Z= ( 1.000000 , 0.000000 )       # [EXTQP BSK BSS] Z factor  (c/v)
KfnQP_Wv_E= 0.000000   eV    # [EXTQP BSK BSS] W Energy reference  (valence)
% KfnQP_Wv
 0.00     | 0.00     | 0.00     |        # [EXTQP BSK BSS] W parameters  (valence) eV| eV|eV^-1
%
KfnQP_Wc_E= 0.000000   eV    # [EXTQP BSK BSS] W Energy reference  (conduction)
% KfnQP_Wc
 0.00     | 0.00     | 0.00     |        # [EXTQP BSK BSS] W parameters  (conduction) eV| eV|eV^-1
%
Gauge= "length"              # [BSE] Gauge (length|velocity)
#MetDamp                     # [BSE] Define \w+=sqrt(\w*(\w+i\eta))
DrudeWBS= ( 0.00     , 0.00     )  eV  # [BSE] Drude plasmon
#Reflectivity                # [BSS] Compute reflectivity at normal incidence
BoseCut=  0.10000            # [BOSE] Finite T Bose function cutoff
% BEnRange
  0.00000 | 10.00000 | eV    # [BSS] Energy range
%
% BDmRange
  0.10000 |  0.10000 | eV    # [BSS] Damping range
%
BEnSteps= 300                # [BSS] Energy steps
% BLongDir
 1.000000 | 0.000000 | 0.000000 |        # [BSS] [cc] Electric Field
%
% BSEBands
  7 | 13 |                   # [BSK] Bands range
%
% BSEEhEny
-1.000000 |-1.000000 | eV    # [BSK] Electron-hole energy range
%
#WRbsWF                      # [BSS] Write to disk excitonic the WFs
#BSSPertWidth                # [BSS] Include QPs lifetime in a perturbative way
XfnQPdb= "none"              # [EXTQP Xd] Database
XfnQP_N= 1                   # [EXTQP Xd] Interpolation neighbours
% XfnQP_E
 1.017000 | 1.000000 | 1.000000 |        # [EXTQP Xd] E parameters  (c/v) eV|adim|adim
%
XfnQP_Z= ( 1.000000 , 0.000000 )       # [EXTQP Xd] Z factor  (c/v)
XfnQP_Wv_E= 0.000000   eV    # [EXTQP Xd] W Energy reference  (valence)
% XfnQP_Wv
 0.00     | 0.00     | 0.00     |        # [EXTQP Xd] W parameters  (valence) eV| eV|eV^-1
%
XfnQP_Wc_E= 0.000000   eV    # [EXTQP Xd] W Energy reference  (conduction)
% XfnQP_Wc
 0.00     | 0.00     | 0.00     |        # [EXTQP Xd] W parameters  (conduction) eV| eV|eV^-1
%
% QpntsRXp
   1 |  60 |                 # [Xp] Transferred momenta
%
% BndsRnXp
  1 | 25 |                   # [Xp] Polarization function bands
%
NGsBlkXp= 6            Ry    # [Xp] Response block size
CGrdSpXp= 100.0000           # [Xp] [o/o] Coarse grid controller
% EhEngyXp
-1.000000 |-1.000000 | eV    # [Xp] Electron-hole energy range
%
% LongDrXp
 1.000000 | 0.000000 | 0.000000 |        # [Xp] [cc] Electric Field
%
PPAPntXp= 27.21138     eV    # [Xp] PPA imaginary energy
XTermKind= "none"            # [X] X terminator ("none","BG" Bruneval-Gonze)
XTermEn= 40.81708      eV    # [X] X terminator energy (only for kind="BG")
Thank you for your help

Best regards
Tianshu Li
Jilin University
You do not have the required permissions to view the files attached to this post.
College of Materials Science and Engineering,
Jilin University, China
Institute http://dmse.jlu.edu.cn/?mod=info&act=view&id=502

User avatar
Daniele Varsano
Posts: 4198
Joined: Tue Mar 17, 2009 2:23 pm
Contact:

Re: Absorption of black phosphorus with gw+BSE

Post by Daniele Varsano » Wed Jan 17, 2018 4:53 pm

Dear Tianshu,
may you want to check the convergence with respect the BSENGexx and BndsRnXp as they look no very large but I do not know how you modeled your system.
Next please note that you are correcting your KS energy also for the calculation of the screening: (XfnQP_E) and there is not a reason to do that.
In any case please check the eigenvalues of the diagonalization of the BSE, you can do that by running the ypp executable:
ypp -e s
to be compared with the gap you find in order to calculate the binding energy in order to be quantitative instead of inspecting the absorption plots. Even if the bandgap is 2eV, there you have the onset of your IP absorption, it does not mean you find there a structured peak as it is not guaranteed that transitions have a considerable oscillator strentgh.
Finally, check the cutoff box parameter, it has to be just slightly lower than the box side along that direction. Is it your box ~30 a.u.?

Best,
Daniele
Dr. Daniele Varsano
S3-CNR Institute of Nanoscience and MaX Center, Italy
MaX - Materials design at the Exascale
http://www.nano.cnr.it
http://www.max-centre.eu/

Tianshu
Posts: 27
Joined: Wed Sep 20, 2017 8:36 am

Re: Absorption of black phosphorus with gw+BSE

Post by Tianshu » Tue Mar 20, 2018 8:05 am

Dear Daniele,

I have solved this problem, thank you for your constructive help. By the way, I also want to ask one question. When we plot the spectrum with the data in o-ybse.eps_q1_diago_bse file, do I need to use EPS_Im[2]/ EPS_Im[4] to make division with some physical parameter, like volume? Because the results I plotted show that the peak of three-layer black phosphorus is much higher than that of monolayer. Thank you for your help.


Best regards,
Tianshu Li,
Jilin University, China

User avatar
Daniele Varsano
Posts: 4198
Joined: Tue Mar 17, 2009 2:23 pm
Contact:

Re: Absorption of black phosphorus with gw+BSE

Post by Daniele Varsano » Tue Mar 20, 2018 8:49 am

Dear Thiansu,
Yes the dielectric function is well defined for a bulk system. Otherwise there is a 1/V dependence so if you want compare the response of the monolayer for calculations with different vacuum size you may normalize with the dimension of the supercell orthogonal of your layer.
Best,
Daniele
Dr. Daniele Varsano
S3-CNR Institute of Nanoscience and MaX Center, Italy
MaX - Materials design at the Exascale
http://www.nano.cnr.it
http://www.max-centre.eu/

Tianshu
Posts: 27
Joined: Wed Sep 20, 2017 8:36 am

Re: Absorption of black phosphorus with gw+BSE

Post by Tianshu » Thu Mar 22, 2018 12:36 pm

Dear Daniele,

Thank you for replying so fast. From your answer, I think the too high value of absorption peak may be related with the vacuum size. I will try to fix it by following your advice.
If I want to calculate the excitation spectrum of 2D material (like the attached figure), what should I do to get this? I'm not very clear where I should get the related value of energy level. Thank you for your patience and help.


Best regards,
Tianshu Li
Jilin University, China
You do not have the required permissions to view the files attached to this post.

User avatar
Daniele Varsano
Posts: 4198
Joined: Tue Mar 17, 2009 2:23 pm
Contact:

Re: Absorption of black phosphorus with gw+BSE

Post by Daniele Varsano » Thu Mar 22, 2018 6:40 pm

Dear Tianshu,
once you have calculated your GW/BSE response, beside the spectra you can analyze the excitation energies by using the ypp utility.
Using ypp you can have a look to the excitation energies (ypp -e s) and analyze them in terms of KS transitions (ypp -e a). Then in order to assign a character
once you have the KS orbitals involved you need to inspect the relative wave functions.
You can have a look to this part of one of the yambo tutorials:
http://www.yambo-code.org/wiki/index.ph ... e_excitons

In any case it is not really clear to me how the figure you posted it is related to an excitation spectrum of a 2D material.

Best,
Daniele
Dr. Daniele Varsano
S3-CNR Institute of Nanoscience and MaX Center, Italy
MaX - Materials design at the Exascale
http://www.nano.cnr.it
http://www.max-centre.eu/

Tianshu
Posts: 27
Joined: Wed Sep 20, 2017 8:36 am

Re: Absorption of black phosphorus with gw+BSE

Post by Tianshu » Fri Mar 23, 2018 1:51 am

Dear Daniele,

Thank you a lot for your help. I will look them now. Thank you again.

Best regards,
Tianshu Li
Jilin University, China

Tianshu
Posts: 27
Joined: Wed Sep 20, 2017 8:36 am

Re: Absorption of black phosphorus with gw+BSE

Post by Tianshu » Thu Mar 29, 2018 2:05 pm

Dear Daniele,

I have used ypp to get the exciton spatial distribution. But there are some problem about installing xcrysden in my centOS system and it's hard to solve currently. I see that gnuplot can be settled for output format (Format= "g" # Output format [(c)ube/(g)nuplot/(x)crysden]). So I want to ask how can I use gnuplot to analyse? Thank you.


Best regards,
Tianshu Li
Jilin University, China

Post Reply