Skip to Content.
Sympa Menu

forum - Re: [abinit-forum] Question about el-phon gk,k+q matrix elements calculated in abinit

forum@abinit.org

Subject: The ABINIT Users Mailing List ( CLOSED )

List archive

Re: [abinit-forum] Question about el-phon gk,k+q matrix elements calculated in abinit


Chronological Thread 
  • From: "张�s" <zhangting1980323@gmail.com>
  • To: forum@abinit.org
  • Subject: Re: [abinit-forum] Question about el-phon gk,k+q matrix elements calculated in abinit
  • Date: Mon, 19 Nov 2007 23:25:03 +0800
  • Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=beta; h=received:message-id:date:from:to:subject:in-reply-to:mime-version:content-type:references; b=OaEHOMfe58EVK41FURu7n2WuCjECJm20WPgqHJf3n52qAtNCTIqqfsZ19jLJF0tDmt/MdixcIsWTnZ+uJO3tWNofrzsciiCM6CZeAKk8IkE2eLzlccqc9gsPDaqfUZ4873jr0KTHxSQQr2ubi9a+1leiXx7VfBHMR+rTBrkFj38=

Dear Matthieu Verstraete:

    Thanks for your reply.
1) The routine  I mentioned is  nmsq_gam.F90, which do scalar product with eigenvectors and do not sum over bands. The code version is 5.3.4

 2)  I do not mean the second *eigvec. I've noticed that both the gkq_1band and the gkk_qpt_tmp are squared values, so double multiplication  {vector*mat*vector+}  is natural. I mean the gkq_1band = displ_red*gkq_xyz *displ_red+, and  gkq_qpt_tmp=  eigvec*gkq_1band*eigvec+.  Already multiplied with displ_red and displ_red+,  the  routine  makes  additional  multiplication  with  eigvec and  eigvec+.  I think gkq_1band is already the elph matrix element |g(k,k+q,v,ib1,ib2)|^2, if disregarding some difference in units. You said  this is for interpolation, I haven't understood its meaning clearly, and will think it through.

3) In my opinion, also, if the diagonal elements are large they should stay large after multiplied with eigvec and eigvec+. But what confusing me, my results are opposite. Large diagonal  elements in gkq_1band, like gkq_1band(ib1,ib1,ik,q=3* 0.0,mod=60) (in magnitude of about 10e-7 or -8), are just corresponding to small diagonal elements in gkk_qpt_tmp, like
gkk_qpt_tmp(ib1,ib1,ik,q=3*0.0,mod=60).(in magnitude of about 10e-22), See my attached results(one file contains gkq_1band data, and the other contains calculated gkk_qpt_tmp. ik=iFSkpt, ib1,ib2 from 1 to 4, corresponding to minFSband and maxFSband). In fact This is the most confusing fact for me. You mean the gkk_qpt_tmp is not in phonon mode representation, or in other words, it is not the expected value |g(k,k+q,ib1,ib2,ph-mode)|^2 , but some value like |g(k,k+q,ib1,ib2,x,y,z)|^2 ? So If I'd like to calculate el-ph scattering rate, I should not begin with gkk_qpt_tmp, isn't it? If so , shall I begin with gkq_1band? or begin with values introduced in the later routine like intergrate_gamma? Ok, I'll go and check it. 

Thanks again for your  reply!

Regards

                                      Zhang Ting
                                      Peking Univ.
                                      Nov,19th, 2007

2007/11/19, Matthieu Verstraete <mjv500@york.ac.uk>:

Which version of abinit are you using? There are 3 versions of the
nmsq_gam routine, depending on whether you sum over bands or not and
whether you do the scalar product with the eigvec or not (one combination
is missing for the moment: no sum over bands but do the scalar product).
nmsq_gam.F90 is the case where no summing is done.

http://www.abinit.org/package/robodoc_5.4.4/17ddb/nmsq_gam_F90.html#robo_top_of_doc

In all cases a temporary array, with summed and scalar producted matrix
elements, is made to output Matteo's QPT averages, which do not have any
interpolation etc...

> gkk_qpt_tmp and the gkq_1band output, and these two matrix are related with:
>
>              gkk_qpt_tmp = eigvec * gkq_1band * eigvec+
>
>     I got puzzled for this representation. The gkq_1band matrix is already
> multiplied with reduced phonon displacement matrix displ_red,  and  what's
> the meaning of  this multiply-again operation? Is it an unit transform?
Do you mean the second *eigvec? The gkk_qpt_tmp are actually a matrix
which is closer to the phonon linewidths. These are related to the mat
elem squared, hence the double "vector matrix vector" product. A second
reason is just a basis change to cartesian coordinates (see below as
well), where an interpolation can be done consistently: the phonon
eigenvectors change from q to q' and can not be used in any simple way to
interpolate.

>  Also, when I check these two gkk matrix, I found that the gkq_1band
> satisfies the symmetry induced selection rule while gkk_qpt_tmp does not.
> For example, for a (5,5) CNT, phonon mode 60 at Gamma point is with A1g
> representation of D10h group, and related el-ph scattering selection rule is
> that intraband scattering should be allowed and interband scattering should
> be forbbiden. In gkq_1band, this selection rule is well satisfied( means
> that gkq_1band(ib1,ib1,ibranch=60,q=3*0.0) is much larger than
> gkq_1band(ib1,ib2,ibranch=60,q=3*0.0)), while in gkk_qpt_tmp, which is
> multiplied with eigvectors of phonon,  the  result is  just  opposite,
> gkk_qpt_tmp(ib1,ib1,ibranch=60,q=3*0.0) is  much  smaller  than  other

That should be impossible: the whole subroutine is looping over ib1 ib2,
so if the diagonal elements are large they should stay larger, no? What
may be confusing the analysis is that the matrix multiplication takes you
to cartesian coordinates, and not to phonon-eigenmode space, so the
identification of the irrep is not straightforward. Later in the code
(mkph_linwid after the Fermi surface averaging in integrate_gamma) the
gamma matrices (remember ~ phonon linewidths) are diagonalized, which
should restore the symmetry groups. This would be an interesting test.

Matthieu

--
================================================================
Dr. Matthieu Verstraete                 mailto:mjv500@york.ac.uk
Dept. of Physics, University of York,     tel: +44 1904 43 22 08
Heslington, YO10 5DD York, United Kingdom fax: +44 1904 43 22 14

Attachment: gkk_qpt_tmp_mod_60.ascii
Description: Binary data

Attachment: gkq_1band_mod_60.ascii
Description: Binary data




Archive powered by MHonArc 2.6.16.

Top of Page