[gpaw-users] Imaginary part of GW self-energy
Kuisma, Mikael
mikael.j.kuisma at jyu.fi
Tue Jun 2 00:54:04 CEST 2020
Hi!
>My question is, do I need to also modify the xc/exx.py and xc/tools.py to have them
calculate an imaginary part of the exact exchange contribution?
Without knowing the exact structure of the code, I would argue that no. All exchange-correlation functionals implemented in GPAW have no memory, and hence their kernel is local in time delta(t-t'), which has a constant Fourier transform. And the Hilbert transformation (to get the imaginary part from the real part) of a constant function is zero. Due to causality requirements (Kramers-Kronig relations), there is no dissipation in TDDFT without memory, and thus all electron-hole excitations have infinite lifetimes in TDDFT with common non-memory xc-functionals such as LDA and GGA. Exact exchange i.e. Hartree-Fock is also time-local, and similar arguments apply (Fock-operator has no memory as it depends directly on the instantaneous density matrix). Thus, in GW, the hot electron lifetimes come only from the imaginary part of the GW self energy iGW.
BR,
Mikael
________________________________
Lähettäjä: gpaw-users-bounces at listserv.fysik.dtu.dk <gpaw-users-bounces at listserv.fysik.dtu.dk> käyttäjän Anton Bykov via gpaw-users <gpaw-users at listserv.fysik.dtu.dk> puolesta
Lähetetty: maanantai 1. kesäkuuta 2020 15.45
Vastaanottaja: gpaw-users at listserv.fysik.dtu.dk <gpaw-users at listserv.fysik.dtu.dk>
Aihe: [gpaw-users] Imaginary part of GW self-energy
Dear gpaw-users,
I am trying to estimate hot electron lifetimes from G0W0 calculation to support experimental data. According to the literature for that I need an imaginary part of the quasiparticle self-energy. Now as far as I understand GPAW by default only calculates the real part of it so I am trying to modify the code to be able to do it.
The changes in the correlation part of self-energy seem straightforward. Apart from array declarations, summations and output I only seem to need to modify two lines (568 and 569) in response/g0w0.py i.e.:
sigma1 = p * np.dot(np.dot(myn_G, C1_GG), n_G.conj()).imag
sigma2 = p * np.dot(np.dot(myn_G, C2_GG), n_G.conj()).imag
My question is, do I need to also modify the xc/exx.py and xc/tools.py to have them
calculate an imaginary part of the exact exchange contribution? If so, which lines need to be modified?
Thank you in advance,
Anton Bykov
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://listserv.fysik.dtu.dk/pipermail/gpaw-users/attachments/20200601/e86a9c71/attachment-0001.html>
More information about the gpaw-users
mailing list