磁気異方性のある細線に磁場を加えてみます。初期磁化は+Z方向に向いているものとし、磁場を-Z方向に印加して磁化が反転するかどうか見ます。
inputファイルの記述
# -*- coding: utf-8 -*- # 日本語のコメントに必要
from mumax2 import * # mumax2のインポート
# 細線+磁気異方性+磁場
# セル数の設定
# 2のべき乗がベストです。
Nx = 512
Ny = 50
Nz = 1
setgridsize(Nx, Ny, Nz)
# セルサイズ
cellX = 3e-9
cellY = 3e-9
cellZ = 3.4e-9
setcellsize(cellX, cellY, cellZ)
# モジュールの読み込み
load('micromagnetism')
load('solver/rk12') # adaptive Euler-Heun solver
load('anisotropy/uniaxial') # 異方性を設定するために必要
# solverの設定
setv('dt', 1e-15) # inital time step
setv('m_maxerror', 1./3000) # maximum error per step
# 物質定数の設定
setv('Msat', 6.6e5) # 飽和磁化 Msat
setv('Aex', 1e-11) # 交換定数 Aex
setv('alpha', 1) # ダンピング定数 α
setv('Ku', 4.1e5) # 磁気異方性定数 Ku
setv('anisU', [0,0,1]) # 磁化容易軸の方向ベクトル
# 初期磁化の設定
m=[ [[[0]]], [[[0]]], [[[1]]] ]
setarray('m', m)
saveas("m", "png", [], "initial.png") # png形式で磁化配列mを保存
saveas("m", "omf", ["Text"], "initial.omf") # omf形式で磁化配列mを保存
# 静磁場を印加
setv('B_ext', [0, 0, -1]) # z方向に-1T磁場を印加
# 定期的に保存する設定
autosave("m", "png", [], 1e-11)
# 一定の時間までシミュレーションを走らせる
run(1.5e-10)
saveas("m", "png", [], "finish.png") # png形式で磁化配列mを保存
saveas("m", "omf", ["Text"], "finish.omf") # omf形式で磁化配列mを保存
# 終了
sync()
実行結果
initial.png
finish.png
このように、磁化は反転しません。磁化と磁場は反対方向を向いており、エネルギーが高い状態となっていますが、この二つは完全に平行となっているため、トルクがかからなくなっています。そのため、磁化反転ができない状態になっています。この問題を解決するためには、熱による擾乱を考慮してやります。
→
細線+磁気異方性+磁場+温度
最終更新:2012年09月28日 17:12