NSCF calculation necessary before DOS and band structure calculation?

Queries about input and output files, running specific calculations, etc.


Moderators: Global Moderator, Moderator

Locked
Message
Author
reynaldo.putra
Newbie
Newbie
Posts: 16
Joined: Wed Jan 24, 2024 7:33 pm

NSCF calculation necessary before DOS and band structure calculation?

#1 Post by reynaldo.putra » Thu Mar 28, 2024 2:51 am

Hello everyone. I heard that NSCF calculations are necessary before DOS and band structure calculations in Quantum Espresso. Does the same apply in VASP? Or is geometry optimization followed by one SCF calculation enough to prepare for DOS and band structure?

martin.schlipf
Global Moderator
Global Moderator
Posts: 542
Joined: Fri Nov 08, 2019 7:18 am

Re: NSCF calculation necessary before DOS and band structure calculation?

#2 Post by martin.schlipf » Thu Mar 28, 2024 7:46 am

For a DOS calculation you do not need a two step process, you can generate the DOS in the same run. However, you often want to switch to a denser k-point mesh for the DOS and change to tetrahedron smearing (ISMEAR). Hence, it may still be a good idea to run a subsequent NSCF run where you set ICHARG = 11.

For the band structure, it is strictly necessary to run an NSCF calculation. The high-symmetry k-point path does not adequately sample the Brillouin zone and the density is usually quite different from the true density. So you would get different physical properties.

To simplify these runs, we introduced KPOINTS_OPT. This is a second k-point file with the same format as the regular one and VASP will run a NSCF calculation after the end of the SCF calculation with these k points.

Martin Schlipf
VASP developer


reynaldo.putra
Newbie
Newbie
Posts: 16
Joined: Wed Jan 24, 2024 7:33 pm

Re: NSCF calculation necessary before DOS and band structure calculation?

#3 Post by reynaldo.putra » Thu Mar 28, 2024 3:12 pm

Thank you very much!

One question. If I run a geometric optimization using tetrahedron smearing (ISMEAR = -5) from the start, would the optimization differences be significant enough compared to ISMEAR = 0?

Second, how should I set up the input file for the subsequent NSCF run for the DOS calculation? If I use KPOINTS_OPT, do I still need to include ICHARG = 11?

martin.schlipf
Global Moderator
Global Moderator
Posts: 542
Joined: Fri Nov 08, 2019 7:18 am

Re: NSCF calculation necessary before DOS and band structure calculation?

#4 Post by martin.schlipf » Thu Mar 28, 2024 5:02 pm

We do not recommend to run geometry optimization with ISMEAR = -5, because it is not well suited for metals. For insulators, the results should agree.

To run a NSCF for the DOS, you need to add ICHARG = 11 and increase the density in the KPOINTS file.

If you use KPOINTS_OPT, you don't need to set ICHARG but the output will not be written to the usual DOSCAR file. Instead you should use the hdf5 output, e.g., with py4vasp

Code: Select all

import py4vasp
calc = py4vasp.Calculation.from_path("/path/to/vasp/calculation")
calc.dos.plot()

Martin Schlipf
VASP developer


reynaldo.putra
Newbie
Newbie
Posts: 16
Joined: Wed Jan 24, 2024 7:33 pm

Re: NSCF calculation necessary before DOS and band structure calculation?

#5 Post by reynaldo.putra » Thu Mar 28, 2024 6:32 pm

Thank you!

What about for semiconductor materials such as oxides, nitrides and oxynitrides?

What is the rule of thumb of increasing the KPOINTS density compared to the optimization KPOINTS?

martin.schlipf
Global Moderator
Global Moderator
Posts: 542
Joined: Fri Nov 08, 2019 7:18 am

Re: NSCF calculation necessary before DOS and band structure calculation?

#6 Post by martin.schlipf » Fri Mar 29, 2024 7:33 am

If the bandgap is larger than a few hundred meV, it should not depend on whether you use Gaussian or tetrahedron smearing. When the bandgap is comparable to SIGMA, the results start to deviate. In that case, converging the Gaussian smearing (e.g. SIGMA → 0) should converge to the result of the tetrahedron smearing.

As for the choice of the KPOINTS density for the NCSF run: This is just for a nice looking DOS, so you would typically push this until the resulting figure does not change anymore. Typically you may use a 2-3 times denser mesh.

Martin Schlipf
VASP developer


reynaldo.putra
Newbie
Newbie
Posts: 16
Joined: Wed Jan 24, 2024 7:33 pm

Re: NSCF calculation necessary before DOS and band structure calculation?

#7 Post by reynaldo.putra » Thu Apr 04, 2024 6:15 pm

Thank you for your replies!

I have now tried running some calculations using the KPOINTS_OPT keyword. However, I only realized now that the resulting calculations don't have the vaspout.h5 file. As a result, py4vasp is incapable of generating the PDOS (I am using VASP 6.1.2)

1) What should I do in order to generate the vaspout.h5 file? I would rather not run the calculations again because they are hybrid func. calculations and they take a long time.
2) Is there a way to generate the PDOS using other methods?

Thank you again for your attention
Last edited by reynaldo.putra on Thu Apr 04, 2024 6:20 pm, edited 1 time in total.

martin.schlipf
Global Moderator
Global Moderator
Posts: 542
Joined: Fri Nov 08, 2019 7:18 am

Re: NSCF calculation necessary before DOS and band structure calculation?

#8 Post by martin.schlipf » Fri Apr 05, 2024 6:47 am

This feature is not available in VASP 6.1.2. py4vasp requires VASP 6.2 or later.

Without that you can still get a PDOS in a conventional way of running a NSCF calculation and then manually parsing the resulting DOSCAR file. There are some Python tools that already have implemented parsers so you can use those instead of doing the parsing manually.

Martin Schlipf
VASP developer


Locked