N := 50
c := 1e-9
SetGridsize(N, 1, N)
SetCellsize(c, c, c)
Ku1 = 4.3e3
anisU = vector(0, 0, 1)
Msat = 1.61/4/pi*1e7
tableadd(m_full)
Bmax := 0.1
Bstep := 0.001
MinimizerStop = 1e-7
TableAdd(B_ext)
m = uniform(0,0,1)
for B:=Bmax; B>=-Bmax; B-=Bstep {
B_ext = vector(0, 0.035*B, B)
NewAex:=6e-12
prefactorX := Const( (2 * NewAex) / (c*c*Msat.Average()))
prefactorY := Const( (2 * NewAex) / (c*c*Msat.Average()))
prefactorZ := Const( (2 * NewAex) / (c*c*Msat.Average()))
left := Mul(prefactorX,Mul(Add(Mul(Const(-1),m),Shifted(m, 1,0,0)),Shifted(Const(1),1,0,0)))
right := Mul(prefactorX,Mul(Add(Mul(Const(-1),m),Shifted(m,-1,0,0)),Shifted(Const(1),-1,0,0)))
forward := Mul(prefactorY,Mul(Add(Mul(Const(-1),m),Shifted(m,0, 1,0)),Shifted(Const(1),0,1,0)))
backward := Mul(prefactorY,Mul(Add(Mul(Const(-1),m),Shifted(m,0,-1,0)),Shifted(Const(1),0,-1,0)))
up := Mul(prefactorZ,Mul(Add(Mul(Const(-1),m),Shifted(m,0,0, 1)),Shifted(Const(1),0,0,1)))
down := Mul(prefactorZ,Mul(Add(Mul(Const(-1),m),Shifted(m,0,0,-1)),Shifted(Const(1),0,0,-1)))
Bc :=Add(left,Add(right,Add(forward,Add(backward,Add(up,down)))))
AddFieldTerm(Bc)
addEdensTerm(Mul(Const(-0.5),Dot(Bc,M_full)))
minimize()
tablesave()
save(m_full)
}
N := 50
c := 1e-9
SetGridsize(N, 1, N)
SetCellsize(c, c, c)
Ku1 = 4.3e3
anisU = vector(0, 0, 1)
Msat = 1.61/4/pi*1e7
Aex = 6e-12
tableadd(m_full)
Bmax := 0.1
Bstep := 0.001
MinimizerStop = 1e-7
TableAdd(B_ext)
m = uniform(0,0,1)
for B:=Bmax; B>=-Bmax; B-=Bstep {
B_ext = vector(0, 0.035*B, B)
minimize() // small changes best minimized by minimize()
tablesave()
save(m_full)
}
--
You received this message because you are subscribed to the Google Groups "mumax2" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mumax2+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
To unsubscribe from this group and stop receiving emails from it, send an email to mumax2+un...@googlegroups.com.
To unsubscribe from this group and stop receiving emails from it, send an email to mumax2+un...@googlegroups.com.
To unsubscribe from this group and stop receiving emails from it, send an email to mumax2+unsubscribe@googlegroups.com.
N := 25
tsoft := 3
c := 1e-9
SetGridsize(2*N, 1, 2*N+tsoft)
SetCellsize(c, c, c)
khard := 4.3e6
mshard := 1.26e6
aehard := 10.2e-12
ksoft := 0.0*khard
mssoft := 1.0*mshard
aesoft := 1.0*aehard
all := cuboid(2*N*c,c,(2*N+tsoft)*c)
soft := cuboid(2*N*c,c,tsoft*c)
hard := all.sub(soft)
defregion(1,hard)
defregion(2,soft)
Ku1.setregion(1,khard)
anisU.setRegion(1, vector(0, 0, 1))
Msat.setregion(1,mshard)
Aex.setregion(1,aehard)
Ku1.setregion(2,ksoft)
anisU.setRegion(2, vector(0, 0, 1))
Msat.setregion(2,mssoft)
Aex.setregion(2,aesoft)
//ext_ScaleExchange(1, 2, 0.0)
ext_InterExchange(1, 2, 10.2e-12)
tableadd(m_full)
Bmax := 5.5
Bstep := 0.01
MinimizerStop = 1e-7
TableAdd(B_ext)
m = uniform(0,0,1)
for B:=0.0; B>=-Bmax; B-=Bstep {
B_ext = vector(0, 0.035*B, B)
minimize() // small changes best minimized by minimize()
tablesave()
save(m_full)
}
N := 25
tsoft := 3
c := 1e-9
SetGridsize(2*N, 1, 2*N+tsoft)
SetCellsize(c, c, c)
khard := 4.3e6
mshard := 1.26e6
aehard := 10.2e-12
ksoft := 0.0*khard
mssoft := 1.0*mshard
aesoft := 1.0*aehard
all := cuboid(2*N*c,c,(2*N+tsoft)*c)
soft := cuboid(2*N*c,c,tsoft*c)
hard := all.sub(soft)
defregion(1,hard)
defregion(2,soft)
Ku1.setregion(1,khard)
anisU.setRegion(1, vector(0, 0, 1))
Msat.setregion(1,mshard)
//Aex.setregion(1,aehard)
Ku1.setregion(2,ksoft)
anisU.setRegion(2, vector(0, 0, 1))
Msat.setregion(2,mssoft)
Aex.setregion(2,aesoft)
//ext_ScaleExchange(1, 2, 0.0)
ext_InterExchange(1, 2, 10.2e-12)
NewAex := 10.2e-12
prefactorX := Const( (2 * NewAex) / (c*c*Msat.Average()))
prefactorY := Const( (2 * NewAex) / (c*c*Msat.Average()))
prefactorZ := Const( (2 * NewAex) / (c*c*Msat.Average()))
left := Mul(prefactorX,Add(Mul(Const(-1),m),Shifted(m, 1,0,0)))
right := Mul(prefactorX,Add(Mul(Const(-1),m),Shifted(m,-1,0,0)))
forward := Mul(prefactorY,Add(Mul(Const(-1),m),Shifted(m,0, 1,0)))
backward := Mul(prefactorY,Add(Mul(Const(-1),m),Shifted(m,0,-1,0)))
up := Mul(prefactorZ,Add(Mul(Const(-1),m),Shifted(m,0,0, 1)))
down := Mul(prefactorZ,Add(Mul(Const(-1),m),Shifted(m,0,0,-1)))
Bc :=Add(left,Add(right,Add(forward,Add(backward,Add(up,down)))))
Bchard := Masked(Bc,hard)
AddFieldTerm(Bchard)
addEdensTerm(Mul(Const(-0.5),Dot(Bchard,M_full)))
tableadd(m_full)
Bmax := 5.5
Bstep := 0.01
MinimizerStop = 1e-7
TableAdd(B_ext)
m = uniform(0,0,1)
for B:=0.0; B>=-Bmax; B-=Bstep {
B_ext = vector(0, 0.035*B, B)
minimize() // small changes best minimized by minimize()
tablesave()
save(m_full)
}
However, these two input files give two different hysteresis, as shown below