Isolated skyrmion in confined helimagnetic nanostructure

Authors: Marijan Beg, Marc-Antonio Bisotti, Weiwei Wang

Date: 26 June 2016

This notebook can be downloaded from the github repository, found here.

Problem specification

A thin film disk sample with thickness \(t=10 \,\text{nm}\) and diameter \(d=150 \,\text{nm}\) is simulated. The material is FeGe with material parameters [1]:

  • exchange energy constant \(A = 8.78 \times 10^{-12} \,\text{J/m}\),
  • magnetisation saturation \(M_\text{s} = 3.84 \times 10^{5} \,\text{A/m}\), and
  • Dzyaloshinskii-Moriya energy constant \(D = 1.58 \times 10^{-3} \,\text{J/m}^{2}\).

It is expected that when the system is initialised in the uniform out-of-plane direction \(\mathbf{m}_\text{init} = (0, 0, 1)\), it relaxes to the isolated Skyrmion (Sk) state (See Supplementary Information in Ref. 1). (Note that LLG dynamics is important, which means that artificially disable the precession term in LLG may lead to other states).

Simulation

In [1]:
from fidimag.micro import Sim
from fidimag.common import CuboidMesh
from fidimag.micro import UniformExchange, Demag, DMI

The cuboidal thin film mesh which contains the disk is created:

In [2]:
# Mesh dimensions.
d = 150  # diameter (nm)
t = 10  # thickness (nm)

# Mesh discretisation.
dx = dy  = 2.5  # nm
dz = 5

mesh = CuboidMesh(nx=int(d/dx), ny=int(d/dy), nz=int(t/dz), dx=dx, dy=dy, dz=dz, unit_length=1e-9)

Since the disk geometry is simulated, it is required to set the saturation magnetisation to zero in the regions of the mesh outside the disk. In order to do that, the following function is created:

In [3]:
def Ms_function(Ms):
    def wrapped_function(pos):
        x, y, z = pos[0], pos[1], pos[2]

        r = ((x-d/2.)**2 + (y-d/2.)**2)**0.5  # distance from the centre

        if r <= d/2:
            # Mesh point is inside the disk.
            return Ms
        else:
            # Mesh point is outside the disk.
            return 0
    return wrapped_function

To reduce the relaxation time, we define a state using a python function.

In [4]:
def init_m(pos):
    x,y,z = pos
    x0, y0 = d/2., d/2.
    r = ((x-x0)**2 + (y-y0)**2)**0.5

    if r<10:
        return (0,0, 1)
    elif r<30:
        return (0,0, -1)
    elif r<60:
        return (0, 0, 1)
    else:
        return (0, 0, -1)

Having the magnetisation saturation function, the simulation object can be created:

In [5]:
# FeGe material paremeters.
Ms = 3.84e5  # saturation magnetisation (A/m)
A = 8.78e-12  # exchange energy constant (J/m)
D = 1.58e-3  # Dzyaloshinkii-Moriya energy constant (J/m**2)
alpha = 1  # Gilbert damping
gamma = 2.211e5  # gyromagnetic ration (m/As)

# Create simulation object.
sim = Sim(mesh)
sim.Ms = Ms_function(Ms)
sim.driver.alpha = alpha
sim.driver.gamma = gamma

# Add energies.
sim.add(UniformExchange(A=A))
sim.add(DMI(D=D))
sim.add(Demag())

# Since the magnetisation dynamics is not important in this stage,
# the precession term in LLG equation can be set to artificially zero.
sim.driver.do_precession = False

# Initialise the system.
sim.set_m(init_m)

Now the system is relaxed:

In [6]:
# PYTEST_VALIDATE_IGNORE_OUTPUT
# Relax the system to its equilibrium.
sim.driver.relax(dt=1e-13, stopping_dmdt=0.01, max_steps=5000, save_m_steps=None, save_vtk_steps=None)
step=1, time=1e-13, max_dmdt=2.61e+04 ode_step=0
step=2, time=2e-13, max_dmdt=3e+04 ode_step=1.58e-14
step=3, time=3e-13, max_dmdt=3.46e+04 ode_step=2.43e-14
step=4, time=4e-13, max_dmdt=3.95e+04 ode_step=3.66e-14
step=5, time=5e-13, max_dmdt=4.43e+04 ode_step=3.66e-14
step=6, time=6e-13, max_dmdt=4.84e+04 ode_step=3.66e-14
step=7, time=7e-13, max_dmdt=5.1e+04 ode_step=3.66e-14
step=8, time=8e-13, max_dmdt=5.14e+04 ode_step=3.66e-14
step=9, time=9e-13, max_dmdt=5.05e+04 ode_step=3.66e-14
step=10, time=1e-12, max_dmdt=4.91e+04 ode_step=3.66e-14
step=11, time=1.1e-12, max_dmdt=4.63e+04 ode_step=3.66e-14
step=12, time=1.2e-12, max_dmdt=4.46e+04 ode_step=3.66e-14
step=13, time=1.3e-12, max_dmdt=4.35e+04 ode_step=3.66e-14
step=14, time=1.4e-12, max_dmdt=4.2e+04 ode_step=3.66e-14
step=15, time=1.5e-12, max_dmdt=3.99e+04 ode_step=3.66e-14
step=16, time=1.6e-12, max_dmdt=3.75e+04 ode_step=3.66e-14
step=17, time=1.7e-12, max_dmdt=3.46e+04 ode_step=3.66e-14
step=18, time=1.8e-12, max_dmdt=3.17e+04 ode_step=3.66e-14
step=19, time=1.9e-12, max_dmdt=2.88e+04 ode_step=3.66e-14
step=20, time=2e-12, max_dmdt=2.73e+04 ode_step=3.66e-14
step=21, time=2.1e-12, max_dmdt=2.58e+04 ode_step=3.66e-14
step=22, time=2.2e-12, max_dmdt=2.42e+04 ode_step=3.66e-14
step=23, time=2.3e-12, max_dmdt=2.26e+04 ode_step=3.66e-14
step=24, time=2.4e-12, max_dmdt=2.09e+04 ode_step=3.66e-14
step=25, time=2.5e-12, max_dmdt=1.93e+04 ode_step=3.66e-14
step=26, time=2.6e-12, max_dmdt=1.78e+04 ode_step=5.56e-14
step=27, time=2.7e-12, max_dmdt=1.65e+04 ode_step=5.56e-14
step=28, time=2.8e-12, max_dmdt=1.56e+04 ode_step=5.56e-14
step=29, time=2.9e-12, max_dmdt=1.48e+04 ode_step=5.56e-14
step=30, time=3e-12, max_dmdt=1.42e+04 ode_step=5.56e-14
step=31, time=3.1e-12, max_dmdt=1.36e+04 ode_step=5.56e-14
step=32, time=3.2e-12, max_dmdt=1.31e+04 ode_step=5.56e-14
step=33, time=3.3e-12, max_dmdt=1.26e+04 ode_step=5.56e-14
step=34, time=3.4e-12, max_dmdt=1.21e+04 ode_step=5.56e-14
step=35, time=3.5e-12, max_dmdt=1.16e+04 ode_step=5.56e-14
step=36, time=3.6e-12, max_dmdt=1.11e+04 ode_step=8.44e-14
step=37, time=3.7e-12, max_dmdt=1.07e+04 ode_step=8.44e-14
step=38, time=3.8e-12, max_dmdt=1.03e+04 ode_step=8.44e-14
step=39, time=3.9e-12, max_dmdt=9.88e+03 ode_step=8.44e-14
step=40, time=4e-12, max_dmdt=9.5e+03 ode_step=8.44e-14
step=41, time=4.1e-12, max_dmdt=9.14e+03 ode_step=8.44e-14
step=42, time=4.2e-12, max_dmdt=8.79e+03 ode_step=8.44e-14
step=43, time=4.3e-12, max_dmdt=8.47e+03 ode_step=8.44e-14
step=44, time=4.4e-12, max_dmdt=8.15e+03 ode_step=8.44e-14
step=45, time=4.5e-12, max_dmdt=7.86e+03 ode_step=8.44e-14
step=46, time=4.6e-12, max_dmdt=7.58e+03 ode_step=8.44e-14
step=47, time=4.7e-12, max_dmdt=7.33e+03 ode_step=8.44e-14
step=48, time=4.8e-12, max_dmdt=7.21e+03 ode_step=8.44e-14
step=49, time=4.9e-12, max_dmdt=7.09e+03 ode_step=8.44e-14
step=50, time=5e-12, max_dmdt=6.97e+03 ode_step=8.44e-14
step=51, time=5.13e-12, max_dmdt=6.83e+03 ode_step=1.28e-13
step=52, time=5.26e-12, max_dmdt=6.67e+03 ode_step=1.28e-13
step=53, time=5.38e-12, max_dmdt=6.52e+03 ode_step=1.28e-13
step=54, time=5.51e-12, max_dmdt=6.37e+03 ode_step=1.28e-13
step=55, time=5.64e-12, max_dmdt=6.21e+03 ode_step=1.28e-13
step=56, time=5.77e-12, max_dmdt=6.07e+03 ode_step=1.28e-13
step=57, time=5.89e-12, max_dmdt=5.92e+03 ode_step=1.28e-13
step=58, time=6.02e-12, max_dmdt=5.77e+03 ode_step=1.28e-13
step=59, time=6.15e-12, max_dmdt=5.63e+03 ode_step=1.28e-13
step=60, time=6.28e-12, max_dmdt=5.49e+03 ode_step=1.28e-13
step=61, time=6.4e-12, max_dmdt=5.36e+03 ode_step=1.28e-13
step=62, time=6.53e-12, max_dmdt=5.23e+03 ode_step=1.28e-13
step=63, time=6.66e-12, max_dmdt=5.09e+03 ode_step=1.28e-13
step=64, time=6.79e-12, max_dmdt=4.97e+03 ode_step=1.28e-13
step=65, time=6.91e-12, max_dmdt=4.84e+03 ode_step=1.28e-13
step=66, time=7.04e-12, max_dmdt=4.74e+03 ode_step=1.28e-13
step=67, time=7.17e-12, max_dmdt=4.66e+03 ode_step=1.28e-13
step=68, time=7.3e-12, max_dmdt=4.57e+03 ode_step=1.28e-13
step=69, time=7.42e-12, max_dmdt=4.49e+03 ode_step=1.28e-13
step=70, time=7.62e-12, max_dmdt=4.38e+03 ode_step=1.97e-13
step=71, time=7.82e-12, max_dmdt=4.25e+03 ode_step=1.97e-13
step=72, time=8.01e-12, max_dmdt=4.12e+03 ode_step=1.97e-13
step=73, time=8.21e-12, max_dmdt=4e+03 ode_step=1.97e-13
step=74, time=8.41e-12, max_dmdt=3.88e+03 ode_step=1.97e-13
step=75, time=8.6e-12, max_dmdt=3.76e+03 ode_step=1.97e-13
step=76, time=8.8e-12, max_dmdt=3.64e+03 ode_step=1.97e-13
step=77, time=9e-12, max_dmdt=3.54e+03 ode_step=1.97e-13
step=78, time=9.19e-12, max_dmdt=3.43e+03 ode_step=1.97e-13
step=79, time=9.39e-12, max_dmdt=3.32e+03 ode_step=1.97e-13
step=80, time=9.59e-12, max_dmdt=3.22e+03 ode_step=1.97e-13
step=81, time=9.78e-12, max_dmdt=3.12e+03 ode_step=1.97e-13
step=82, time=9.98e-12, max_dmdt=3.03e+03 ode_step=1.97e-13
step=83, time=1.02e-11, max_dmdt=2.93e+03 ode_step=1.97e-13
step=84, time=1.04e-11, max_dmdt=2.84e+03 ode_step=1.97e-13
step=85, time=1.06e-11, max_dmdt=2.76e+03 ode_step=1.97e-13
step=86, time=1.08e-11, max_dmdt=2.67e+03 ode_step=1.97e-13
step=87, time=1.1e-11, max_dmdt=2.59e+03 ode_step=1.97e-13
step=88, time=1.12e-11, max_dmdt=2.51e+03 ode_step=1.97e-13
step=89, time=1.14e-11, max_dmdt=2.43e+03 ode_step=1.97e-13
step=90, time=1.16e-11, max_dmdt=2.36e+03 ode_step=1.97e-13
step=91, time=1.18e-11, max_dmdt=2.29e+03 ode_step=1.97e-13
step=92, time=1.19e-11, max_dmdt=2.22e+03 ode_step=1.97e-13
step=93, time=1.23e-11, max_dmdt=2.13e+03 ode_step=3.17e-13
step=94, time=1.26e-11, max_dmdt=2.03e+03 ode_step=3.17e-13
step=95, time=1.29e-11, max_dmdt=1.93e+03 ode_step=3.17e-13
step=96, time=1.32e-11, max_dmdt=1.84e+03 ode_step=3.17e-13
step=97, time=1.35e-11, max_dmdt=1.78e+03 ode_step=3.17e-13
step=98, time=1.38e-11, max_dmdt=1.79e+03 ode_step=3.17e-13
step=99, time=1.42e-11, max_dmdt=1.8e+03 ode_step=3.17e-13
step=100, time=1.45e-11, max_dmdt=1.8e+03 ode_step=3.17e-13
step=101, time=1.48e-11, max_dmdt=1.8e+03 ode_step=3.17e-13
step=102, time=1.51e-11, max_dmdt=1.8e+03 ode_step=3.17e-13
step=103, time=1.54e-11, max_dmdt=1.8e+03 ode_step=3.17e-13
step=104, time=1.57e-11, max_dmdt=1.8e+03 ode_step=3.17e-13
step=105, time=1.61e-11, max_dmdt=1.79e+03 ode_step=3.17e-13
step=106, time=1.64e-11, max_dmdt=1.79e+03 ode_step=3.17e-13
step=107, time=1.67e-11, max_dmdt=1.78e+03 ode_step=3.17e-13
step=108, time=1.72e-11, max_dmdt=1.77e+03 ode_step=5.39e-13
step=109, time=1.78e-11, max_dmdt=1.76e+03 ode_step=5.39e-13
step=110, time=1.83e-11, max_dmdt=1.75e+03 ode_step=5.39e-13
step=111, time=1.89e-11, max_dmdt=1.73e+03 ode_step=5.39e-13
step=112, time=1.94e-11, max_dmdt=1.72e+03 ode_step=5.39e-13
step=113, time=1.99e-11, max_dmdt=1.7e+03 ode_step=5.39e-13
step=114, time=2.05e-11, max_dmdt=1.69e+03 ode_step=5.39e-13
step=115, time=2.1e-11, max_dmdt=1.67e+03 ode_step=5.39e-13
step=116, time=2.16e-11, max_dmdt=1.66e+03 ode_step=5.39e-13
step=117, time=2.21e-11, max_dmdt=1.64e+03 ode_step=5.39e-13
step=118, time=2.26e-11, max_dmdt=1.62e+03 ode_step=5.39e-13
step=119, time=2.32e-11, max_dmdt=1.61e+03 ode_step=5.39e-13
step=120, time=2.37e-11, max_dmdt=1.59e+03 ode_step=5.39e-13
step=121, time=2.42e-11, max_dmdt=1.58e+03 ode_step=5.39e-13
step=122, time=2.48e-11, max_dmdt=1.56e+03 ode_step=5.39e-13
step=123, time=2.53e-11, max_dmdt=1.55e+03 ode_step=5.39e-13
step=124, time=2.59e-11, max_dmdt=1.53e+03 ode_step=5.39e-13
step=125, time=2.64e-11, max_dmdt=1.52e+03 ode_step=5.39e-13
step=126, time=2.69e-11, max_dmdt=1.5e+03 ode_step=5.39e-13
step=127, time=2.75e-11, max_dmdt=1.49e+03 ode_step=5.39e-13
step=128, time=2.8e-11, max_dmdt=1.48e+03 ode_step=5.39e-13
step=129, time=2.86e-11, max_dmdt=1.46e+03 ode_step=5.39e-13
step=130, time=2.91e-11, max_dmdt=1.45e+03 ode_step=5.39e-13
step=131, time=2.96e-11, max_dmdt=1.44e+03 ode_step=5.39e-13
step=132, time=3.02e-11, max_dmdt=1.42e+03 ode_step=5.39e-13
step=133, time=3.07e-11, max_dmdt=1.41e+03 ode_step=5.39e-13
step=134, time=3.16e-11, max_dmdt=1.39e+03 ode_step=8.53e-13
step=135, time=3.24e-11, max_dmdt=1.37e+03 ode_step=8.53e-13
step=136, time=3.33e-11, max_dmdt=1.36e+03 ode_step=8.53e-13
step=137, time=3.41e-11, max_dmdt=1.34e+03 ode_step=8.53e-13
step=138, time=3.5e-11, max_dmdt=1.32e+03 ode_step=8.53e-13
step=139, time=3.58e-11, max_dmdt=1.3e+03 ode_step=8.53e-13
step=140, time=3.67e-11, max_dmdt=1.28e+03 ode_step=8.53e-13
step=141, time=3.75e-11, max_dmdt=1.26e+03 ode_step=8.53e-13
step=142, time=3.84e-11, max_dmdt=1.25e+03 ode_step=8.53e-13
step=143, time=3.92e-11, max_dmdt=1.23e+03 ode_step=8.53e-13
step=144, time=4.01e-11, max_dmdt=1.21e+03 ode_step=8.53e-13
step=145, time=4.1e-11, max_dmdt=1.19e+03 ode_step=8.53e-13
step=146, time=4.18e-11, max_dmdt=1.17e+03 ode_step=8.53e-13
step=147, time=4.27e-11, max_dmdt=1.15e+03 ode_step=8.53e-13
step=148, time=4.39e-11, max_dmdt=1.13e+03 ode_step=1.28e-12
step=149, time=4.52e-11, max_dmdt=1.1e+03 ode_step=1.28e-12
step=150, time=4.65e-11, max_dmdt=1.07e+03 ode_step=1.28e-12
step=151, time=4.78e-11, max_dmdt=1.04e+03 ode_step=1.28e-12
step=152, time=4.91e-11, max_dmdt=1.01e+03 ode_step=1.28e-12
step=153, time=5.03e-11, max_dmdt=984 ode_step=1.28e-12
step=154, time=5.16e-11, max_dmdt=954 ode_step=1.28e-12
step=155, time=5.29e-11, max_dmdt=925 ode_step=1.28e-12
step=156, time=5.42e-11, max_dmdt=895 ode_step=1.28e-12
step=157, time=5.55e-11, max_dmdt=865 ode_step=1.28e-12
step=158, time=5.68e-11, max_dmdt=836 ode_step=1.28e-12
step=159, time=5.8e-11, max_dmdt=806 ode_step=1.28e-12
step=160, time=5.93e-11, max_dmdt=777 ode_step=1.28e-12
step=161, time=6.06e-11, max_dmdt=749 ode_step=1.28e-12
step=162, time=6.19e-11, max_dmdt=720 ode_step=1.28e-12
step=163, time=6.32e-11, max_dmdt=693 ode_step=1.28e-12
step=164, time=6.45e-11, max_dmdt=665 ode_step=1.28e-12
step=165, time=6.57e-11, max_dmdt=639 ode_step=1.28e-12
step=166, time=6.7e-11, max_dmdt=613 ode_step=1.28e-12
step=167, time=6.83e-11, max_dmdt=587 ode_step=1.28e-12
step=168, time=6.96e-11, max_dmdt=563 ode_step=1.28e-12
step=169, time=7.09e-11, max_dmdt=547 ode_step=1.28e-12
step=170, time=7.21e-11, max_dmdt=535 ode_step=1.28e-12
step=171, time=7.34e-11, max_dmdt=522 ode_step=1.28e-12
step=172, time=7.47e-11, max_dmdt=510 ode_step=1.28e-12
step=173, time=7.6e-11, max_dmdt=497 ode_step=1.28e-12
step=174, time=7.8e-11, max_dmdt=480 ode_step=1.97e-12
step=175, time=7.99e-11, max_dmdt=460 ode_step=1.97e-12
step=176, time=8.19e-11, max_dmdt=440 ode_step=1.97e-12
step=177, time=8.39e-11, max_dmdt=420 ode_step=1.97e-12
step=178, time=8.58e-11, max_dmdt=401 ode_step=1.97e-12
step=179, time=8.78e-11, max_dmdt=382 ode_step=1.97e-12
step=180, time=8.98e-11, max_dmdt=363 ode_step=1.97e-12
step=181, time=9.17e-11, max_dmdt=345 ode_step=1.97e-12
step=182, time=9.37e-11, max_dmdt=328 ode_step=1.97e-12
step=183, time=9.57e-11, max_dmdt=312 ode_step=1.97e-12
step=184, time=9.76e-11, max_dmdt=296 ode_step=1.97e-12
step=185, time=9.96e-11, max_dmdt=281 ode_step=1.97e-12
step=186, time=1.02e-10, max_dmdt=266 ode_step=1.97e-12
step=187, time=1.04e-10, max_dmdt=253 ode_step=1.97e-12
step=188, time=1.06e-10, max_dmdt=240 ode_step=1.97e-12
step=189, time=1.07e-10, max_dmdt=228 ode_step=1.97e-12
step=190, time=1.09e-10, max_dmdt=217 ode_step=1.97e-12
step=191, time=1.11e-10, max_dmdt=207 ode_step=1.97e-12
step=192, time=1.13e-10, max_dmdt=197 ode_step=1.97e-12
step=193, time=1.15e-10, max_dmdt=187 ode_step=1.97e-12
step=194, time=1.17e-10, max_dmdt=182 ode_step=1.97e-12
step=195, time=1.19e-10, max_dmdt=181 ode_step=1.97e-12
step=196, time=1.21e-10, max_dmdt=181 ode_step=1.97e-12
step=197, time=1.24e-10, max_dmdt=180 ode_step=3.07e-12
step=198, time=1.27e-10, max_dmdt=179 ode_step=3.07e-12
step=199, time=1.3e-10, max_dmdt=178 ode_step=3.07e-12
step=200, time=1.34e-10, max_dmdt=177 ode_step=3.07e-12
step=201, time=1.37e-10, max_dmdt=175 ode_step=3.07e-12
step=202, time=1.4e-10, max_dmdt=173 ode_step=3.07e-12
step=203, time=1.43e-10, max_dmdt=172 ode_step=3.07e-12
step=204, time=1.46e-10, max_dmdt=170 ode_step=3.07e-12
step=205, time=1.49e-10, max_dmdt=168 ode_step=3.07e-12
step=206, time=1.52e-10, max_dmdt=166 ode_step=3.07e-12
step=207, time=1.55e-10, max_dmdt=164 ode_step=3.07e-12
step=208, time=1.58e-10, max_dmdt=162 ode_step=3.07e-12
step=209, time=1.61e-10, max_dmdt=160 ode_step=3.07e-12
step=210, time=1.64e-10, max_dmdt=158 ode_step=3.07e-12
step=211, time=1.67e-10, max_dmdt=156 ode_step=3.07e-12
step=212, time=1.7e-10, max_dmdt=154 ode_step=3.07e-12
step=213, time=1.74e-10, max_dmdt=152 ode_step=3.07e-12
step=214, time=1.77e-10, max_dmdt=150 ode_step=3.07e-12
step=215, time=1.8e-10, max_dmdt=148 ode_step=3.07e-12
step=216, time=1.83e-10, max_dmdt=145 ode_step=3.07e-12
step=217, time=1.86e-10, max_dmdt=143 ode_step=3.07e-12
step=218, time=1.89e-10, max_dmdt=141 ode_step=3.07e-12
step=219, time=1.92e-10, max_dmdt=140 ode_step=3.07e-12
step=220, time=1.97e-10, max_dmdt=137 ode_step=4.73e-12
step=221, time=2.01e-10, max_dmdt=135 ode_step=4.73e-12
step=222, time=2.06e-10, max_dmdt=132 ode_step=4.73e-12
step=223, time=2.11e-10, max_dmdt=130 ode_step=4.73e-12
step=224, time=2.16e-10, max_dmdt=127 ode_step=4.73e-12
step=225, time=2.2e-10, max_dmdt=125 ode_step=4.73e-12
step=226, time=2.25e-10, max_dmdt=123 ode_step=4.73e-12
step=227, time=2.3e-10, max_dmdt=121 ode_step=4.73e-12
step=228, time=2.35e-10, max_dmdt=119 ode_step=4.73e-12
step=229, time=2.39e-10, max_dmdt=117 ode_step=4.73e-12
step=230, time=2.44e-10, max_dmdt=115 ode_step=4.73e-12
step=231, time=2.49e-10, max_dmdt=113 ode_step=4.73e-12
step=232, time=2.53e-10, max_dmdt=111 ode_step=4.73e-12
step=233, time=2.58e-10, max_dmdt=109 ode_step=4.73e-12
step=234, time=2.63e-10, max_dmdt=108 ode_step=4.73e-12
step=235, time=2.68e-10, max_dmdt=106 ode_step=4.73e-12
step=236, time=2.72e-10, max_dmdt=104 ode_step=4.73e-12
step=237, time=2.77e-10, max_dmdt=103 ode_step=4.73e-12
step=238, time=2.82e-10, max_dmdt=101 ode_step=4.73e-12
step=239, time=2.89e-10, max_dmdt=99.1 ode_step=7.18e-12
step=240, time=2.96e-10, max_dmdt=96.8 ode_step=7.18e-12
step=241, time=3.03e-10, max_dmdt=94.6 ode_step=7.18e-12
step=242, time=3.11e-10, max_dmdt=92.5 ode_step=7.18e-12
step=243, time=3.18e-10, max_dmdt=90.4 ode_step=7.18e-12
step=244, time=3.25e-10, max_dmdt=89.3 ode_step=7.18e-12
step=245, time=3.32e-10, max_dmdt=88.4 ode_step=7.18e-12
step=246, time=3.39e-10, max_dmdt=87.5 ode_step=7.18e-12
step=247, time=3.46e-10, max_dmdt=86.5 ode_step=7.18e-12
step=248, time=3.54e-10, max_dmdt=85.5 ode_step=7.18e-12
step=249, time=3.61e-10, max_dmdt=84.4 ode_step=7.18e-12
step=250, time=3.68e-10, max_dmdt=83.4 ode_step=7.18e-12
step=251, time=3.8e-10, max_dmdt=81.9 ode_step=1.15e-11
step=252, time=3.91e-10, max_dmdt=80.1 ode_step=1.15e-11
step=253, time=4.03e-10, max_dmdt=78.2 ode_step=1.15e-11
step=254, time=4.14e-10, max_dmdt=76.4 ode_step=1.15e-11
step=255, time=4.26e-10, max_dmdt=74.5 ode_step=1.15e-11
step=256, time=4.37e-10, max_dmdt=72.6 ode_step=1.15e-11
step=257, time=4.49e-10, max_dmdt=70.7 ode_step=1.15e-11
step=258, time=4.6e-10, max_dmdt=68.8 ode_step=1.15e-11
step=259, time=4.72e-10, max_dmdt=66.9 ode_step=1.15e-11
step=260, time=4.83e-10, max_dmdt=65 ode_step=1.15e-11
step=261, time=4.95e-10, max_dmdt=63.2 ode_step=1.15e-11
step=262, time=5.07e-10, max_dmdt=61.4 ode_step=1.15e-11
step=263, time=5.18e-10, max_dmdt=59.7 ode_step=1.15e-11
step=264, time=5.3e-10, max_dmdt=57.9 ode_step=1.15e-11
step=265, time=5.41e-10, max_dmdt=56.3 ode_step=1.15e-11
step=266, time=5.53e-10, max_dmdt=54.7 ode_step=1.15e-11
step=267, time=5.64e-10, max_dmdt=53.1 ode_step=1.15e-11
step=268, time=5.76e-10, max_dmdt=51.6 ode_step=1.15e-11
step=269, time=5.87e-10, max_dmdt=50.1 ode_step=1.15e-11
step=270, time=5.99e-10, max_dmdt=48.7 ode_step=1.15e-11
step=271, time=6.1e-10, max_dmdt=47.3 ode_step=1.15e-11
step=272, time=6.28e-10, max_dmdt=45.5 ode_step=1.77e-11
step=273, time=6.46e-10, max_dmdt=43.5 ode_step=1.77e-11
step=274, time=6.63e-10, max_dmdt=41.5 ode_step=1.77e-11
step=275, time=6.81e-10, max_dmdt=39.7 ode_step=1.77e-11
step=276, time=6.99e-10, max_dmdt=37.9 ode_step=1.77e-11
step=277, time=7.16e-10, max_dmdt=36.3 ode_step=1.77e-11
step=278, time=7.34e-10, max_dmdt=34.7 ode_step=1.77e-11
step=279, time=7.52e-10, max_dmdt=33.2 ode_step=1.77e-11
step=280, time=7.69e-10, max_dmdt=31.7 ode_step=1.77e-11
step=281, time=7.87e-10, max_dmdt=30.3 ode_step=1.77e-11
step=282, time=8.05e-10, max_dmdt=29 ode_step=1.77e-11
step=283, time=8.22e-10, max_dmdt=27.7 ode_step=1.77e-11
step=284, time=8.4e-10, max_dmdt=26.5 ode_step=1.77e-11
step=285, time=8.68e-10, max_dmdt=25 ode_step=2.79e-11
step=286, time=8.96e-10, max_dmdt=23.3 ode_step=2.79e-11
step=287, time=9.24e-10, max_dmdt=21.7 ode_step=2.79e-11
step=288, time=9.51e-10, max_dmdt=20.2 ode_step=2.79e-11
step=289, time=9.79e-10, max_dmdt=18.8 ode_step=2.79e-11
step=290, time=1.01e-09, max_dmdt=17.5 ode_step=2.79e-11
step=291, time=1.04e-09, max_dmdt=16.3 ode_step=2.79e-11
step=292, time=1.06e-09, max_dmdt=15.2 ode_step=2.79e-11
step=293, time=1.09e-09, max_dmdt=14.2 ode_step=2.79e-11
step=294, time=1.12e-09, max_dmdt=13.2 ode_step=2.79e-11
step=295, time=1.15e-09, max_dmdt=12.3 ode_step=2.79e-11
step=296, time=1.17e-09, max_dmdt=11.5 ode_step=2.79e-11
step=297, time=1.2e-09, max_dmdt=10.7 ode_step=2.79e-11
step=298, time=1.23e-09, max_dmdt=9.95 ode_step=2.79e-11
step=299, time=1.26e-09, max_dmdt=9.27 ode_step=2.79e-11
step=300, time=1.29e-09, max_dmdt=8.64 ode_step=2.79e-11
step=301, time=1.31e-09, max_dmdt=8.05 ode_step=2.79e-11
step=302, time=1.34e-09, max_dmdt=7.51 ode_step=2.79e-11
step=303, time=1.37e-09, max_dmdt=7 ode_step=2.79e-11
step=304, time=1.4e-09, max_dmdt=6.53 ode_step=2.79e-11
step=305, time=1.42e-09, max_dmdt=6.09 ode_step=2.79e-11
step=306, time=1.45e-09, max_dmdt=5.68 ode_step=2.79e-11
step=307, time=1.5e-09, max_dmdt=5.2 ode_step=4.33e-11
step=308, time=1.54e-09, max_dmdt=4.67 ode_step=4.33e-11
step=309, time=1.58e-09, max_dmdt=4.19 ode_step=4.33e-11
step=310, time=1.63e-09, max_dmdt=3.76 ode_step=4.33e-11
step=311, time=1.67e-09, max_dmdt=3.37 ode_step=4.33e-11
step=312, time=1.71e-09, max_dmdt=3.02 ode_step=4.33e-11
step=313, time=1.76e-09, max_dmdt=2.71 ode_step=4.33e-11
step=314, time=1.8e-09, max_dmdt=2.43 ode_step=4.33e-11
step=315, time=1.84e-09, max_dmdt=2.18 ode_step=4.33e-11
step=316, time=1.89e-09, max_dmdt=1.96 ode_step=4.33e-11
step=317, time=1.93e-09, max_dmdt=1.76 ode_step=4.33e-11
step=318, time=1.97e-09, max_dmdt=1.58 ode_step=4.33e-11
step=319, time=2.02e-09, max_dmdt=1.41 ode_step=4.33e-11
step=320, time=2.06e-09, max_dmdt=1.27 ode_step=4.33e-11
step=321, time=2.1e-09, max_dmdt=1.14 ode_step=4.33e-11
step=322, time=2.15e-09, max_dmdt=1.02 ode_step=4.33e-11
step=323, time=2.19e-09, max_dmdt=0.917 ode_step=4.33e-11
step=324, time=2.23e-09, max_dmdt=0.822 ode_step=4.33e-11
step=325, time=2.28e-09, max_dmdt=0.738 ode_step=4.33e-11
step=326, time=2.32e-09, max_dmdt=0.662 ode_step=4.33e-11
step=327, time=2.36e-09, max_dmdt=0.594 ode_step=4.33e-11
step=328, time=2.41e-09, max_dmdt=0.533 ode_step=4.33e-11
step=329, time=2.45e-09, max_dmdt=0.478 ode_step=4.33e-11
step=330, time=2.52e-09, max_dmdt=0.417 ode_step=6.63e-11
step=331, time=2.58e-09, max_dmdt=0.353 ode_step=6.63e-11
step=332, time=2.65e-09, max_dmdt=0.299 ode_step=6.63e-11
step=333, time=2.71e-09, max_dmdt=0.253 ode_step=6.63e-11
step=334, time=2.78e-09, max_dmdt=0.215 ode_step=6.63e-11
step=335, time=2.85e-09, max_dmdt=0.182 ode_step=6.63e-11
step=336, time=2.91e-09, max_dmdt=0.154 ode_step=6.63e-11
step=337, time=2.98e-09, max_dmdt=0.13 ode_step=6.63e-11
step=338, time=3.05e-09, max_dmdt=0.11 ode_step=6.63e-11
step=339, time=3.11e-09, max_dmdt=0.0936 ode_step=6.63e-11
step=340, time=3.18e-09, max_dmdt=0.0793 ode_step=6.63e-11
step=341, time=3.25e-09, max_dmdt=0.0672 ode_step=6.63e-11
step=342, time=3.31e-09, max_dmdt=0.0569 ode_step=6.63e-11
step=343, time=3.38e-09, max_dmdt=0.0482 ode_step=6.63e-11
step=344, time=3.44e-09, max_dmdt=0.0408 ode_step=6.63e-11
step=345, time=3.51e-09, max_dmdt=0.0346 ode_step=6.63e-11
step=346, time=3.61e-09, max_dmdt=0.0281 ode_step=1.02e-10
step=347, time=3.71e-09, max_dmdt=0.0217 ode_step=1.02e-10
step=348, time=3.82e-09, max_dmdt=0.0168 ode_step=1.02e-10
step=349, time=3.92e-09, max_dmdt=0.0131 ode_step=1.02e-10
step=350, time=4.02e-09, max_dmdt=0.0101 ode_step=1.02e-10
step=351, time=4.12e-09, max_dmdt=0.00785 ode_step=1.02e-10

The magnetisation components of obtained equilibrium configuration can be plotted in the following way:

In [7]:
import matplotlib.pyplot as plt
%matplotlib inline

def plot_magnetisation(m, layer=0):
    n_layer = int(d/dx) * int(d/dy)
    m.shape = (-1, 3)

    mx = m[:, 0][layer*n_layer:(layer+1)*n_layer]
    my = m[:, 1][layer*n_layer:(layer+1)*n_layer]
    mz = m[:, 2][layer*n_layer:(layer+1)*n_layer]
    mx.shape = (int(d/dx), int(d/dy))
    my.shape = (int(d/dx), int(d/dy))
    mz.shape = (int(d/dx), int(d/dy))

    extent = [0, d, 0, d]
    plt.figure(figsize=(20, 10))
    plt.subplot(1, 3, 1)
    plt.imshow(mx, extent=extent)
    plt.title('mx')
    plt.xlabel('x (nm)')
    plt.ylabel('y (nm)')
    plt.subplot(1, 3, 2)
    plt.imshow(my, extent=extent)
    plt.xlabel('x (nm)')
    plt.ylabel('y (nm)')
    plt.title('my')
    plt.subplot(1, 3, 3)
    plt.imshow(mz, extent=extent)
    plt.xlabel('x (nm)')
    plt.ylabel('y (nm)')
    plt.title('mz')

plot_magnetisation(sim.spin, layer=0)
../_images/ipynb_isolated_skyrmion_17_0.png

References

[1] Beg, M. et al. Ground state search, hysteretic behaviour, and reversal mechanism of skyrmionic textures in confined helimagnetic nanostructures. Sci. Rep. 5, 17137 (2015).