Page 1 of 1

MPA in 2D systems: BZ sampling?

Posted: Wed Mar 25, 2026 12:00 am
by csk
Dear all!

When trying to use the MPA with 2D systems (MoS2 monolayer in this case), I encounter the following behavior (gap and VBM/CBM at the Gamma point!):

Convergence w.r.t. the BZ sampling within the Godby-Needs PPM:
kpt bnd_x bnd_g cutoff (Ry) gap vbm cbm
6x6x1 200 200 4 3.91217 -0.87991 3.03226
12x12x1 200 200 4 3.88638 -0.83605 3.05033

Using the RIM and RIM-W parameters for 2D systems, the QP energies are already converged (to within 50 meV here) with a 12x12x1 k-mesh, as it should be. Now the same thing for MPA with 'ETStpsXm = 8' (converged vs. 16 poles):

kpt bnd_x bnd_g cutoff (Ry) gap vbm cbm
6x6x1 600 600 16 5.12461 -1.82519 3.29942
6x6x1 200 200 4 5.20877 -1.37231 3.83646
12x12x1 200 200 4 4.37506 -0.96955 3.40551
24x24x1 200 200 4 3.98923 -0.79276 3.19647
48x48x1 200 200 4 3.82818 -0.66470 3.16348

The first line, in comparison to the second line, shows the convergence w.r.t. the bands (both for X and G) and the cutoff, both using a 6x6x1 k-mesh.

What am I doing wrong here? Why is the convergence w.r.t. the k-mesh much slower in this case? Is there something else to consider for the MPA in 2D systems? I attach the QE and Yambo input files, as well as the respective report files to this post.

Thanks for your explanations!
Christian

Re: MPA in 2D systems: BZ sampling?

Posted: Thu Mar 26, 2026 8:49 am
by Giacomo Sesti
Dear Christian,

I agree this is indeed strange.
Could you please tell us what version of Yambo you are using? I cannot find the report file of the MPA and PPA calculations (these also could be useful)

Thanks

Best,
Giacomo

Re: MPA in 2D systems: BZ sampling?

Posted: Thu Mar 26, 2026 4:04 pm
by csk
Hi Giacomo!

Here are the report files. As you can see, I am using version 5.3.

Thanks,
Christian

Re: MPA in 2D systems: BZ sampling?

Posted: Fri Mar 27, 2026 10:29 am
by Giacomo Sesti
Hello Christian,

so looking at your reports, it seems the RIM-W procedure it is not activated at all for the mpa calculation, this explains the very slow convergence.
This is a small annoying bug that I thought it was solved, but apparently it is still present in yambo 5.3.

I would suggest, if possible, to switch to yambo 5.4, there mpa+rim_w is working correctly.
By the way, in your input I would also add the line rimw_type='semiconductor'. This is not strictly necessary in yambo 5.4 as this is the default, however the rimw_interpolation is customed also for other cases (2D Dirac bands, metal).

Best,
Giacomo

Re: MPA in 2D systems: BZ sampling?

Posted: Fri Mar 27, 2026 2:47 pm
by nilesh12
Dear all,
I am trying to implement MPA for GW calculation in a 2D system. Can someone please provide me the right fully command to generate correct input file for the same?
It'll be really helpful.

Thank you

Re: MPA in 2D systems: BZ sampling?

Posted: Fri Mar 27, 2026 6:01 pm
by Giacomo Sesti
Dear Nilesh,

to generate an input file for a GW mpa calculation of a 2D system, I would proceed as follows:

Code: Select all

yambo -F input.in -gw0 m -g n -hf -X m -r -rw
note that the m stands for mpa. The -r flag activates the calculation of the RIM Coulomb potential and allows to set a cutoff.
The -r flag instead activates the RIM-W procedure, in case you need it.

Best,
Giacomo

Re: MPA in 2D systems: BZ sampling?

Posted: Mon Mar 30, 2026 12:33 pm
by nilesh12
Dr. Sesti,
Thank you for your kind reply and the command to generate input file. It's really helpful.
I have another stupid question, how to converge these quantity on Hartree-Fock level in case of metals (when i run HF part, i got band gap 'NaN').
EXXRLvcs= 152857 RL # [XX] Exchange RL components
VXCRLvcs= 152857 RL # [XC] XCpotential RL components


I am just following standard procedure as semiconductor for metals too. So, please guide me in this direction too.

Thank you

Giacomo Sesti

Posted: Mon Mar 30, 2026 2:05 pm
by Giacomo Sesti
Dear Nilesh,

In case you want to converge EXXRLvcs and VXCRLvcs for a metal, I would consider energy differences between occupied and unoccupied states. I would expect the band gap reported by Yambo to be null as it is dealing with a metal.
Nevertheless, also using the maximum value of EXXRLvcs and VXCRLvcs should not be a problem, unless you have computational limitations.

Best,
Giacomo

Re: MPA in 2D systems: BZ sampling?

Posted: Mon Mar 30, 2026 2:09 pm
by Daniele Varsano
Dear Nilesh,

you have a NaN it is possible there is some miscompilation/linking of the linear algebra libraries, you can try to use the internal linear algebra using "--enable-int-linalg" option in the configure script and see if this solves the problem.

Best,
Daniele