スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。


AkaiKKRでニッケル・鉄・コバルト

AkaiKKRで不規則NiFe合金の強磁性AkaiKKRで不規則NiMn合金の分散関係では、AkaiKKR(Machikaneyama)を用いて面心立法構造(face-centered cubic; fcc)を持つ金属の電子構造を計算し、AkaiKKRでダイヤモンド型構造半導体ではfcc構造を基本とする半導体の計算を行いました。

今回は、fcc構造に加えて基本的な結晶構造である体心立方構造(body centered cubic; bcc)と六方最密充填構造(hexagonal closed package; hcp)の構造をもつ金属として強磁性のニッケル・鉄・コバルトの計算を行いました。

NiDOS_20130210233144.png FeDOS.png CoDOS.png



specx.fの設定


今回の計算では、specx.fを下記の設定にしてmakeしました。
     & (natmmx=4, ncmpmx=4, msizmx=198, mxlmx=3, nk1x=2200, nk3x=2688,
& msex=201, ngmx=15, nrpmx=650, ngpmx=650, npmx=350, msr=400)


fcc構造ニッケルの入力ファイル


まずは、fcc構造を持つニッケルでこれまでの復習をします。入力ファイルにおいて、それぞれの結晶構造の個性を表現しているのは、fcc, bcc, hcpといった構造の指定に加えて、原子位置の指定ブロッホスペクトル関数を計算するk点の座標です。

原子位置の指定に関して言えば、例えば、同じfcc構造を指定したとしても、単位格子の中で実空間の(0 0 0)にだけ原子をおくとfcc構造となり、実空間の(0 0 0)と(0.25 0.25 0.25)におくとfcc構造を1/4ずつずらして作られたダイヤモンド構造になります。(AkaiKKRでダイヤモンド型構造半導体参照)

以下に示すのが、VESTAを用いて作図したfcc構造ニッケルの原子配置です。cifファイルは結晶構造ギャラリーのものを利用させていただきました。AkaiKKRの入力ファイルでは、実空間の(0 0 0)にだけ原子を置きます。


fccNi.png
Fig.1: fcc構造ニッケルの原子配置


次に、ブロッホスペクトル関数を計算するk点の座標です。この波数空間の座標は、第一Brillouin zone(B.Z.)の特徴的なk点をつなぐように選ばれます。上手な選び方は一通りではないのですが、今回はtable.1の選び方にしました。table.1の中の波数空間の座標の単位は2π/aです。

FCC.png
Fig.2: fcc構造の第一B.Z.(Wikipediaより転載)


kxkykz
W1/201
L1/21/21/2
Γ000
X001
W1/201
K3/403/4
table.1: fcc構造の計算するk点のパス、座標の単位は2π/a


これらを踏まえて作成した入力ファイルがNi_in.txtです。ブロッホスペクトル関数を計算するk点は、table.1のパスに沿った第一B.Z.の特徴的なk点の間をそれぞれ100等分したものを使いました。

fcc構造ニッケルの全状態密度


以下にニッケルの全状態密度(total DOS)の計算結果を示します。
ニッケルの全状態密度は、アウトプットファイルのtotal DOSのところに書き込まれます。今回扱う金属はいずれも強磁性状態の計算なので、上向きスピンと下向きスピンの両方の2つが見つかるはずです。

この部分を取り出して、下向きスピンの状態密度を-1倍したものがNiDOS_dat.txtです。更にこれをgnuplotでプロットしたものがFig.3です。plotにつかったgnuplot用のスクリプトはNiDOS_plt.txtです。


NiDOS_20130210233144.png
Fig.3: fcc構造ニッケルの状態密度


fcc構造ニッケルのバンド構造


次にニッケルのブロッホスペクトル関数の計算結果から、バンド構造(E-k曲線)を描くことにします。
AkaiKKRで不規則NiMn合金の分散関係で書いたとおりgnuplotでカラーマップを使った2次元プロット(pm3d map)の方法を用いてE-k曲線を描きます。そのためには、生成されたspcファイルの行頭に波数空間のパスの道のりの数値を補う必要があります。

W0
L0.70710678
Γ1.57313218
X2.57313218
W3.07313218
K3.42668558
table.2: W点からの逆格子空間の道のり


AkaiKKRで不規則NiMn合金の分散関係のときは、Excelでちまちまと計算したと書きましたが、今回はxyzzyのlispで簡単なマクロを書きました。xyzzyでAkaiKKR-modeに従って導入し、spcファイルを開いた状態で

M-x AkaiKKR-spc2ek


とやれば処理してくれるはずです。かなりいい加減に書いたマクロなので動作は無保証です。また、ファイルは破壊的に編集されるのでバックアップは自分でとってください。あと、処理速度は遅いです。

このようにして出来たファイルをgnuplotでグラフにしたのがFig.4です。グラフのプロットに利用したgnuplotのスクリプトはNiSPC_plt.txtです。


003_20130120185338.png
004_20130120185337.pngFig.4: fcc構造ニッケルのバンド構造


bcc構造鉄の入力ファイル


鉄は常温常圧でbcc構造をとります。Fig.5に示したのがbcc構造の鉄の原子配置です。VESTAを用いて結晶構造ギャラリーのcifファイルを描画しています。fcc構造ニッケルと同様に実空間の(0 0 0)にだけ原子を置きます。


bccFe.png
Fig.5: bcc構造鉄の原子配置


Fig.6に示したのがbcc構造の第一B.Z.です。ブロッホスペクトル関数を計算するk点のパスは、table.3のようにとりました。table.3の中の波数空間の座標の単位は2π/aです。

BCC.png
Fig.6: bcc構造の第一B.Z.(Wikipediaより転載)


kxkykz
Γ000
H001
N1/201/2
P1/21/21/2
Γ000
N1/201/2
table.3: bcc構造の第一B.Z.、座標の単位は2π/a


これらを踏まえて作成した入力ファイルがFe_in.txtです。ブロッホスペクトル関数を計算するk点は、table.3のパスに沿った第一B.Z.の特徴的なk点の間をそれぞれ100等分したものを使いました。

bcc構造鉄の全状態密度


以下に鉄の全状態密度(total DOS)の計算結果を示します。
ニッケルのときと同様な処理をしたデータファイルがFeDOS_dat.txtで、gnuplotのスクリプトファイルがFeDOS_plt.txtです。


FeDOS.png
Fig.7: bcc構造鉄の状態密度


bcc構造鉄のバンド構造


続いて、鉄のバンド構造に関してです。これも基本的にニッケルと同じで、第一B.Z.の形が異なるので逆格子空間での道のりも当然ながら違います(table.4)。

Γ0
H1
N1.70710678
P2.20710678
Γ3.07313218
N3.78023897
table.4: Γ点からの逆格子空間の道のり


gnuplotでE-k曲線を描くための前処理ですが、道のりを計算するだけなのでAkaiKKR-spc2ekは、bcc構造に対してもそのまま使えます。グラフをプロットするためのgnuplotスクリプトはFeSPC_plt.txtです。


FeUp.png
FeDown.pngFig.8: bcc構造鉄のバンド構造


hcp構造コバルトの入力ファイル


最後にhcp構造を持つコバルトについての計算を行います。
まず、Fig.9にコバルトの原子配置をVESTAを用いて描画したものを示します。結晶構造ギャラリーにはコバルトのcifファイルが存在しないので、同じhcp構造をもつマグネシウムのcifファイルの原子の名前と格子定数の部分を編集したものを利用しました。


hcpCo.png
Fig.9: hcp構造コバルトの原子配置


hcp構造の入力ファイルの考え方は、fccやbccのものと比較して多少複雑です。その理由は、下記の2点が主なものです。
  • 基本単位格子の中に2つの原子を含む
  • 格子定数が a ≠ c

fccやbccでは、c/a = 1は明らかなので省略してきました。hcpであっても、省略は可能で、その場合は c/a = 1.633となります。
この値は、理想的なhcp構造のc/a = 2√2/√3ですが、現実のhcp構造のc/aは必ずしも1.633とはなりません。
差し当たり、今回は省略してc/a=1.633を使うことにします。

基本単位格子の中に2この原子を含むということは、nmatm=2ということです。これはAkaiKKRでダイヤモンド型構造半導体で扱ったダイヤモンド構造の結晶も同様でした。このときは、実空間での原子の座標atmicxを直交座標で指定しました。hcp構造では、基本ベクトルで指定するほうが簡単だと思います。計算機マテリアルデザイン入門 (大阪大学新世紀レクチャー)には、以下のように書かれています。

原子の位置. a を単位とする. 直交座標で指定するときは0.5, 0.5, 0.5 などとかき, 基本ベクトルで指定するときは0.5a, 0.5b, 0.5cなどと書く.


hcp構造の計算では、実空間の(0.33333a 0.66667b 0.25c)と(0.66667a 0.33333b 0.75c)の2点に原子をおくことにします。原子位置の指定は結局、以下のようになります。

   0.33333a  0.66667b  0.25c    Co
0.66667a 0.33333b 0.75c Co


Fig.10に示したのがhcp構造の第一B.Z.で、table.5がブロッホスペクトル関数を計算するk点のパスです。
fcc構造やbcc構造での波数空間の座標は 2π/a を単位としていました。hcp構造の場合、多くの教科書やwebサイトではkx,kyは 2π/a を単位としていますが、kzだけは 2π/c を単位としています。今回のtable.5でもそのようになっていますし、入力ファイルでもそのようにします。

HEX.png
Fig.10: hcp構造の第一B.Z.(Wikipediaより転載)


kxkykz
Γ000
M01/√30
K1/31/√30
Γ000
A001/2
L01/√31/2
H1/31/√31/2
A001/2
table.5: hcp構造の第一B.Z. 単位は1-2列目は 2π/a , 3列目は 2π/c


これらを踏まえて作成した入力ファイルがCo_in.txtです。ブロッホスペクトル関数を計算するk点は、table.5のパスに沿った第一B.Z.の特徴的なk点の間をそれぞれ100等分したものを使いました。

hcp構造コバルトの全状態密度


以下にコバルトの全状態密度(total DOS)の計算結果を示します。
ニッケルのときと同様な処理をしたデータファイルがCoDOS_dat.txtで、gnuplotのスクリプトファイルがCoDOS_plt.txtです。アウトプットファイルに出力されるtotal DOSの単位は states/Ry/unit-cell です(だと思います)。bcc構造やfcc構造の金属と比較するためには、states/Ry/atom に統一するほうがいいと思います。hcpは原子を二つ配置したのでDOSをプロットする際に2で割ります。この処理はCoDOS_plt.txtのなかで行っています。


CoDOS.png
Fig.11: hcp構造コバルトの状態密度


hcp構造コバルトのバンド構造


コバルトのバンド構造に関しても、hcp構造特有の注意点があります。
入力ファイルを作る際に、k空間においてkzだけ単位が 2π/c であったことを思い出してください。逆格子空間での道のりを考えるときにこのことを考慮しなければいけません。

計算によって出力されたspcファイルには # の後にk空間の座標が書かれています。
実を言うと、この座標の単位はkx, ky, kzの全てに関して 2π/a です。

重要なことなのでもう一度書きます。
hcp構造では、入力ファイルのk空間の座標はkzだけ 2π/c の単位を持ちますが、出力ファイルのk空間の座標の単位は全て 2π/a です。

一見すると統一感がないようにも見えますが、この仕様はとても便利です。なぜなら、入力の時にはc/aの値を気にする事無く教科書どおりにk点の座標を与えることが出来、出力ファイルを処理するときもc/aの値を気にする事無く道のりの長さを求めることが出来るからです。したがって、fcc構造やbcc構造と同様にAkaiKKR-spc2ekでバンド図を描くための前処理が出来ます。

Γ0
M0.577350269
K0.910683603
Γ1.577350269
A1.883536487
L2.460886756
H2.79422009
A3.460886756
table.6: Γ点からの逆格子空間の道のり


table.6がc/a=1.633(理想的なhcp構造)のときの逆格子空間の特徴的なk点までの道のりです。以下に示したバンド図作成に利用したgnuplotスクリプトはCoSPC_plt.txtです。


CoUp.png
CoDown.pngFig.12: hcp構造コバルトのバンド構造


小口多美夫著 遷移金属のバンド理論に強磁性bcc構造Feと強磁性hcp構造Coの全状態密度の計算例が載っています。

関連エントリ




参考URL




付録


このエントリで使用した入力ファイル、データファイル、gnuplotスクリプトファイルを添付します。ファイル名末尾の".txt"を削除して、"_"を"."に変更すれば使えるはずです。(参考:ねがてぃぶろぐの付録)


参考文献/使用機器




フィードバック



にほんブログ村 その他趣味ブログ 電子工作へ

 ↑ 電子工作ブログランキング参加中です。1クリックお願いします。


コメント・トラックバックも歓迎です。 ↓      


 ↓ この記事が面白かった方は「拍手」をお願いします。


tag: AkaiKKR machikaneyama KKR 強磁性 状態密度 DOS バンド構造 分散関係 

comment

Secret

FC2カウンター
カテゴリ
ユーザータグ

LTspiceAkaiKKRScilabmachikaneyamaKKRPSoCCPAOPアンプPIC強磁性モンテカルロ解析常微分方程式トランジスタodeインターフェース状態密度DOSecalj定電流PDS5022スイッチング回路半導体シェルスクリプト乱数レベルシフトHP6632A温度解析ブレッドボードI2CR6452A分散関係トランジスタ技術可変抵抗確率論数値積分反強磁性セミナー非線形方程式ソルバ絶縁バンドギャップ熱設計偏微分方程式バンド構造GW近似カオス三端子レギュレータLEDフォトカプラシュミットトリガISO-I2CA/DコンバータLM358USBカレントミラーTL431マフィンティン半径PC817C数値微分アナログスイッチ発振回路サーボ直流動作点解析74HC40532ちゃんねる標準ロジックチョッパアンプLDAアセンブラFFTbzqltyイジング模型ブラべ格子開発環境補間量子力学電子負荷BSchパラメトリック解析単振り子基本並進ベクトル熱伝導繰り返しGGAMaximaTLP621ewidthSMP相対論抵抗位相図ランダムウォークスピン軌道相互作用六方最密充填構造不規則合金FETコバルト失敗談QSGWcygwinスレーターポーリング曲線スイッチト・キャパシタラプラス方程式gfortranキュリー温度状態方程式条件分岐格子比熱TLP552LM555TLP521三角波NE555過渡解析FXA-7020ZRWriter509テスタ詰め回路MCUマントルダイヤモンドQNAPデータロガーガイガー管自動計測UPS井戸型ポテンシャルawk第一原理計算仮想結晶近似ブラウン運動差し込みグラフ平均場近似fsolve起電力熱力学OpenMPスーパーセル固有値問題最適化最小値VCAシュレディンガー方程式VESTAubuntu最大値面心立方構造PGAOPA2277L10構造非線型方程式ソルバ2SC1815fccフェルミ面等高線ジバニャン方程式ヒストグラム確率論マテリアルデザイン正規分布結晶磁気異方性interp1フィルタ初期値ウィグナーザイツ胞c/aルチル構造岩塩構造スワップ領域リジッドバンド模型edeltBaOウルツ鉱構造重積分SIC二相共存ZnOquantumESPRESSOCapSensegnuplotmultiplot全エネルギー固定スピンモーメントFSM合金ノコギリ波フォノンデバイ模型ハーフメタル半金属TeXifortTS-110不規則局所モーメントTS-112等価回路モデルパラメータ・モデルヒストグラムExcel円周率GimpトラックボールPC直流解析入出力文字列マンデルブロ集合キーボードフラクタル化学反応三次元Realforce縮退日本語最小二乗法関数フィッティング疎行列シンボル線種ナイキスト線図陰解法負帰還安定性熱拡散方程式EAGLECrank-Nicolson法連立一次方程式P-10クーロン散乱Ubuntu境界条件MBEHiLAPW軸ラベルトランスCK1026MAS830L凡例PIC16F785LMC662AACircuit両対数グラフ片対数グラフグラフの分割specx.f

最新コメント
リンク

にほんブログ村 その他趣味ブログ 電子工作へ
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。