Skip to content

Physical test scenario 10 - controlled skyrmion state simulation #70

Description

@AdamsMP92

Motivation

A confined isolated skyrmion in an ultrathin disk provides a focused benchmark for interfacial Dzyaloshinskii-Moriya interaction, perpendicular anisotropy, exchange, and energy minimisation.

The proposed test is based on the Walker-like 360-degree domain-wall skyrmion profile discussed in:

X. S. Wang, H. Y. Yuan, and X. R. Wang,
"A theory on skyrmion size and profile",
Communications Physics 1, 31 (2018).

This benchmark intentionally uses an effective-anisotropy model without an explicit demagnetising-field term. This keeps the reference profile sharp and makes the test primarily sensitive to exchange, perpendicular anisotropy, interfacial DMI, and relaxation.

Physical model

Consider an ultrathin ferromagnetic disk with perpendicular easy-axis anisotropy and interfacial DMI. The energy contains exchange, effective uniaxial anisotropy, interfacial DMI, and optionally a perpendicular Zeeman field:

$$E = A \int \left(\nabla\mathbf{m}\right)^2 \,dS + D \int \left[ m_z\nabla\cdot\mathbf{m} - \mathbf{m}\cdot\nabla m_z \right] \,dS + K_{\mathrm{eff}} \int \left(1-m_z^2\right) \,dS + \mu_0 M_s B \int \left(1-m_z\right) \,dS.$$

Here, $A$ is the exchange stiffness, $D$ is the interfacial DMI constant, $K_{\mathrm{eff}}$ is the effective perpendicular anisotropy, and $M_s$ is the saturation magnetisation.

The effective anisotropy corresponds to absorbing the thin-film demagnetising contribution into

$$K_{\mathrm{eff}} = K_u - \frac{1}{2}\mu_0 M_s^2.$$

For the reference parameters,

A = 15e-12           # J/m
Ms = 580e3           # A/m
Ku = 0.8e6           # J/m**3
D = 3.7e-3           # J/m**2
B = 0.0              # T

the effective anisotropy is approximately

$$K_{\mathrm{eff}} \approx 0.588\,\mathrm{MJ/m^3}.$$

The benchmark should use $K_{\mathrm{eff}}$ directly and should not include a separate demagnetising-field term.

Geometry

The reference micromagnetic simulation uses a circular disk with

diameter = 512e-9    # m
thickness = 0.4e-9   # m
cell = (1e-9, 1e-9, 0.4e-9)

The magnetisation is assumed to be uniform through the film thickness, so this is effectively a two-dimensional skyrmion profile represented on a one-cell-thick mesh.

Analytical reference profile

For a skyrmion centred at the origin, the magnetisation can be written in polar form as

$$\mathbf{m} = \begin{bmatrix} \sin\Theta(r)\cos\Phi(\phi)\\\ \sin\Theta(r)\sin\Phi(\phi)\\\ \cos\Theta(r) \end{bmatrix},$$

with

$$\Phi(\phi) = \phi$$

for a Neel-type skyrmion with the chirality selected by the sign of $D$.

The radial profile is approximated by a Walker-like 360-degree domain-wall profile,

$$\Theta(r) = 2\arctan \left[ \frac{\sinh(R_s/w)} {\sinh(r/w)} \right],$$

where $R_s$ is the skyrmion radius, defined by the $m_z=0$ contour, and $w$ is the skyrmion wall width.

For the reference parameters above, Wang et al. report a relaxed MuMax3 profile fitted by

$$R_s \approx 25.77\,\mathrm{nm}, \qquad w \approx 4.94\,\mathrm{nm}.$$

These values are the primary reference targets for the benchmark.

Proposed test setup

A one-cell-thick mesh can be used with exchange, effective uniaxial anisotropy, and interfacial DMI.

import numpy as np
import discretisedfield as df
import micromagneticmodel as mm
import oommfc as oc

mu0 = 4 * np.pi * 1e-7

A = 15e-12
Ms = 580e3
Ku = 0.8e6
D = 3.7e-3
B = 0.0

Keff = Ku - 0.5 * mu0 * Ms**2

radius = 256e-9
thickness = 0.4e-9
cell = (1e-9, 1e-9, thickness)

region = df.Region(
    p1=(-radius, -radius, 0),
    p2=(radius, radius, thickness),
)

mesh = df.Mesh(
    region=region,
    cell=cell,
)

system = mm.System(name="dmi_skyrmion_profile")

system.energy = (
    mm.Exchange(A=A)
    + mm.UniaxialAnisotropy(K=Keff, u=(0, 0, 1))
    + mm.DMI(D=D, crystalclass="Cnv")
)

The magnetisation should be defined only inside the circular disk. The initial condition can either follow the reference paper,

def initial_m(pos):
    x, y, z = pos
    r = np.sqrt(x**2 + y**2)

    if r <= 10e-9:
        return (0, 0, -1)
    return (0, 0, 1)

or use a slightly perturbed analytical skyrmion profile, for example with $R_s=20,\mathrm{nm}$ and $w=5,\mathrm{nm}$.

The system can then be relaxed using an energy-minimisation driver or strongly damped time evolution.

Fit procedure

After relaxation, extract the radial profile of $m_z(r)$ and fit it to

$$m_z(r) = \cos \left[ 2\arctan \left( \frac{\sinh(R_s/w)} {\sinh(r/w)} \right) \right].$$

The in-plane angle can also be checked against the expected Neel-type relation $\Phi(\phi)=\phi$, up to the chirality convention set by the sign of $D$.

The skyrmion centre should be fitted or determined from the $m_z$ minimum before radial averaging. This avoids falsely broadening the profile if the skyrmion shifts by a small fraction of a cell during relaxation.

Primary assertion

The fitted radius and wall width should agree with the reference values:

np.testing.assert_allclose(
    Rs_fit,
    25.77e-9,
    atol=1e-9,
)

np.testing.assert_allclose(
    w_fit,
    4.94e-9,
    atol=0.5e-9,
)

The tolerances can be adjusted after checking the sensitivity to disk mask, cell size, and fitting procedure. They should remain tight enough that the test is not merely checking whether any skyrmion survived relaxation.

Additional checks

The following quantities should be checked to guard against false positives:

$$\lVert\mathbf{m}(\mathbf{r})\rVert \approx 1$$

inside the disk,

$$Q \approx 1,$$

where $Q$ is the skyrmion number,

$$m_z(0) \approx -1, \qquad m_z(r\gg R_s) \approx 1,$$

and the fitted centre should remain close to the disk centre.

The fit residual of the radial $m_z(r)$ profile should also be bounded.

Expected value

This test would validate:

  • exchange energy in a two-dimensional nonuniform texture;
  • perpendicular effective anisotropy;
  • interfacial DMI and chirality selection;
  • relaxation of an isolated skyrmion in a confined disk;
  • recovery of the Walker-like 360-degree domain-wall profile;
  • quantitative extraction of skyrmion radius and wall width.

Compared with the spherical-vortex benchmark, this test is less complete because the demagnetising field is represented only through $K_{\mathrm{eff}}$. It is nevertheless a cleaner DMI-focused benchmark and provides a direct quantitative reference for a known analytical skyrmion profile.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Fields

No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions