Hello,
I am having problems with non-collinear spin-orbit calculation that does not converge after many iterations.
Would you please let me know if I made a mistake in the input files below? I use VASP 6.2.1.
The OSZICAR is showing that the dE fulfils the EDIFF but the d eps is stuck. Thus, the electronic loop never finishes. This happens regardless the SAXIS value being is 1 0 0 or 0 0 1.
I also attached the OUTCAR.
Also, could you tell me the reason why in non-collinear calculation the NBANDS value has to be doubled from the collinear one?
INCAR
System = General
LREAL = .FALSE.
NPAR = 4
KPAR = 4
ISIF = 2
LWAVE = .FALSE.
LCHARG = .FALSE.
GGA = PE
METAGGA = SCAN
LASPH = .TRUE.
LMIXTAU = .TRUE.
ADDGRID = .TRUE.
ALGO = Normal
NELM = 2000
PREC = A
IBRION = -1
NSW = 0
ISYM = -1
EDIFF = 1E-05
ENCUT = 550
ENAUG = 650
ISMEAR = 0
SIGMA = 0.01
LORBIT = 11
LMAXMIX = 6
LMAXTAU = 8
AMIX = 0.2
AMIX_MAG = 0.8
BMIX = 0.0001
BMIX_MAG = 0.0001
LSORBIT = .TRUE.
SAXIS = 0 0 1
MAGMOM = 12*0 0 0 5 0 0 -5 6*0 24*0
NBANDS = 176
POSCAR
Ba4 Cu2 Hg2 O8
1.00000000000000
5.5110943570964475 -0.0000000000000000 -0.0000000000000000
-0.0000000000000000 5.5110943570964475 -0.0000000000000000
-0.0000000000000000 0.0000000000000000 9.6241899892571894
Ba Cu Hg O
4 2 2 8
Direct
-0.0000000000000000 0.5000000000000000 0.3027935213623231
0.0000000000000000 0.5000000000000000 0.6972064786376768
0.5000000000000000 0.0000000000000000 0.3027935213623231
0.5000000000000000 -0.0000000000000000 0.6972064786376768
0.0000000000000000 0.0000000000000000 0.5000000000000000
0.5000000000000000 0.5000000000000000 0.5000000000000000
0.0000000000000000 0.0000000000000000 -0.0000000000000000
0.5000000000000000 0.5000000000000000 -0.0000000000000000
-0.0000000000000000 -0.0000000000000000 0.2061066482903998
0.0000000000000000 0.0000000000000000 0.7938933367096025
0.5000000000000000 0.5000000000000000 0.2061066482903998
0.5000000000000000 0.5000000000000000 0.7938933367096025
0.7500000000000000 0.2500000000000000 0.5000000000000000
0.2500000000000000 0.7500000000000000 0.5000000000000000
0.7500000000000000 0.7500000000000000 0.5000000000000000
0.2500000000000000 0.2500000000000000 0.5000000000000000
KPOINTS
Automatic mesh
0
Gamma
8 8 4
0 0 0
OSZICAR
OUTCAR
noncollinear spin-orbit calculation not converging
Moderators: Global Moderator, Moderator
-
- Newbie
- Posts: 43
- Joined: Tue Dec 17, 2019 7:56 am
noncollinear spin-orbit calculation not converging
You do not have the required permissions to view the files attached to this post.
-
- Global Moderator
- Posts: 314
- Joined: Mon Sep 13, 2021 12:45 pm
Re: noncollinear spin-orbit calculation not converging
Dear alpinnovianus,
It is recommended to use damped MD (ALGO = Damped) or conjugate gradient (ALGO = All) algorithms in combination with METAGGA functionals (see wiki). So perhaps you can try these algorithms and see if the convergence improves.
It is recommended to use damped MD (ALGO = Damped) or conjugate gradient (ALGO = All) algorithms in combination with METAGGA functionals (see wiki). So perhaps you can try these algorithms and see if the convergence improves.
In non-collinear calculations, the orbitals are represented by spinors with up and down components, hence the number of required bands should be doubled.Also, could you tell me the reason why in non-collinear calculation the NBANDS value has to be doubled from the collinear one?
-
- Newbie
- Posts: 43
- Joined: Tue Dec 17, 2019 7:56 am
Re: noncollinear spin-orbit calculation not converging
About changing the ALGO/TIME tag and changing the AMIX, AMIX_MAG tag, may I ask a question?
Can they be changed together (say reduce AMIX, AMIX_MAG to 0.05 and also setting ALGO=A with TIME=0.1)?
Can they be changed together (say reduce AMIX, AMIX_MAG to 0.05 and also setting ALGO=A with TIME=0.1)?
-
- Global Moderator
- Posts: 314
- Joined: Mon Sep 13, 2021 12:45 pm
Re: noncollinear spin-orbit calculation not converging
By default the direct optimization algorithms (ALGO = All and ALGO = Damped) do not use density mixing and should not be affected by the density mixing parameters. However, if the flag LSUBROT = .TRUE. is set, the code uses the density mixing in the subspace rotations.