Page 1 of 1

Local Modified Becke-Johnson Pontential resulting in a band gap of 0

Posted: Mon May 12, 2025 11:32 pm
by jonathan_evarts

I am attempting to calculate a band gap in GaN with a N vacancy using the local modified becke-johnson potential; however, in post processing (using pymatgen) the band gap is consistently 0.0 eV. I believe, the post-processing result is due to the fermi energy adjusted to the bottom of the CBM. Pymatgen automatically returns Eg = 0 eV if the material is identified as a metal, i.e. the fermi level overlaps the band value.

Initially i thought this was due to using the tetrahedral method (ISMEAR=-5) and how vasp calculates the fermi energy, which was changed in 6.1, https://www.vasp.at/forum/viewtopic.php ... ral#p19779. So I tried setting ISMEAR=0 and SIGMA=0.05, but I got the same result. So investigating a little more, I found that vasp 6.4 implemented a new keyword, EFERMI=MIDGAP, to correct this issue, see https://www.vasp.at/forum/viewtopic.php?f=4&t=18201. Using ISMEAR=-5 and EFERMI=MIDGAP resulted in the same, Eg=0 eV.

Looking at the DOS plots, you can see that a band gap should exist. So in post-processing, using pymatgen, I set the fermi level to the same fermi level of a pristine GaN structure. Then I got a band gap > 0.0. However, I would prefer to not subjectively assign a fermi level in post processing to get a band gap.

Based on all this does anyone have an idea on how to get vasp to correctly assign the fermi level.

Also, i am using the local mBJ functional as the normal mBJ does not perform well for heterogenous structures.

Attached are the input files for the band gap calculation using ISMEAR=-5 and EFERMI=MIDGAP. I am using vasp 6.4.3. Thanks for any assistance!

DOS.png

Re: Local Modified Becke-Johnson Pontential resulting in a band gap of 0

Posted: Thu May 15, 2025 3:54 pm
by jonathan_lahnsteiner2

Dear Jonathan Evarts,

For pristine GaN a band gap would be expected. But since you are computing a system of 54(Ga3+) and 53(N3-) your system is not charge neutral anymore and 3 electrons are missing.
So what you could try is to compute

  • compute DOS of pristine GaN in primitive cell
    compute DOS of pristine GaN in super cell which should be very similar to first calculation
    compute DOS defect GaN without ionic relaxation and compare to the DOS of the previously super cell calculation
    and last compute the DOOS of defect GaN with ionic relaxation

The DOS of your second and third calculation should look similar, except that you can expect a shift in the Fermi energy and some defect states will be added. By trying this you should be able to gain more insight in what is happening in your simulation.

All the best Jonathan