This notebook reproduces figure which compares the magnetisation profiles* of the incomplete skyrmion down state (a) and the isolated skyrmion state with core down (f) as they change with the applied field.
* The magnetisation profile is the the out-of-plane magnetisation component, $m_z(x)$, sampled across the diameter from the top surface of the sample. The samples were taken from a nanocylinder with thickness, $t=20$nm.
In [1]:
%matplotlib inline
import numpy as np
import matplotlib.pyplot as plt
In [2]:
xt = np.linspace(-75, 75, 201)
d = 150
thickness = 20
states_incomplete_skyrmion = [(50, r'-3M$_s$', 'blue'),
(150, r'-1M$_s$', 'lightskyblue'),
(200, r'0', 'mediumpurple')]
states_isolated_skyrmion = [(220, r'0.4M$_s$', 'lightsalmon'),
(250, r'1M$_s$', 'red')]
fig = plt.figure(figsize=(9, 3))
ax = fig.add_subplot(111)
for state in states_incomplete_skyrmion:
data = np.load("../data/figure_1/magnetisation_profiles/"
"hysteresis_probe_d150_h{}_mz{}_200.npy".format(thickness, state[0]))
ax.plot(xt, data, '--', color=state[2], linewidth=2.5, label="{}".format(state[1]))
for state in states_isolated_skyrmion:
data = np.load("../data/figure_1/magnetisation_profiles/"
"hysteresis_probe_d150_h{}_mz{}_200.npy".format(thickness, state[0]))
ax.plot(xt, data, '-.', color=state[2], linewidth=2.5, label="{}".format(state[1]))
plt.ylabel(r'$\mathrm{m}_{\mathrm{z}}$', fontsize=25)
ax.set_xlim([-75, 75])
ax.set_xticks([-75, 0, 75])
ax.set_xticklabels(["-d/2", 0, "d/2"], fontsize=18)
plt.yticks([-1, 0, 1], fontsize=18)
ax.set_ylim([-1.02, 1])
ax.text(-12.5, 0, 't=20nm', fontsize=20)
ax.legend(loc='upper center', bbox_to_anchor=(0.5, 1.25),
ncol=5, fancybox=True, fontsize=15.2)
plt.savefig('pdfs/figure-1iii.pdf')
plt.show()