This thread is locked.Only browsing is available.
Top Page > Browsing
Wrong band structure of BaSnO3 from OpenMX
Date: 2021/04/21 18:35
Name: Zuzhang Lin   <>

Dear Taisuke Ozaki,
I try to use Openmx to calculate the band structure of cubic perovskite BaSnO3. I compare the bands from Openmx and vasp but I find they are totally different. I check the output file and find it has reached the convergence. I have no ideas now. Could you please help me?
I put all the information here

Best wishes
Zuzhang Lin
Page: [1]

Re: Wrong band structure of BaSnO3 from OpenMX ( No.1 )
Date: 2021/06/09 22:56
Name: T. Ozaki


I also performed the same calculation and found that the overcompleteness problem of
basis functions actually happens in your system.

I reduced the number of basis functions and got the following band structure:

As for the position of Fermi level, please refer
(For the figure I have set the origin of energy to the valence band top,
so that the two band structures can be easily compared.)

Especially, the third s-orbital of Sn is resposible for the overcompleteness.
The overall feature of the band structure of BaSnO3 calculated by both the codes looks similar.
However, the band gap by OpenMX is about 0.4 eV, which seems to be smaller than that
by your VASP calculation.

So, I have checked the corresponding band structure of BaSnO3 in MaterialsProject, and
found that the band structure by calculated by VASP, shown at
also exhibits the band gap of 0.395 eV,
suggesting that the band structure by OpenMX seems to be acceptable.



Re: Wrong band structure of BaSnO3 from OpenMX ( No.2 )
Date: 2021/06/10 17:06
Name: Zuzhang Lin  <>

Dear Prof. Taisuke Ozaki,
Thank you for your detail reply. By removing the 3s orbit of Sn, I can also get the similar band with the one one put by you.
As for the bandgap, my vasp calculation is consistent with this reference
I think the small bandgap in MaterialsProject is due to that the PBE function is used. According to the reference I mentioned above, there will be soft modes in phonon dispersions of BaSnO3 if PBE is used (the case in MaterialsProject), but won't if LDA is used (the case in the reference).

In the test, we both use LDA in openmx and VASP. Therefore, I think openmx still disagrees with Vasp when LDA is used. However, I guess it is okay because band gap is a complex probelem and we can not set vasp as a stardard.

The good thing is that I am sure I didn't make stupid mistakes in openmx calculations and openmx could predict BaSnO3 as a insulator.
Thank you very much.
Re: Wrong band structure of BaSnO3 from OpenMX ( No.3 )
Date: 2021/06/10 22:54
Name: T. Ozaki


To me, the situation looks puzzling.

Lattice constant: 4.132 Ang.
Functional: LDA

Lattice constant: 4.189 Ang.
Functional: GGA

In general, the band gap by LDA is smaller than that by GGA, and the smaller lattice constant widens the band width.
Both the effects may lead to the narrower band gap. But your calculation exhibits the opposite direction.


Re: Wrong band structure of BaSnO3 from OpenMX ( No.4 )
Date: 2021/06/13 09:56
Name: Zuzhang Lin  <>

Dear Prof. Taisuke Ozaki,
Thank you for your nice comments. I made more tests and here are some information (questions):
1. There is a misunderstanding on my previous data. As I have shown in the last line in the note: when I use LDA, for openmx, the lattice constant a= 4.132 angstrom. For vasp, a=4.069 angstrom. See setails on
Therefore my lattice constant from vasp using LDA is smaller than the one from PBE (4.189 in MaterialsProject).

2. I did the calculations both using LDA and GGA by Vasp and found lattice constant a=4.069 angstrom for LDA, a=4.149 angstrom for GGA, and band gap Eg=1.30 eV for LDA, Eg=0.65 eV for GGA. Please see details on https here

It seems the band gap by LDA is larger than that by GGA. My LDA results should be right since my band structure by LDA is exactly the same with the reference

I also put the band from the reference for comparison:

I think band gap by GGA from MaterialsProject is less reliable since it is usually a rough calculation.

3. I use the basis function chose by you and did the openmx calculations. I find lattice constant a=4.15 angstrom and BaSnO3 being a metal. See details on
The input and output files are here:

4. I can only predict an insulator by openmx when I use a smaller lattice constabnt. Could you please show me you input file of openmx?
Re: Wrong band structure of BaSnO3 from OpenMX ( No.5 )
Date: 2021/06/13 22:16
Name: T. Ozaki


My input file can be found at
where I used

Ba Ba10.0-s3p2d2 Ba_CA19
Sn Sn7.0-s2p2d1 Sn_CA19
O O5.0-s2p2d1 O_CA19

scf.ProExpn.VNA off # on|off, default = on

As for scf.ProExpn.VNA, please take a look at
"scf.ProExpn.VNA off" is effective to avoid the overcompleteness.

The optimized lattice constant is 4.129 Ang. and the band gap is 0.4 eV.
Although that the result is not fullly consistent with yours, the band gap seems to be still
preserved even after optimizaiton.



Page: [1]