LDIAG=False has not effect for ionic relaxation

Problems running VASP: crashes, internal errors, "wrong" results.

Moderators: Global Moderator, Moderator

Post Reply
Message
Author
yihuang_xiong
Newbie
Newbie
Posts: 4
Joined: Fri Jan 21, 2022 7:05 pm

LDIAG=False has not effect for ionic relaxation

#1 Post by yihuang_xiong » Mon Jan 23, 2023 4:45 am

Dear all:

I am facing an issue regarding LDAIG=False. I am running an HSE ionic relaxation by also constraining the occupancy (ISMEAR=-2, FERWE/FERDO). In addition, I am trying to maintain the orbital ordering using LDIAG = False. However, the LDIAG setting has no effect, and the orbitals are still altered during the relaxation. I am using vasp 6.3.2. Please find the input/output of the calculation attached below. May I have your suggestions on this? Thank you very much!
ldiag.zip
Best wishes,
Yihuang
You do not have the required permissions to view the files attached to this post.

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

Re: LDIAG=False has not effect for ionic relaxation

#2 Post by martin.schlipf » Mon Jan 23, 2023 6:47 am

Please consider the advice in this thread and see if it resolves the issue.

yihuang_xiong
Newbie
Newbie
Posts: 4
Joined: Fri Jan 21, 2022 7:05 pm

Re: LDIAG=False has not effect for ionic relaxation

#3 Post by yihuang_xiong » Mon Jan 23, 2023 2:33 pm

Thank you for the response!

Yes, we have applied the fix before, and the input occupancies are indeed enforced. The issue is that the order of orbitals is still altered even though the LDIAG = False is set, which is relevant to delta-scf calculation.

Thanks!

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

Re: LDIAG=False has not effect for ionic relaxation

#4 Post by martin.schlipf » Wed Jan 25, 2023 8:24 am

Could you tell me what exactly you want to happen and what happens instead? I looked at the occupancies in your output and they seem to be conserved for the minority spin where you introduced the hole.

Code: Select all

#step 1
    123       8.2982      1.00000
    124       9.1949      0.00000
    125       8.9684      1.00000
    126      10.7604      1.00000
    127      11.5504      0.00000

Code: Select all

#step 2
    123       8.5305      1.00000
    124       9.7322      0.00000
    125       8.6236      1.00000
    126      10.8127      1.00000
    127      11.5165      0.00000

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

Re: LDIAG=False has not effect for ionic relaxation

#5 Post by martin.schlipf » Wed Jan 25, 2023 8:31 am

PS: Please further note that the wiki only recommends LDIAG = FALSE with ALGO = Damped (VeryFast does not apply for hybrids).

yihuang_xiong
Newbie
Newbie
Posts: 4
Joined: Fri Jan 21, 2022 7:05 pm

Re: LDIAG=False has not effect for ionic relaxation

#6 Post by yihuang_xiong » Wed Jan 25, 2023 8:41 pm

Thanks a lot for the response!

I am trying to turn off the subspace diagonalization to conserve the orbital order during the ionic relaxation.

In this example calculation, I made a hole at band 124 and moved the electron to band 126 for the minority spin, both bands are mainly contributed by the silicon defect. In step 2, there is still a hole at band 124, but now this band is from the C valence band. The previous band 124 (from Si defect) is now band 125 and is occupied. It seems the reordering is still performed though LDAIG=False is set. This happens for both ALGO=Damped and ALGO=All. As a comparison, In vasp 5.4.4, band 124 is conserved throughout the ionic relaxation with LDAIG=False.

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

Re: LDIAG=False has not effect for ionic relaxation

#7 Post by martin.schlipf » Thu Jan 26, 2023 9:10 am

I feel I'm missing a bit of the context here. Can you state the instructions to exactly produce what you are seeing? What I'm looking for is something along these lines:
  1. All steps use the KPOINTS, POSCAR, and POTCAR from the original post
  2. Run VASP with the following INCAR file ..., look at the PROCAR(?) file, and observe that ...
  3. Change the INCAR file to ... and run VASP again. Then the PROCAR(?) file shows these occupations ... but I would expect ... instead.
  4. In VASP.5.4.4, the same steps yield these occupations instead ...

yihuang_xiong
Newbie
Newbie
Posts: 4
Joined: Fri Jan 21, 2022 7:05 pm

Re: LDIAG=False has not effect for ionic relaxation

#8 Post by yihuang_xiong » Thu Jan 26, 2023 8:30 pm

I am sorry for the confusion. Please find the cleaned-up version of the input/output files attached to this post. Here are the steps to reproduce this issue.

I am running a Si defect in the diamond:

In VASP 6.3.2

1. Use INCAR, KPOINTS, POSCAR, and POTCAR in folder vasp6/step1/ to perform scf calculation.
1. Observed: In PROCAR, minority spin, band 104 shows strong contributions from Si. This is as expected.

2. Restart using WAVECAR, POSCAR, KPOINTS from step 1 and use INCAR in folder vasp6/step2 to perform NSW=2 ionic relaxation. I moved the electron from band 104 to band 106 for the minority spin. LDIAG=False force band 104 corresponds to Si.
1. Expected: In PROCAR, minority spin, band 104 shows contributions from Si.
2. Observed: In PROCAR, minority spin, band 104 shows no contributions from Si. Instead, band 105 shows a strong contribution from Si.

In VASP 5.4.4, following the same procedure, band 104 shows contributions from Si in PROCAR as expected after step2. The results are also included in folder vasp5/step2.

The issue is how LDIAG=False performs during ionic relaxation. In addition, both ALGO = All / Damped do not change the observations.
You do not have the required permissions to view the files attached to this post.

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

Re: LDIAG=False has not effect for ionic relaxation

#9 Post by martin.schlipf » Fri Jan 27, 2023 7:30 am

Thanks for the comprehensive report, I will investigate and get back to you.

Post Reply