I tried for the creation of high Ku region at the boundary of free layer of a MTJ. The MTJ is composed of a fixed layer as a spin polarizer with vortex-like magnetization having 253 regions (as shown in attached figure) to stop the skyrmion inhalation at the boundary. So I can use it as skymion based spin torque nano oscillator.
I wrote code for circular motion of skyrmion in the free layer around and high Ku region. The code is working very well but effect of high Ku region at boundary did not observed.
Kindly let me know the changes that are required in the following code.
setgridsize(200, 200, 1)
setcellsize(1e-9, 1e-9, 0.6e-9)
a:= ellipsoid(110e-9, 110e-9, 0.6e-9)
b:= ellipsoid(95e-9, 95e-9, 0.6e-9)
c:= a.sub(b)
d:= ellipsoid(95e-9, 95e-9, 0.6e-9)
setgeom(d.add(c))
saveas(geom,"MTJ")
defregion(254, a.sub(b))
ku1.setregion(254, 1.7e6)
anisU.setregion(254, vector(0,0,1))
// set up free layer
Msat = 580e3
Aex = 15e-12
Dind = 3e-3
Ku1 = 0.8e6
AnisU = vector(0,0,1)
alpha = 0.3
m = neelskyrmion(1, -1).transl(-25e-9,0,0)
// set up fixed and spacer layer parameters
lambda = 1
Pol = 0.5669
epsilonprime = 0
// set up fixed layer polarization
NSectors := 253
sliceOfPie := xrange(0, inf).sub(xrange(0, inf).rotz(2 * pi / NSectors))
for i := 0; i < NSectors; i++ {
angle := i * 2 * pi / NSectors
defregion(i, sliceOfPie.Rotz(angle))
FixedLayer.SetRegion(i, vector(-sin(angle), cos(angle), 0))
}
// send current
J = vector(0, 0, 6e10)
// schedule output & run
autosave(m, 1e-11)
tableautosave(1e-11)
tableAdd(ext_bubblepos)
run(100e-9)
Thanks