Spin-orbit without noncolinear
Moderators: Global Moderator, Moderator
-
- Newbie
- Posts: 29
- Joined: Thu Nov 14, 2019 7:38 pm
Spin-orbit without noncolinear
Dear all,
I would like to set up a calculation in which I include spin-orbit coupling. I am using VASP 6.3.2. The system has different numbers of spin up and spin down electrons but it is non magnetic (according to the non-SO SCF convergence). In the INCAR when I set the keywords:
LSORBIT = .TRUE.
LNONCOLLINEAR = .FALSE.
ISPIN = 1
I get the following error in the OUTCAR:
ERROR: non collinear calculations require that VASP is compiled |
| without the flag -DNGXhalf and -DNGZhalf
and the same if I set this:
LSORBIT = .TRUE.
LNONCOLLINEAR = .FALSE.
SAXIS = 0 0 1
MAGMOM = 63*0.0 63*0.0 63*0.0 0.0 0.0 1.0
I don't mind recompiling VASP without -DNGXhalf and -DNGZhalf flags, but it seems weird to me that I cannot set a collinear calculation with SO included. Am I doing something wrong in the INCAR?
Thank you for your help,
Pascal
I would like to set up a calculation in which I include spin-orbit coupling. I am using VASP 6.3.2. The system has different numbers of spin up and spin down electrons but it is non magnetic (according to the non-SO SCF convergence). In the INCAR when I set the keywords:
LSORBIT = .TRUE.
LNONCOLLINEAR = .FALSE.
ISPIN = 1
I get the following error in the OUTCAR:
ERROR: non collinear calculations require that VASP is compiled |
| without the flag -DNGXhalf and -DNGZhalf
and the same if I set this:
LSORBIT = .TRUE.
LNONCOLLINEAR = .FALSE.
SAXIS = 0 0 1
MAGMOM = 63*0.0 63*0.0 63*0.0 0.0 0.0 1.0
I don't mind recompiling VASP without -DNGXhalf and -DNGZhalf flags, but it seems weird to me that I cannot set a collinear calculation with SO included. Am I doing something wrong in the INCAR?
Thank you for your help,
Pascal
-
- Global Moderator
- Posts: 418
- Joined: Mon Sep 13, 2021 11:02 am
Re: Spin-orbit without noncolinear
Hello Pascal,
According to wiki/index.php/LSORBIT, if LSORBIT=.TRUE., then automatically LNONCOLLINEAR=.TRUE., which means that this is the executable vasp_ncl (and not vasp_std) that has to be used.
From you message, it is not clear what you want to obtain. A magnetic or non-magnetic solution?
According to wiki/index.php/LSORBIT, if LSORBIT=.TRUE., then automatically LNONCOLLINEAR=.TRUE., which means that this is the executable vasp_ncl (and not vasp_std) that has to be used.
From you message, it is not clear what you want to obtain. A magnetic or non-magnetic solution?
-
- Newbie
- Posts: 29
- Joined: Thu Nov 14, 2019 7:38 pm
Re: Spin-orbit without noncolinear
Hello Fabien,
Thanks for your reply.
When I run the SCF w/o SO but looking for a spin polarized solution, I end up with a 0.06 polarization. So I guess the system is not magnetic.
Since there are heavy atoms in the system (Tl, Pb, Te), I would like to include SO, but without spin polarization (something similar to a restricted-open shell HF calculation). So, I expected running it with vasp_std.
But maybe such ROHF it is not possible for solids. That's one of my questions, in fact.
I have noticed that the manual says that if LSORBIT is true, then LNONCOLLINEAR is true by default. But I thought that setting LNONCOLLINEAR to false
would allow me to run a collinear calculation including SOC.
If I cannot run a non-magnetic (i.e., ISPIN=1 + LSORBIT=.true.), how should I set up calculation with ISPIN=2, LSORBIT=.true. and spins collinear to e.g. z axis?
Thank you
Pascal
Thanks for your reply.
When I run the SCF w/o SO but looking for a spin polarized solution, I end up with a 0.06 polarization. So I guess the system is not magnetic.
Since there are heavy atoms in the system (Tl, Pb, Te), I would like to include SO, but without spin polarization (something similar to a restricted-open shell HF calculation). So, I expected running it with vasp_std.
But maybe such ROHF it is not possible for solids. That's one of my questions, in fact.
I have noticed that the manual says that if LSORBIT is true, then LNONCOLLINEAR is true by default. But I thought that setting LNONCOLLINEAR to false
would allow me to run a collinear calculation including SOC.
If I cannot run a non-magnetic (i.e., ISPIN=1 + LSORBIT=.true.), how should I set up calculation with ISPIN=2, LSORBIT=.true. and spins collinear to e.g. z axis?
Thank you
Pascal
-
- Global Moderator
- Posts: 418
- Joined: Mon Sep 13, 2021 11:02 am
Re: Spin-orbit without noncolinear
With VASP it is technically not possible to really force the magnetic moment to be zero when SO is included (with WIEN2k it is possible as you know). However, it is possible to start the SCF cycle with a non-magnetic density by setting all values of MAGMOM to zero, and then hoping that no magnetism will develop during the SCF cycle.Since there are heavy atoms in the system (Tl, Pb, Te), I would like to include SO, but without spin polarization (something similar to a restricted-open shell HF calculation). So, I expected running it with vasp_std.
But maybe such ROHF it is not possible for solids. That's one of my questions, in fact.
No, even if LNONCOLLINEAR=.FALSE. in INCAR, then it is set to .TRUE. internally if LSORBIT=.TRUE. This is done in reader.F:I have noticed that the manual says that if LSORBIT is true, then LNONCOLLINEAR is true by default. But I thought that setting LNONCOLLINEAR to false
would allow me to run a collinear calculation including SOC.
Code: Select all
IF (LSORBIT) LNONCOLLINEAR=LSORBIT
Maybe as mentioned above with MAGMOM.If I cannot run a non-magnetic (i.e., ISPIN=1 + LSORBIT=.true.), how should I set up calculation with ISPIN=2, LSORBIT=.true. and spins collinear to e.g. z axis?
-
- Newbie
- Posts: 29
- Joined: Thu Nov 14, 2019 7:38 pm
Re: Spin-orbit without noncolinear
All right, thank you for your precise answer. Actually, even if I set MAGMOM to 0. 0. 1. on Tl (the other atoms being 0. 0. 0.) ASP complains telling me that it expects to run with vasp_ncl.
Note that, it is possible to run with a spin-resticted wavefunction though with an odd number of electrons (without SOC). I have just run the job, it works.
Anyway, I am going to play around with the keywords to get an appropriate physical "answer".
Best,
Pascal
Note that, it is possible to run with a spin-resticted wavefunction though with an odd number of electrons (without SOC). I have just run the job, it works.
Anyway, I am going to play around with the keywords to get an appropriate physical "answer".
Best,
Pascal
-
- Global Moderator
- Posts: 418
- Joined: Mon Sep 13, 2021 11:02 am
Re: Spin-orbit without noncolinear
If you set MAGMOM to 0 0 1 for Tl, then that means that you want this atom to have a non-zero magnetic moment (right?), but I thought that you wanted a non-magnetic solution. If LNONCOLLINEAR or LSORBIT is set to .TRUE., then no choice: vasp_ncl has to be used.All right, thank you for your precise answer. Actually, even if I set MAGMOM to 0. 0. 1. on Tl (the other atoms being 0. 0. 0.) ASP complains telling me that it expects to run with vasp_ncl.
In a periodic system the number of electrons is infinite, so that even and odd have no meaning.Note that, it is possible to run with a spin-resticted wavefunction though with an odd number of electrons (without SOC). I have just run the job, it works.
-
- Newbie
- Posts: 29
- Joined: Thu Nov 14, 2019 7:38 pm
Re: Spin-orbit without noncolinear
Yes, you are right, I have to set MAGMOM to zero! Thanks
Pascal
Pascal