RKKY in Co(2 nm)/NM/Co(nm)

385 views
Skip to first unread message

Anija Mary

unread,
Oct 14, 2022, 1:34:53 AM10/14/22
to mumax2
Dear all,
I was trying to replicate the work, which was for studying the skyrmionic state in a Co (2 nm)/NM/Co (2 nm) where an antiferromagnetic exchange coupling between the two ferromagnets was induced by the nonmagnetic layer. The system is as attached below. The code I used is as below:

// defining the geometry size
dia := 300 //diameter of the nanocap
thi := 4 //thickness of the shell
ms := 2.0
edgesmooth = 8

SetCellsize(2*ms*1e-9, 2*ms*1e-9, ms*1e-9) //(4,4,2)
SetGridsize((dia/(2*ms)), (dia/(2*ms)), 2 ) // (75,75,2)

SetPBC(10,10,0)

//geometry
setgeom( cylinder(dia*1e-9, thi*1e-9) )
saveas(geom, "cylinder")

//bottom layer=1 and top layer =2
defRegion(1, layers(0,1))
defRegion(2, layers(1,3))
save(regions)

// defining material parameters
Msat.setregion(1, 1.4e6)
Msat.setregion(2, 1.4e6)

Aex.setregion(1, 3e-11)
Aex.setregion(2, 3e-11)

RKKY := -0.5 // antiferromagnetic coupling
scale := (RKKY*ms)/(2*Aex.Average())
ext_scaleExchange(1, 2, scale)

K1 := 1.228e6
K2 := 1.228e6

Ku1.setregion(1, K1)
Ku1.setregion(2, K2)
anisU = vector(0, 0, 1)

alpha.setregion(1,0.25)
alpha.setregion(2,0.25)

m.setregion(1, blochskyrmion(1,-1) )
m.setregion(2, randommag())
saveas(m, "m_initial")

relax()
saveas(m, "m_final")

However, I was not able to reproduce the results of the paper - I  was getting random magnetization for both the layers after relaxing. Can you help me in what went wrong?

best regards
Anija

Co_NM_Co.png
Method.png
M_Initial.png
Results.png

Anija Mary

unread,
Oct 18, 2022, 3:40:03 AM10/18/22
to mumax2
Dear all,
I have modified the above script (actually the values) and I got skyrmions in top and bottom nanodisks with opposite characteristics, similar to the work. However, there was an observation in the paper : the skyrmion core size was found to be decreasing with increase in exchange coupling strength. I was not able to observe that in my simulations. Also, when I observe the relaxed state with exchange coupling, I am not finding any gap between the 2 ferromagnetic layers (an indication for spacer layer). Is there anything wrong with the code?

// defining the geometry size
dia := 300 //diameter of the nanocap
thi := 4 //thickness of the shell
ms := 2.0
edgesmooth = 8

SetCellsize(2*ms*1e-9, 2*ms*1e-9, ms*1e-9) //(4,4,2)
SetGridsize((dia/(2*ms)), (dia/(2*ms)), 2 ) // (75,75,2)

//geometry
setgeom( cylinder(dia*1e-9, thi*1e-9) )
saveas(geom, "cylinder")

//bottom layer=1 and top layer =2
defRegion(1, layers(0,1))
defRegion(2, layers(1,3))
save(regions)

// defining material parameters
Msat.setregion(1, 1.4e6)
Msat.setregion(2, 1.4e6)

Aex.setregion(1, 3e-11)
Aex.setregion(2, 3e-11)

RKKY := -0.3e-3 // antiferromagnetic coupling

scale := (RKKY*ms)/(2*Aex.Average())
ext_scaleExchange(1, 2, scale)

K1 := 1.228e6
K2 := 1.228e6

Ku1.setregion(1, K1)
Ku1.setregion(2, K2)
anisU = vector(0, 0, 1)

alpha.setregion(1,0.05)
alpha.setregion(2,0.05)


m.setregion(1, blochskyrmion(1,-1) )
m.setregion(2, randommag())
saveas(m, "m_initial")

frozenspins.SetRegion(1, 1)

relax()
saveas(m, "m_final")
Reply all
Reply to author
Forward
0 new messages