Page 1 of 1

Unrealistically large m_mat elements in graphene.

Posted: Thu Feb 22, 2018 4:35 am
by ywchoi
Dear All,

I found a problem during the wannierization of graphene.
When I run the EPW code in serial mode (without mpirun),
the wannierization procedure seems to be fine
and the resulting wannier functions are consistent with what I get by directly running wannier90 code.

However, when I use mpirun with EPW,
I get unphysically large value of Omega_I during the disentanglement procedure.
This naturally ruins the wannierization procedure so that the resulting WFs become messy.

I traced the root of the problem to the variable m_mat in the EPW code.
I found that the matrix elements of m_mat are different for serial and MPI run.
In the MPI run, the values of m_mat is huge (>1e10), whereas they are order of unity in serial run.

I am wondering if this is because of a possible bug in compute_mmn_para routine.
Here is the link of the input and pseudopotential files that I have tested the above problem.
https://drive.google.com/open?id=1rlsOeIALTF2PC-KoOma1_t6HcCt51G7l

Please check this problem is reproduced in other environments.
Thank you.

p.s. I used QE distribution 6.2.1 compiled with intel compiler 18

Re: Unrealistically large m_mat elements in graphene.

Posted: Thu Feb 22, 2018 5:04 pm
by ywchoi
I found that this problem only occurs when using ultrasoft pseudopotentials.
When I run the code with the same input files but with a norm-conserving pseudo potential,
the above problem did not occur and the wannierization procedure went well.

Since I am not familiar with USPP, it is hard for me to further debug this problem.
I hope this issue will be taken care of by EPW developers.

Thank you.

Re: Unrealistically large m_mat elements in graphene.

Posted: Thu Feb 22, 2018 7:48 pm
by hlee
Hi, ywchoi:

I am really happy to meet the colleague from Yonsei; I also graduated from Yonsei.

Returning to your question:
First of all, I think that the current version of EPW is not compatible with USPPs.

In any case, although I am not developers, I can easily find one minor bug in pw2wan90epw.f90.

Find the following line:
CALL init_us_2 (npwq, igkq, xk(1,ikp), vkb)

Then, change this line as below:
CALL init_us_2 (npwq, igkq, xktot(1,ikp), vkb)

ikp is a global k point, but xk is defined locally. Thus, we have to use xktot instead of xk.

Sincerely,

Hyungjun Lee

Re: Unrealistically large m_mat elements in graphene.

Posted: Fri Feb 23, 2018 6:11 am
by ywchoi
Dear Dr. Lee,

It is nice to meet you too.
Thank you for your comment, and it seems the problem is solved when I fixed the code according to your comment.
But, as you mentioned, I decided to use NCPP in this EPW version.

Thank you,
Young Woo Choi

Re: Unrealistically large m_mat elements in graphene.

Posted: Fri Feb 23, 2018 3:02 pm
by sponce
Hello Hyungjun Lee,

I added your change to EPW. Thanks.

USPP is indeed not yet supported (I never found the time to finish this :( ).

If you have a working implementation of USPP in EPW, I would be most happy to put it inside and to credit you for it !

Best wishes,
Samuel