Menu

possible bug in epsinv_rpa.f90, scissor forgotten

Anonymous
2016-02-04
2016-02-05
  • Anonymous

    Anonymous - 2016-02-04

    Hello,

    the third argument of the call to genvchi0 (calculation of susceptibility) at line 63 of epsinv_rpa.f90 (in version 3.3.17) which corresponds to the value of the scissor operator, is currently hard-coded to the value 0.d0.

    Consequently (and demonstrably) any value of the scissor specified in the input file is ignored in the epsilon calculation.

    If this is not a bug (who knows? maybe to prevent other problems?) then it would be better if the code stopped if the user specifies a non-zero scissor shift. I see that this function call was the same even back in elk-1.4.5; so it is not a new change.

    I get sensible results when I change the above from 0 to scissor. Of course this unintended behaviour will also affect people doing BSE calculations, if they use the scissor operator (epsilon generally being too large).

    Yours ever, with many thanks,
    Jerome Jackson.

     
  • J. K. Dewhurst

    J. K. Dewhurst - 2016-02-05

    Hi Jerome,

    Thanks for the nice question.

    It's not actually a bug. The dielectric matrix generated by epsinv_rpa.f90 is used internally for BSE calculations, and the scissor correction is applied elsewhere for calculation of the BSE dielectric function.

    For the sake of consistency, epsinv_rpa.f90 calculates the true LDA or GGA dielectric matrix (not scissor corrected) for use in other calculations.

    We are also using this unshifted epsilon for the GW approximation, which is currently being implemented.

    Regards,
    Kay.

     
  • Anonymous

    Anonymous - 2016-02-05

    Hello Kay,

    usually I have used the unscissored epsilon also, some recent stuff is an exception.

    Does the BSE implementation then only ever use the unscissored epsilon, i.e. the only effect of the scissor is on the single-particle contributions to H^BSE? I think that both unscisssored and scissored are resonable here -- if you use the scissor to emulate GW (let's say) then correspondingly the epsilon should be scissored also (my opinion). The modification to epsilon may not be small.

    Thank you for your reply. I look forward very much to the appearance of GW!!

    Yours,
    Jerome.

    edit: of course there is a big difference between GW and G0W0, yes

     

    Last edit: Anonymous 2016-02-05
  • Sangeeta Sharma

    Sangeeta Sharma - 2016-02-05

    Hi Jerome,

    As you know the BSE is statically screened, i.e. with the epsilon^-1 in the 0 frequency limit. It is well known that 0 frequency limit of scissors uncorrected epsilon_RPA is much closer to the experiments. That is why everyone uses this for screening in the BSE. In order to make sure we are comapring correcly with all previous calculations we also screen with scissors un-corrected epsilon_RPA.

    We of course tried using corrected RPA (I think for LiF) and, if I remember correctly, got quite bad results as compared to experiments.

    Now for your comment about GW-- Do there exist any GW calculations for epsilon_RPA(w=0)? How do they compare with experiments? since GW provides k-point dependent correction to the bands, I would assume the results are different from rigidly scissors corrected RPA.

    Best
    Sangeeta

     
  • Anonymous

    Anonymous - 2016-02-05

    Hello Sangeeta,

    thank you very much for your explanation -- that clarifies things.

    In my comment I wanted to express that, assuming that G~G0 apart from a rigid shift of empty states (which is surely the essence of the scissor correction), then W should be better approximated by W^0,scissored than by W0. I don't see why the static limit would be special in this sense.

    Thank you again,
    yours,
    Jerome.

     
  • Sangeeta Sharma

    Sangeeta Sharma - 2016-02-05

    Hi Jerome,

    Just do a few calculations for elsion RPA for a few materials with a wothout scissors. You will see how different the numbers are.

    The reasson is that the 0 frequency limit depends upon results at all high energies i.e. all infinite number of excited states. Small change in these ecited states shows up in this number (0 frequency limit). That is why scissors correction has a significant effect.

    Hope that helps.

     
    • Anonymous

      Anonymous - 2016-02-05

      yes, epsilon depends strongly on the gap. Thanks!

       
  • Markus

    Markus - 2016-02-05

    Hi all,

    I think the reason for using W0 in the BSE has the following reasoning:

    You start from the KS (LDA/GGA) bands. When you scissor-shift these and compute the RPA-W, then this will be underscreened, since excitons are missing. So, strictly speaking, you should put the W into the BSE which has been calculated using the BSE, so you would end up with a self-consistency cycle.

    However, that's unpractical, so you just use W0, which is closer to experiment than the scissor-shifted W0. This is pretty much the same reason why QSGW calculations give you too large band gaps: they normally rely on RPA-W, instead of BSE. If you instead use BSE to compute W in the SQGW cycle, results are almost perfect, see M. Shishkin, M. Marsman, and G. Kresse, Phys. Rev. Lett. 99, 246403 (2007). And that's basically also the reason why G0W0 works so well in weakly correlated systems.

    Regards,
    Markus

     

Log in to post a comment.