Supported as of VASP.4.5.

`LSORBIT`=.TRUE. switches on spin-orbit coupling and automatically sets
`LNONCOLLINEAR`= .TRUE..
This option works only for PAW potentials and is not supported for ultrasoft pseudopotentials.
If spin-orbit coupling is not included, the energy does not depend on the direction
of the magnetic moment, *i.e.* rotating *all* magnetic moments by the same
angle results exactly in the same energy.
Hence there is no need to define the spin quantization axis, as long as
spin-orbit coupling is not included.
Spin-orbit coupling, however, couples
the spin to the crystal structure. Spin orbit coupling is switched on by selecting

LSORBIT = .TRUE. SAXIS = s_x s_y s_z (quantisation axis for spin) GGA_COMPAT = .FALSE. ! apply spherical cutoff on gradient fieldwhere the default for

Where is the externally visible magnetic moment. Here, is the angle between the

The inverse transformation is given by

It is easy to see that for the default , both angles are zero,

The second important case, is and . In this case

Hence now the magnetic moment is parallel to the vector

To initialise calculations with the magnetic moment parallel to a chosen vector , it is therefore possible to either specify (assuming a single atom in the cell)

MAGMOM = x y z ! local magnetic moment in x,y,z SAXIS = 0 0 1 ! quantisation axis parallel to zor

MAGMOM = 0 0 total_magnetic_moment ! local magnetic moment parallel to SAXIS SAXIS = x y z ! quantisation axis parallel to vector (x,y,z)Both setups should in principle yield exactly the same energy, but for implementation reasons the second method is usually more precise. The second method also allows to read a preexisting WAVECAR file (from a collinear or non collinear run), and to continue the calculation with a different spin orientation. When a non collinear WAVECAR file is read, the spin is assumed to be parallel to

The recommended procedure for the calculation of magnetic anisotropies is therefore
(please check the section on `LMAXMIX` 6.63):

- Start with a collinear calculation and calculate a WAVECAR and CHGCAR file.
- Add the tags
LSORBIT = .TRUE. ICHARG = 11 ! non selfconsistent run, read CHGCAR LMAXMIX = 4 ! for d elements increase LMAXMIX to 4, f: LMAXMIX = 6 ! you need to set LMAXMIX already in the collinear calculation SAXIS = x y z ! direction of the magnetic field NBANDS = 2 * number of bands of collinear run GGA_COMPAT = .FALSE. ! apply spherical cutoff on gradient field

VASP reads in the WAVECAR and CHGCAR files, aligns the spin quantization axis parallel to`SAXIS`, which implies that the magnetic field is now parallel to`SAXIS`, and performs a non selfconsistent calculation. By comparing the energies for different orientations the magnetic anisotropy can be determined. Please mind, that a completely selfconsistent calculation (`ICHARG`=1) is in principle also possible with VASP, but this would allow the the spinor wavefunctions to rotate from their initial orientation parallel to`SAXIS`until the correct groundstate is obtained, i.e. until the magnetic moment is parallel to the easy axis. In practice this rotation will be slow, since reorientation of the spin gains little energy. Therefore if the convergence criterion is not too tight, sensible results might be obtained even for fully selfconsistent calculations (in the few cases we have tried selfconsistentcy worked without problems). - Be very careful with symmetry. We recommend to switch off symmetry (
`ISYM`=0) altogether, when spin orbit coupling is selected. Often the k-point set changes from one to the other spin orientation, worsening the transferability of the results (also the WAVECAR file can not be reread properly if the number of k-points changes). The flag`GGA_COMPAT`is usually required and should be set, since magnetic anisotropy energies are often in the sub meV regime (see Sec. 6.42). - Generally be extremely careful, when using spin orbit coupling
and, specifically, magnetic anisotropies: energy
differences are tiny, k-point convergence is tedious and slow, and the computer time
might be huge. Additionally, this feature--
although long implemented in VASP-- is still in a
*late beta stage*, as you might deduce from the frequent updates. No promise, that your results will be useful! Here is a small summary from the README file:- 20.11.2003: The present GGA routine breaks the symmetry slightly for non orthorhombic cells. A spherical cutoff is now imposed on the gradients and all intermediate results in reciprocal space. This changes the GGA results slightly (usually by 0.1 meV per atom), but is important for magnetic anisotropies.
- 05.12.2003: continue... Now VASP.4.6 defaults to the old behavior
`GGA_COMPAT`=.TRUE., the new behavior can be obtained by setting`GGA_COMPAT`=.FALSE. in the INCAR file. - 12.08.2003: MAJOR BUG FIX in symmetry.F and paw.F: for non-collinear calculations the symmetry routines did not work properly

- If you have read the previous lines, you will realize that it is recommended to set
`GGA_COMPAT`=.FALSE. for non collinear calculations in VASP.4.6 and VASP.5.2, since this improves the numerical precision of GGA calculations.