I am trying to reproduce this paper (Dynamic micromagnetic simulation of permalloy antidot array film" (attached as "play""

1.- First find the balance setting with the file "AntirelaxGEVOLVE.mif"

2.- With that I gave the file that I called "relax.omf"

3.- And from that arme the code for the magnetic pulse H (t) in file "sin pbc.mif" where part of the balance configuration

The thing is that I have already tried in many ways to calculate the dynamic susceptibility that is FFT (mX) / FFT (hX) without any results similar to the paper.I have also changed the code several times I have been testing because maybe I have faults or something.

AntirelaxGEVOLVE.mif

# MIF 2.1

# proyecto Eduardo

set pi [expr 4*atan(1.0)]

set mu0 [expr 4*$pi*1e-7]

Specify Oxs_ImageAtlas:eduardo {

xrange {0 100e-9}

yrange {0 100e-9}

zrange {0 20e-9}

viewplane xy

image anti.bmp

colormap {

black Cairo

white vacuum

}}

Specify Oxs_RectangularMesh:mesh {

cellsize {5e-9 5e-9 5e-9}

atlas :eduardo

}

# number of elements: 2e6

Specify Oxs_UZeeman:extfield0 [subst {

Hrange {

{0 0 100 0 0 50 100}

{0 0 50 0 0 0 100}

{0 0 0 0 0 0 1}

}

}]

# Exchange

Specify Oxs_UniformExchange {

A 13e-12

}

# Demag

Specify Oxs_Demag {}

# Evolver

Specify Oxs_CGEvolve {}

# Driver

Specify Oxs_MinDriver [subst {

evolver Oxs_CGEvolve

stopping_mxHxm 0.001

mesh :mesh

stage_count 202

stage_iteration_limit 0

total_iteration_limit 0

Ms { Oxs_AtlasScalarField {

atlas :eduardo

values {

Cairo 8.6e5

universe 0.0

vacuum 0.0

}

}

}

m0 { Oxs_UniformVectorField {

vector {0 0 1}

norm 1

} }

}]

sin pbc.mif

# MIF 2.1

# proyecto Eduardo

set pi [expr 4*atan(1.0)]

set mu0 [expr 4*$pi*1e-7]

Specify Oxs_MultiAtlas:atlas {

atlas { Oxs_ImageAtlas:Eduardo {

xrange {0 100e-9}

yrange {0 100e-9}

zrange {0 20e-9}

viewplane xy

image anti.bmp

colormap {

black Perma

white vacuum

}}

}

}

Specify Oxs_RectangularMesh:mesh {

cellsize {5e-9 5e-9 5e-9}

atlas :atlas

}

# Exchange

Specify Oxs_UniformExchange {

A 13e-12

}

# Demag

Specify Oxs_Demag {}

Specify Oxs_ScriptUZeeman {

script_args total_time

script Pulse

}

proc Pulse { total_time } {

set pa 1e9

set pamp 1000.0

set t [expr {$total_time}]

set Hx [expr {$pamp*exp(-$pa*$t)}]

set dHx [expr {-$pa*$pamp*exp(-$pa*$t)}]

return [list $Hx 0 0 $dHx 0 0]

}

Specify Oxs_RungeKuttaEvolve {

do_precess 1

alpha 0.025

start_dm 0.01

}

#Driver

Specify Oxs_TimeDriver {

evolver Oxs_RungeKuttaEvolve

stopping_time 1e-12

stage_iteration_limit {1 {0 1000} :expand:}

stage_count 1001

vector_field_output_format { text %.17g }

scalar_output_format %.17g

mesh :mesh

Ms { Oxs_AtlasScalarField {

atlas :atlas

values {

Perma 8.6e5

vacuum 0.0

}

}}

m0 {Oxs_FileVectorField {

file ./relax.omf

norm 1

atlas :atlas

}}

}

More Eduardo Saavedra's questions See All
Similar questions and discussions