Heistracher et al. — Domain wall pinning

The Heistracher et al. standard problem tests domain wall pinning at the interface of a two-phase magnetic rod. It is sensitive to discontinuities in the exchange constant $A$, uniaxial anisotropy $K$, and spontaneous polarisation $J_s$ between phases, making it a targeted test for correct interface handling.

P. Heistracher, C. Abert, F. Bruckner, T. Schrefl, D. Suess, J. Magn. Magn. Mater. 548, 168875 (2022).

Problem setup#

A cuboid rod (80 nm × 1 nm × 1 nm) is divided into two equal halves:

  • Phase I ($x < 0$): soft or hard material parameters
  • Phase II ($x \geq 0$): always hard material
ParameterHardSoft
$A$ (J/m)$1.0 \times 10^{-11}$$2.5 \times 10^{-12}$
$K$ (J/m³)$1.0 \times 10^{6}$$1.0 \times 10^{5}$
$J_s$ (T)1.000.25

The uniaxial easy axis is along $x$, damping $\alpha = 1$, and demagnetisation is neglected. A linearly increasing external field $\mu_0 H_x(t) = r \cdot t$ with $r = 2 \times 10^7$ T/s is applied. The initial magnetisation creates a domain wall at the interface.

The pinning field $\mu_0 H_p$ is defined as the field at which $\langle m_x \rangle$ exceeds 0.999.

Analytical pinning field#

$$H_p = \frac{2 K^{\mathrm{II}}}{J_s^{\mathrm{II}}} \cdot \frac{1 - \varepsilon_K \varepsilon_A}{\left(1 + \sqrt{\varepsilon_J \varepsilon_A}\right)^2}$$

where $\varepsilon_A = A^{\mathrm{I}}/A^{\mathrm{II}}$, $\varepsilon_K = K^{\mathrm{I}}/K^{\mathrm{II}}$, $\varepsilon_J = J_s^{\mathrm{I}}/J_s^{\mathrm{II}}$, and $H_p$ is in A/m (multiply by $\mu_0$ for Tesla). See Eq. (28) in Heistracher et al.

Test cases#

CaseDescription$\mu_0 H_p^{\mathrm{an}}$ (T)
akjJump in A, K, Js1.568
akJump in A, K1.089
ajJump in A, Js1.206
aJump in A only0.838
kjJump in K, Js1.005
kJump in K only0.565
jJump in Js only0.000
noneNo jump0.000

Solvers#

SolverType
magnum.afFinite-difference (GPU)
OOMMFFinite-difference (CPU)
mumax3.11Finite-difference (GPU)

All solvers use 80 cubic cells with 1 nm edge length.

Numerical pinning fields#

Case$\mu_0 H_p^{\mathrm{an}}$ (T)magnum.af (T)OOMMF (T)mumax3.11 (T)
akj1.5681.5851.5851.585
a0.8380.8680.8680.868
aj1.2061.2561.2561.256

Case akj: jump in A, K, Js#

Case akj: jump in A, K, Js

Case a: jump in A only#

Case a: jump in A only

Case aj: jump in A and Js#

Case aj: jump in A and Js