Page 1 of 2

GaN example and abs(g)

Posted: Thu Apr 20, 2017 3:44 pm
by andreyl
Dear EPW developers and users,

I am trying to reproduce GaN example results. Following the treads
http://epwforum.uk/viewtopic.php?f=3&t=34
http://epwforum.uk/viewtopic.php?f=3&t=214
I made the small additions to the ephwann_shuffle.f90 code which now outputs the
content of epf17 variable in the following way:

Code: Select all

       ! After the epf17 was assigned for every k. For every iq of nqf:
       wq = wf(11, iq)
       absg = ryd2mev*(abs( epf17(18, 18, 11, 1) )**two)/(two*wq)
       write(9000,'(3E16.6, E16.6)'),xqf(:,iq),absg


       CALL stop_clock ( 'ep-interp' )
       !
    ENDDO  ! end loop over q points
    !
  ENDIF ! end parallel_k

Where indexes stand for highest occupied band number, highest frequency phonon band and first (Gamma) k-point.

My question is:
It is repeatedly said, |g_q|^2 is to be averaged over degenerate bands and modes.
For example, the index of the highest frequency phonon mode in A special point for GaN is 12, however there is a degeneracy in this point and mode 11 has the same frequency.
The same for the highest occupied electronic band: bands 17 and 18 have the same energy in A.
As I understand it, the correct |g_q|^2 for k=Gamma q=A for the highest occupied band and highest frequency should be found for every degenerate state and band at q=A and than averaged.
Is it correct, or am I missing something?

Another small comment, in scf.in file in phonon directory of EPW/gan/ example, which is present on the QE download page for QE6.1:
http://qe-forge.org/gf/project/q-e/frs/?action=FrsReleaseBrowse&frs_package_id=18
http://qe-forge.org/gf/download/frsrelease/240/1072/qe-6.1-examples.tar.gz
the k points are set up by:

Code: Select all

K_POINTS automatic
 6 6 4 0 0 0

According to tutorial description, it should be 6 6 6 0 0 0.

--
Best wishes,
Andrei Lugovski

Re: GaN example and abs(g)

Posted: Fri Apr 21, 2017 3:11 pm
by sponce
Dear Andrei,

Yes, you are correct. You need to average the g on degenerate electronic bands and phonon modes.
So if you have two bands degeneracy (actually at k=Gamma for the VBM, it should be 3 fold degenerate in GaN for the bands). For the q=A it should indeed be 2 fold degenerate.

Therefore, you should sum the 6 numbers and then divide by 6 (average).

Thank you for reporting the inconsistency.

Best,

Samuel

Re: GaN example and abs(g)

Posted: Tue Apr 25, 2017 5:15 pm
by andreyl
Dear Samuel,

thank you very much for the answer.
Could you please also specify, how were the black points on
http://epw.org.uk/Documentation/GaN
|g_q| figure obtained? Was it a QE calculation ( e.g. electron_phonon='simple'/'interpolated')?

Best,
Andrei

Re: GaN example and abs(g)

Posted: Wed Apr 26, 2017 4:40 pm
by sponce
Dear Andrei,

That is correct. The points are direct DFPT calculations done directly in QE (I hacked the code to print the g).

Best,

Samuel

Re: GaN example and abs(g)

Posted: Tue May 02, 2017 1:32 pm
by andreyl
Dear Samuel,

can you please specify if the nmodes index in the epf17

epf17 (ibndmax-ibndmin+1, ibndmax-ibndmin+1, nmodes, nkf)

correspond to indexes in wf(:,:)? E.g. wf(:,nmodes) would give the proper frequency for the corresponding elph-coupling mat. element?
(my |g_A|^2 are still too low and I am searching for the source of the mistake).


Best wishes,

Andrei

Re: GaN example and abs(g)

Posted: Wed May 03, 2017 10:40 am
by sponce
Hello,

Yes, they should be the same in the same order.

Best,

Samuel

Re: GaN example and abs(g)

Posted: Wed May 03, 2017 5:07 pm
by andreyl
Ok, I see, thanks.

Does the same goes for the electronic bands indexes?

I am still unable to reproduce the figure 1 from the documentation.
I do apply the write statements inside ( in the end ) of loop over q points inside the parallel_k if statement, is this correct?

p.s.
Could you please allow the affiliation change for my forum profile?

Re: GaN example and abs(g)

Posted: Thu May 04, 2017 5:53 pm
by sponce
Hello,

For the bands, you need to be carefull between the total number of bands (nb of bands in nscf), the number of bands that you wannierized and the number of bands within fsthick.

What affiliation do you want to have? I can manually add it if you cannot.

Re: GaN example and abs(g)

Posted: Fri May 12, 2017 12:19 pm
by andreyl
Hello again,

sponce wrote:For the bands, you need to be carefull between the total number of bands (nb of bands in nscf), the number of bands that you wannierized and the number of bands within fsthick.


Thank you for the clue. I hacked fermiwindow.f90 to output, what exactly falls into fsthick,

what I get is:

Code: Select all

ikn =     1 kp =         0.000000        0.000000        0.000000
ibnd    14  ebnd         9.856528
ibnd    15  ebnd         9.856528
ibnd    16  ebnd        10.885934
ibnd    17  ebnd        10.937451
ibnd    18  ebnd        10.937451
ikn =     2 kp =         0.000000        0.000000        0.000000
ibnd    14  ebnd         9.856528
ibnd    15  ebnd         9.856528
ibnd    16  ebnd        10.885934
ibnd    17  ebnd        10.937451
ibnd    18  ebnd        10.937451

(energy is in eV)

The band numbers and energies do reasonably agree with nscf output. And thus ibnd 17 and 18 (highest occupied bands at Gamma) would go to epf17 with indexes 5 and 6, I belive.
I also wonder why both ik=1 and ik=2 correspond to k=Gamma in xkf (fine k point grid (3, nkqf), according to elph2.f90), does it have to do with k and k+q grids? Could you please clarify that? And, if both ik=1 and ik=2 represent Gamma, should I also include epf17 elements with for ik=2 into the calculation of |g|^2 for k=Gamma and q=A?
When I do that, however I still get tiny value of |g|^2 average (something like 0.65 meV against expected 100 meV)

Re: GaN example and abs(g)

Posted: Fri May 26, 2017 10:19 pm
by sponce
Hello,

You should not get exactly the same eigenvalues as nscf as they have been interpolated. However they should be very close (or else the interpolation is not good).

Indeed xkf contains k1, then k1+q, then k2 etc ..

You should only include k1 for k=Gamma. However you should either use all the equivalent q=A (depending on sym it could be 6 or so) or use the proper weighting factor. You have to do an average over the equivalent q=A if they are not exactly the same.
You also need to do an average over degenerate eigenenergies, phonon modes etc.

You just need to be consistent with what is computed in elphon inside QE/PH. I do not remember exactly but you might have to do an average there as well.
I do not know how you got the 100 meV reference one. Is it printed by QE? In my case I directly printed them from the code both from QE and EPW for comparison so I'm not sure how you got the 100 meV?

By doing the same thing you should get the same values.

Best,

Samuel