# Constrained atomic magnetic moments

### This page gives hints on how to perform calculation with constrained atomic magnetic moments with the ABINIT package.

##### Copyright (C) 2016-2017 ABINIT group (EB)

Mentioned in help_features#2.5.

### Table of content:

- 1. Introduction.
- 2. Related input variables.
- 3. Selected input files.
- 4. References.

### 1. Introduction.

A complementary magnetic constraint method has been implemented in the ABINIT code, wherein the magnetization around each atom is pushed to a desired (vectorial) value. The constraint can either be on the full vector quantity, $\vec{m}$, or only on the direction m. This is mainly useful for non collinear systems, where the direction and amplitude of the magnetic moment can change. The method follows that used in the Quantum Espresso [Moscaconte2007] and VASP [Ma2015] codes: a Lagrangian constraint is applied to the energy, and works through a resulting term in the potential, which acts on the different spin components. The magnetization in a sphere Ωi around atom i at position Ri is calculated as:

m =∫Ωi m(r) dr

and the corresponding potential for spin component α is written as:

Vα = 2 λ f(| r-Ri| / rs) cα

The function f(x) = x2(3+x(1+x(-6+3x))), is applied to smooth the transition near the edge of the sphere around Ri, over a thickness rs (by default 0.05 bohr, and f is set to 0 for | r-Ri|> rs). This minimizes discontinuous variations of the potential from iteration to iteration.

The constraint is managed by the keyword magconon. Value 1 gives a constraint on the direction (c = m - si (si.m), value 2 gives a full constraint on the vector (c = m - si), with respect to the keyword spinat (si above), giving a 3-vector for each atom. The latter is quite a stringent constraint, and often may not converge. The former value usually works, provided sufficient precision is given for the calculation of the magnetic moment (kinetic energy cutoff in particular).

The strength of the constraint is given by the keyword magcon_lambda (λ above - real valued). Typical values are 10-2 but vary strongly with system type: this value should be started small (here the constraint may not be enforced fully) and increased. A too large value leads to oscillations of the magnetization (the equivalent of charge sloshing) which do not converge. A corresponding Lagrange penalty term is added to the total energy, and is printed to the log file, along with the effective magnetic field being applied. In an ideal case the energy penalty term should go to 0 (the constraint is fully satisfied).
Go to the top

### 2. Related input variables.

Useful input variables:

... magcon_lambda [MAGnetization CONstraint LAMBDA parameter]
... magconon [turn MAGnetization CONstraint ON]
... ratsph [Radii of the ATomic SPHere(s)]
... spinat [SPIN for AToms]
Go to the top

### 3. Selected input files.

WARNING : as of ABINITv8.6.x, the list of input files provided in the specific section of the topics Web pages is still to be reviewed/tuned. In some cases, it will be adequate, and in other cases, it might be incomplete, or perhaps even useless.
The user can find some related example input files in the ABINIT package in the directory /tests, or on the Web:

tests/v7/Input: t05.in
Go to the top

### 4. References.

[Ma2015] Pui-Wai Ma and S. L. Dudarev, "Constrained density functional for noncollinear magnetism", Phys. Rev. B 91, 054420 (2015).
[Moscaconte2007] A. Mosca Conte, "Quantum mechanical modeling of nano magnetism", PhD thesis (SISSA, Trieste Italy, 2007).
URL: http://hdl.handle.net/20.500.11767/3935.

Go to the top