Page 1 of 1
Normalization of DOS by NSW parameter
Posted: Fri Feb 26, 2021 12:53 pm
by MBaeker
I just found that the total DOS in the DOSCAR seems to be divided by the parameter NSW.
I ran two simulations, one with NSW=4, one with NSW=0; the DOS of one was exactly 1/4th of the DOS of the other. I also tried with NSW=20; there the change was indeed by a factor of 20.
I know that runs with NSW>1 are problematic for calculating the DOS, but I still find this surprising.
Is this intended behaviour?
VASP version is 5.4.4
I attach the input files and the beginning of the DOSCAR (whole file is too large), one set for NSW=4, one for NSW=0.
Re: Normalization of DOS by NSW parameter
Posted: Mon Mar 01, 2021 9:42 am
by merzuk.kaltak
Dear MBaeker,
it is pointed out at the botton of
DOSCAR wiki entry, that the DOS for any relaxation (NSW>0) is useless.
Re: Normalization of DOS by NSW parameter
Posted: Mon Mar 01, 2021 9:48 am
by MBaeker
I know. Still, normalizing it by NSW seems weird.
Re: Normalization of DOS by NSW parameter
Posted: Wed Feb 25, 2026 2:13 am
by asrosen
I would argue that if there is normalizing by NSW, it should really be mentioned in the manual. The DOS is not useless from a relaxation --- it just often not done with high quality settings. Those are different. And so, it is important to understand if there is a weird normalization going on with NSW > 1.
Re: Normalization of DOS by NSW parameter
Posted: Wed Feb 25, 2026 8:23 am
by ahampel
Hi,
before this escalates let me quickly explain a bit the rationale. Please have a look at https://www.vasp.at/wiki/KBLOCK . The idea is that in MD simulations the DOS written out is averaged over the last KBLOCK ionic steps. Due to the fast that MD and ionic relaxation are very similar the same applies for ionic relaxations without MD. So as a very simple fix just add KBLOCK=1 to your INCAR file. Now the DOS is divided by 1 and not by NSW (default value of KBLOCK). I can kick off a discussion internally if we want to change this behavior if VASP detects that no MD calculation is performed, but let's say there were good reasons for doing so. I made an extra comment to the DOSCAR wiki page on the bottom now.
Best,
Alex
Re: Normalization of DOS by NSW parameter
Posted: Wed Mar 11, 2026 12:02 am
by asrosen
Thanks! Sorry if it came off as aggressive --- that wasn't the intention. An update to the documentation is plenty helpful!
Re: Normalization of DOS by NSW parameter
Posted: Wed Mar 11, 2026 7:53 am
by ahampel
All good -- we also discussed this matter internally and we will change this behavior in future releases for atomic relaxations. Unfortunately this did not make it into the recently released version 6.6.0 but I will give an update here once this happened. Meanwhile please use KBLOCK=1 to change the behavior for atomic relaxations.
Best,
Alex