diople calculation

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

Weiqing Zhou
Posts: 48
Joined: Thu Sep 06, 2018 7:57 am
Location: Wuhan University

diople calculation

Post by Weiqing Zhou » Sat Nov 24, 2018 5:01 pm

Hi all,

I have a stupid question here.
I want to calculate dielectric function within RPA (-o c).
I notice that, for q1 (0,0,0), dipoles P and iR will be calculated first:

<20s> P0001: [WF] Performing Wave-Functions I/O from ./SAVE
<22s> P0001: Dipoles: P and iR (T): | | [000%] --(E) --(X)
<33s> P0001: Dipoles: P and iR (T): |# | [002%] 10s(E) 07m-13s(X)

and then enter response function calculation:
<07m-39s> P0001: Xo@q[1] | | [000%] --(E) --(X)
<07m-44s> P0001: Xo@q[1] |#################### | [052%] 05s(E) 09s(X)
<07m-48s> P0001: Xo@q[1] |########################################| [100%] 09s(E) 09s(X)

but for finite q, response function would be calculated directly after reading wavefunction from ./SAVE while dipoles are not calculated.
<21s> P0001: [WF] Performing Wave-Functions I/O from ./SAVE
<21s> P0001: [FFT-X] Mesh size: 21 21 48
<39s> P0001: [X-CG] R(p) Tot o/o(of R) : 51399 258176 100
<39s> P0001: [X] Upper matrix triangle filled
<39s> P0001: Xo@q[6] | | [000%] --(E) --(X)
<44s> P0001: Xo@q[6] |# | [004%] 05s(E) 01m-48s(X)

Q: why is dipole calculation only necessary for q1 vector? what is the difference between q=0 and finite q calculation ?
Weiqing Zhou
Phd student
Wuhan University
Wuhan, Hubei, 430072

User avatar
claudio
Posts: 526
Joined: Tue Mar 31, 2009 11:33 pm
Location: Marseille
Contact:

Re: diople calculation

Post by claudio » Sat Nov 24, 2018 5:15 pm

Dear Zhou

the difference is that for q/=0 you can calculate matrix elements directly doing

<\psi_v | exp{-i q r } | \psi_c>

while this is not possible at q=0 at you have to use the commutator

p = i [H,r]

p_{v,c} = i (e_v - e_c ) r_{v,c}

to evaluate r_{v,c}.

best
Claudio
Claudio Attaccalite
[CNRS/ Aix-Marseille Université/ CINaM laborarory / TSN department
Campus de Luminy – Case 913
13288 MARSEILLE Cedex 09
web site: http://www.attaccalite.com

Weiqing Zhou
Posts: 48
Joined: Thu Sep 06, 2018 7:57 am
Location: Wuhan University

Re: diople calculation

Post by Weiqing Zhou » Wed Jun 12, 2019 2:27 pm

Dear Claudio

Many Thanks!

I want to know the detail about how the macroscopic dielectric function is actually evaluated in yambo at q→0. Is there any paper or ref ?

Best,
Weiqing
Weiqing Zhou
Phd student
Wuhan University
Wuhan, Hubei, 430072

User avatar
claudio
Posts: 526
Joined: Tue Mar 31, 2009 11:33 pm
Location: Marseille
Contact:

Re: diople calculation

Post by claudio » Wed Jun 12, 2019 2:40 pm

Claudio Attaccalite
[CNRS/ Aix-Marseille Université/ CINaM laborarory / TSN department
Campus de Luminy – Case 913
13288 MARSEILLE Cedex 09
web site: http://www.attaccalite.com

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

Re: diople calculation

Post by Daniele Varsano » Thu Jun 13, 2019 7:42 am

Dear Weiking,
you can have a look to this recent paper about the yambo code:

It is an open access paper and you can get it at this address:
https://iopscience.iop.org/article/10.1 ... 48X/ab15d0

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/

Weiqing Zhou
Posts: 48
Joined: Thu Sep 06, 2018 7:57 am
Location: Wuhan University

Re: diople calculation

Post by Weiqing Zhou » Fri Jun 14, 2019 7:01 am

Dear Daniele,

Thanks!

What I want to know is explicit expressions of the microscopic dielectric function implemented in Yambo.
In Ref Rev. Mod. Phys.74, 601 (2002), Eq.(2.8) give the formula of so-called independent-particle-random-phase approximation macroscopic dielectric function. Does yambo use exactly same expression?
If the answer is not, what explicit formula implemented in Yambo to calculate macroscopic dielectric function ?

Best,
Weiqing
Weiqing Zhou
Phd student
Wuhan University
Wuhan, Hubei, 430072

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

Re: diople calculation

Post by Daniele Varsano » Fri Jun 14, 2019 12:12 pm

Dear Weiking,
are you interested in macrsoscopic o microscopic dielectric function, this is not clear in your post?
In the case of macroscopic you need to distinguish if local filed are included or not.
In case of independent-particle-random-phase approximation the expression is:
eps_M=1-vX^0_00
where v is the coulomb potential and X^0_00 is the G=0,G'=0 component of the independent particle response function.
the explicit expression of X^0 is reported in Eq.1 of the paper I mentioned before:
https://iopscience.iop.org/article/10.1 ... 48X/ab15d0

For the G=0,G'=0 component of X^0 dipoles are needed and there are different ways to calculate them as explained in Sec. 3.1

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/

Weiqing Zhou
Posts: 48
Joined: Thu Sep 06, 2018 7:57 am
Location: Wuhan University

Re: diople calculation

Post by Weiqing Zhou » Sat Jun 15, 2019 4:35 am

Dear Daniele,

Thanks for reply!

Maybe I did not express myself correctly. My focus is macroscopic dielectric function \epsilon(q \to 0,ω), whose definition can be found in Eq.(2.7) in Rev. Mod. Phys.74, 601 (2002).
In Eq.1 and Eq.2 of the paper https://iopscience.iop.org/article/10.1 ... 48X/ab15d0, \epsilon(q,ω) is not well-defined for the case of q = 0. And in Section 3.1, the paper gives the expression of dipole element and says \epsilon(q= 0,ω) can be calculated by using dipole elements . But I still don't know the exact expression of \epsilon(q= 0,ω) implemented in yambo.

Last post, I mention Eq.(2.8) of Rev. Mod. Phys.74, 601 (2002). It give the exact expression of Im[\epsilon(q \to 0,ω)] within independent-particle-random-phase approximation. that is why I'm asking if Yambo use same expression in case of independent-particle-random-phase approximation. If not, I want to know the exact expression of \epsilon(q= 0,ω) if local field effect is not included since I don't find it at any paper related to yambo.

Best,
Weiqing
Weiqing Zhou
Phd student
Wuhan University
Wuhan, Hubei, 430072

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

Re: diople calculation

Post by Daniele Varsano » Sat Jun 15, 2019 9:08 am

Dear Weiking,

ithe indipendent particle macroscopic dilelectric function is caluclated as:
eps_M=1-vX^0_00

v is the Coulomb potential.
X^0 is the independent particle response function.

X_GG' is given Eq.1 of the paper. For the macroscopic equation G=0 and G'=0 and the limit for q->0 need to be considered.
In this limit e^iq.r ~ 1+iq.r so the term iq.<nk|r|mk> needs to be calculated and there different way to calculate the dipole elements (Sec 3.1).

If you want to go into the code you can have a look at ./src/pol_function/OPTICS_driver.F
line 222

Code: Select all

 if (Macroscopic_CPU) Epsilon_ii(:,1)=1.0_SP-X_par(1)%blc(i_G_shift,i_G_shift,:)*4.0_SP*pi/Q_plus_G_sq_modulus
223    !
224    ! X Dyson equation solver
225    !
226    if (l_rpa_IP) then
227      !
228      if (Macroscopic_CPU) Epsilon_ii(:,2)=Epsilon_ii(:,1)
229      !
Note that with repsect the expression of RevModPhys the delta function are substituted by Lorentziam as there is always a finite damping \eta.

If the dipole is calculated as expression 3 of the paper: p+[r,Vnl] = v
and the expression is equivalent to the one of RevModPhys in the limit of the damping goes to zero.

I hope now it is more clear,
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/

a.ugolotti
Posts: 23
Joined: Fri Sep 29, 2017 3:53 pm

Re: diople calculation

Post by a.ugolotti » Thu Sep 03, 2020 12:13 pm

Hello Yamboers,

I'd take advantage of this old thread instead of opening a new one to ask a couple of additional questions about the transition dipole matrix elements.

1) on the Yambo cheatsheet, the section (2) reports the IP equation which is the result of taking the long wavelenght limit, i.e. q->0, while in section (3) about RPA-LF the more general chi/chi_0 is shown.
Only in the IP case the dipole matrix is explicitly shown; however in Yambo v 4.5 whether I calculate IP or RPA-LF optical spectra the dipoles are getting calculated and written to files in both cases. I also checked that the files are the same. From such a perspective it seems linear that the transition dipole elements can be calculated just once and then re-used; however, I found a great difference between the case in which I use an already calculated transition dipole matrix (from IP run), where I can push easily to larger values of the response block size (>3 Ry) and the case in which I do a unique calculation, which is of course longer, but I get memory issues if I don't change the job settings.
Hence I'd like to get a confirmation that for calculating the dielectric response at whatever level, namely RPA-LF with any size of NGsBlkXd parameter or to get the screening matrix, I can first calculate the IP spectrum to get the dipole databases and then using those for the next step of the calculation.

2) if the system is non-periodic along a J direction, for example setting a box Z geometry, the response at G=G'=0 is always taken into account with the above equations (and the final spectrum scaled by just a constant ~ lenght of the box) or the equations are different, and the simplification in the steps described at Q1) are not valid anymore?

Thanks in advace for your time,
Aldo Ugolotti

PhD student
Department of Materials Science
University of Milano-Bicocca
via Cozzi, 55, 20125 Milano
Italy

Post Reply