NSCF calculation necessary before DOS and band structure calculation?
Moderators: Global Moderator, Moderator
-
- Newbie
- Posts: 16
- Joined: Wed Jan 24, 2024 7:33 pm
NSCF calculation necessary before DOS and band structure calculation?
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?
-
- Global Moderator
- Posts: 542
- Joined: Fri Nov 08, 2019 7:18 am
Re: NSCF calculation necessary before DOS and band structure calculation?
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.
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
-
- Newbie
- Posts: 16
- Joined: Wed Jan 24, 2024 7:33 pm
Re: NSCF calculation necessary before DOS and band structure calculation?
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?
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?
-
- Global Moderator
- Posts: 542
- Joined: Fri Nov 08, 2019 7:18 am
Re: NSCF calculation necessary before DOS and band structure calculation?
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
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
-
- Newbie
- Posts: 16
- Joined: Wed Jan 24, 2024 7:33 pm
Re: NSCF calculation necessary before DOS and band structure calculation?
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?
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?
-
- Global Moderator
- Posts: 542
- Joined: Fri Nov 08, 2019 7:18 am
Re: NSCF calculation necessary before DOS and band structure calculation?
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.
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
-
- Newbie
- Posts: 16
- Joined: Wed Jan 24, 2024 7:33 pm
Re: NSCF calculation necessary before DOS and band structure calculation?
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
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.
-
- Global Moderator
- Posts: 542
- Joined: Fri Nov 08, 2019 7:18 am
Re: NSCF calculation necessary before DOS and band structure calculation?
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.
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