Different state ordering with FERWE/FERDO y LDIAG = .FALSE between VASP 5.4.4 and 6.6.1

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


Moderators: Moderator, Global Moderator

Post Reply
Message
Author
wilver_muriel
Newbie
Newbie
Posts: 1
Joined: Mon Aug 31, 2026 9:19 pm

Different state ordering with FERWE/FERDO y LDIAG = .FALSE between VASP 5.4.4 and 6.6.1

#1 Post by wilver_muriel » Sat Sep 26, 2026 5:59 pm

When constrained occupations are used, i.e., ISMEAR = -2 and LDIAG = .FALSE., together with FERWE and FERDO, the ordering of the states appears to be preserved only in the spin channel in which the excitation is performed.

To investigate this behavior, I performed the following test: I calculated the excitation of a carbon dimer in hBN using a (4\times4) supercell and 100 bands. The system has two defect-related levels corresponding to bands 64 and 65. Band 64 is predominantly composed of the \(p_z\) orbital of carbon atom 32, whereas band 65 is predominantly composed of the \(p_z\) orbital of carbon atom 31. Band 64 is initially occupied, while band 65 is unoccupied. The excitation was performed in the spin-up channel by occupying band 65 and leaving band 64 unoccupied.

I then performed a structural relaxation using VASP 5.4.4 and VASP 6.6.1. The results were as follows:

VASP 5.4.4: the ordering of the states is preserved in both spin channels. This behavior was verified by examining the orbital contributions to the bands in the PROCAR file (PROCAR_5.4.4):

spin up

band 64
...
29 0.000 0.000 0.009 0.000 0.000 0.000 0.000 0.000 0.000 0.009
30 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000
31 0.000 0.000 0.037 0.000 0.000 0.000 0.000 0.000 0.000 0.037
32 0.000 0.000 0.192 0.000 0.000 0.000 0.000 0.000 0.000 0.192
tot 0.000 0.000 0.513 0.000 0.000 0.000 0.000 0.000 0.000 0.513

band 65
...
29 0.000 0.000 0.025 0.000 0.000 0.000 0.000 0.000 0.000 0.025
30 0.000 0.000 0.005 0.000 0.000 0.000 0.000 0.000 0.000 0.005
31 0.000 0.000 0.204 0.000 0.000 0.000 0.000 0.000 0.000 0.204
32 0.000 0.000 0.024 0.000 0.000 0.000 0.000 0.000 0.000 0.024
tot 0.000 0.000 0.512 0.000 0.000 0.000 0.000 0.000 0.000 0.512

spin down

band 64
...
30 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000
31 0.000 0.000 0.029 0.000 0.000 0.000 0.000 0.000 0.000 0.029
32 0.000 0.000 0.226 0.000 0.000 0.000 0.000 0.000 0.000 0.226
tot 0.000 0.000 0.518 0.000 0.000 0.000 0.000 0.000 0.000 0.518

band 65
...
30 0.000 0.000 0.005 0.000 0.000 0.000 0.000 0.000 0.000 0.005
31 0.000 0.000 0.184 0.000 0.000 0.000 0.000 0.000 0.000 0.184
32 0.000 0.000 0.024 0.000 0.000 0.000 0.000 0.000 0.000 0.024
tot 0.000 0.000 0.499 0.000 0.000 0.000 0.000 0.000 0.000 0.499

VASP 6.6.1: the ordering of the states is preserved in the spin-up channel; however, in the spin-down channel, the ordering of the states changes. This behavior can be observed from the band contributions in the PROCAR file (PROCAR_6.6.1):

spin up

band 64
...
30 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000
31 0.000 0.000 0.040 0.000 0.000 0.000 0.000 0.000 0.000 0.040
32 0.000 0.000 0.188 0.000 0.000 0.000 0.000 0.000 0.000 0.188
tot 0.000 0.000 0.505 0.000 0.000 0.000 0.000 0.000 0.000 0.505

band 65
...
30 0.000 0.000 0.005 0.000 0.000 0.000 0.000 0.000 0.000 0.005
31 0.000 0.000 0.195 0.000 0.000 0.000 0.000 0.000 0.000 0.195
32 0.000 0.000 0.028 0.000 0.000 0.000 0.000 0.000 0.000 0.028
tot 0.000 0.000 0.508 0.000 0.000 0.000 0.000 0.000 0.000 0.508

spin down

band 64
...
30 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000
31 0.000 0.000 0.017 0.000 0.000 0.000 0.000 0.000 0.000 0.017
32 0.000 0.000 0.237 0.000 0.000 0.000 0.000 0.000 0.000 0.237
tot 0.000 0.000 0.521 0.000 0.000 0.000 0.000 0.000 0.000 0.521

band 65
...
30 0.000 0.000 0.002 0.000 0.000 0.000 0.000 0.000 0.000 0.002
31 0.000 0.000 0.002 0.000 0.000 0.000 0.000 0.000 0.000 0.002
32 0.000 0.000 0.006 0.000 0.000 0.000 0.000 0.000 0.000 0.006
tot 0.000 0.000 0.457 0.000 0.000 0.000 0.000 0.000 0.000 0.457

In both calculations, I used only the (\Gamma) point and the same general calculation settings. I have attached the corresponding PROCAR, POSCAR, and INCAR files for both calculations.

I would like to know whether this behavior could be caused by an issue with the input files or by a change in the implementation of these options between the different VASP versions. In particular, I would like to determine whether this is expected behavior or whether it could indicate a possible bug in VASP 6.6.1.

You do not have the required permissions to view the files attached to this post.

christopher_sheldon1
Global Moderator
Global Moderator
Posts: 157
Joined: Mon Mar 25, 2024 1:36 pm

Re: Different state ordering with FERWE/FERDO y LDIAG = .FALSE between VASP 5.4.4 and 6.6.1

#2 Post by christopher_sheldon1 » Mon Sep 28, 2026 9:24 am

Dear Wilver Muriel,

Thank you for your question. Could you upload the OUTCAR files and I will look into this? Could you also tell me which POTCAR files you used?

In principle, it shouldn't matter, as both states that you are looking at are unoccupied, so they have no impact on the energy, density, or forces. Setting LDIAG = .FALSE. is likely the cause of this. In the LDIAG wiki page, it says:

Generally using LDIAG = .FALSE. is only advised, if one wants to maintain a certain orbital order, for instance, when reading the orbitals from an existing WAVECAR file.

Without LDIAG = .TRUE., the order will not be consistent between runs.

I'd recommend trying the calculation with LDIAG = .TRUE. and see if this fixes the issue.

Best wishes,

Chris


Post Reply