Page 1 of 1

EPS-Re[3] column is always 1 in 5.0.4

Posted: Sat Feb 26, 2022 8:16 pm
by sitangshu
Hi!
I am using the recent version 5.0.4 and I see this strange unity coloumn: The EPS-Re[3] column is always 1. I am using the BN 2D with Coulomb cut-off for testing purpose. Is this a bug? The older 4.X do not show this. The 5.0.4 output is like:

Code: Select all

 # Absorption @ Q(1):  0.707106781E-5  0.707106781E-5   0.00000000    [q->0 direction]
#
# [GEN] GF Energies                               : Slater exchange(X)+Perdew & Zunger(C)
# [GEN] Wavefunctions                             : Slater exchange(X)+Perdew & Zunger(C)
# [GEN] Green`s Function                          : Resonant
# [GEN] Gauge                                     : Length
# [GEN] [r,Vnl] included                          : yes
#
# DIP band range                                  :   2   7
# DIP band range limits                           :   4   5
# DIP e/h energy range                            :  -1.00000000     -1.00000000    [eV]
# RL vectors in the sum                           :  17229
# [r,Vnl] included                                : yes
# Bands ordered                                   : yes
# Direct v evaluation                             : no
# Approach used                                   : G-space v
# Dipoles computed                                : R V P
# Wavefunctions                                   : Slater exchange(X)+Perdew & Zunger(C)
#
#
#
# [K] Identifier                                  :   8920
# [K] Dimension                                   :  1296
# [K] Bands                                       :   2   7
# [K] Exchange                                    : yes
# [K] Correlation                                 : yes
# [K] Kernel`s coupling                           : no
# [K] Exchange                                    : no
# [K] Correlation                                 : no
# [K] W interaction is bare                       : no
# [K] ALDA kernel in R-space                      : no
# [K] RL vectors                                  :  17385 [exchange]
# [K] RL vectors                                  :  111 [correlation]
# [K] E/h energy range                            :  -1.00000000     -1.00000000    [eV]
# [K] Coupling range                              :   100.000000      100.000000    [o/o]
# [W] Interaction is diagonal                     : no
# [W] Matrix size                                 :  111
# [W] Bands                                       :    1  100
# [W] e/h energy range                            :  -1.00000000     -1.00000000    [eV]
# [W] Poles                                       :   100.000000    [o/o]
# [W] RL vectors in the sum                       :  17229
# [W] [r,Vnl] included                            : yes
# [W] Field direction                             :  0.707106781E-5  0.707106781E-5   0.00000000   
# [W] Coulomb Cutoff                              : box z
# [W] xc-Kernel                                   : none
# [RIM] RL components                             :  111 [col]
# [RIM] Random points                             :  1000000 [col]
# [SOC] Perturbative SOC                          : no
#
#    Diamagnetic term
#    A [nel]            A0[nel]
#:     0.00000000        -7.99999997   
#
#    E/ev[1]            EPS-Im[2]          EPS-Re[3]          EPSo-Im[4]         EPSo-Re[5]
#
     0.0000000         0.11069849E-09      1.0000000         0.45363860E-10      1.0000000    
    0.14028056E-01     0.11123339E-09      1.0000000         0.45501625E-10      1.0000000    
    0.28056112E-01     0.11177226E-09      1.0000000         0.45640035E-10      1.0000000    
    0.42084168E-01     0.11231515E-09      1.0000000         0.45779095E-10      1.0000000    
    0.56112224E-01     0.11286209E-09      1.0000000         0.45918808E-10      1.0000000    
    0.70140281E-01     0.11341312E-09      1.0000000         0.46059178E-10      1.0000000    
    0.84168337E-01     0.11396829E-09      1.0000000         0.46200210E-10      1.0000000    
    0.98196393E-01     0.11452763E-09      1.0000000         0.46341908E-10      1.0000000    
    0.11222445         0.11509120E-0

Re: EPS-Re[3] column is always 1 in 5.0.4

Posted: Sat Feb 26, 2022 11:17 pm
by Daniele Varsano
Dear Sitangshu,
it is not a bug, please see in the FAQ on the Yambo website:
https://www.yambo-code.eu/learn/#FAQs

When calculating absorption spectra using the truncated Coulomb cutoff, I notice a very small number in the imaginary macroscopic dielectric function, and the static real part is one, is that a problem?


Best,
Daniele

Re: EPS-Re[3] column is always 1 in 5.0.4

Posted: Sun Feb 27, 2022 10:15 am
by sitangshu
Many thanks, Daniele for the clarity. I understood.
I also observe that Slepc procedure do not work beyond the Tamm-Dancoff appx. Is that true?

Regards

Re: EPS-Re[3] column is always 1 in 5.0.4

Posted: Mon Feb 28, 2022 6:11 pm
by Daniele Varsano
Dear Sitangshu,

in line of principle, it should work also beyond TD approximation, but I'm not an expert on that, what problem are you facing?

Best,
Daniele

Re: EPS-Re[3] column is always 1 in 5.0.4

Posted: Tue Mar 08, 2022 6:50 am
by sitangshu
Hi Daniele,

I ran a BN script by taking diagonalization and slepc solvers with "coupling" conditions. The diago script runs without any problem, but the slepc produces NAN. The inputs for slpec doesn't look arbitrary though.
The same file when I run using "resonant" + slepc condition, works nice. I am attaching the files along with the "coupling"+slepc log file. The log file doesnt show any error.
That is the reason why I asked if slepc work beyond TDA?

Regards,
Sitangshu

Re: EPS-Re[3] column is always 1 in 5.0.4

Posted: Tue Mar 08, 2022 3:01 pm
by Davide Sangalli
Dear Sitangshu,
indeed there was a bug.

Below a patch to fix the issue.

Code: Select all

diff --git a/src/dipoles/DIPOLE_driver.F b/src/dipoles/DIPOLE_driver.F
index a29dff79f..6c9ece9f3 100644
--- a/src/dipoles/DIPOLE_driver.F
+++ b/src/dipoles/DIPOLE_driver.F
@@ -62,7 +62,9 @@ subroutine DIPOLE_driver(Xen,Xk,Xq,Dip)
  use DIPOLES,        ONLY:P_square
 #endif
  use BS,             ONLY:BSE_prop,l_BS_magnons,l_BS_dichroism,l_BS_photolum
-
+#if defined _SLEPC && !defined _NL
+ use BS_solvers,     ONLY:BSS_mode
+#endif
  use timing_m,       ONLY:timing
  !
  implicit none
@@ -91,6 +93,9 @@ subroutine DIPOLE_driver(Xen,Xk,Xq,Dip)
  l_BS_dichroism= (index(BSE_prop,'dich')/=0)
  l_BS_photolum= (index(BSE_prop,'photolum')/=0)
  if (l_BS_dichroism.or.l_BS_magnons) Dip%bands_ordered=.false.
+#if defined _SLEPC && !defined _NL
+ if ( index(BSS_mode,'s')/=0 )  Dip%bands_ordered=.false.
+#endif
  !
 #if defined _NL
  if (l_nl_optics) then
The fix will enter in the next release.

Best,
D.