スポンサーサイト

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


AkaiKKRでバンドギャップの測り方

AkaiKKR(machikaneyama)にはバンドギャップの大きさを数値として出力する機能がないように思えます。そこでBlochスペクトル関数にローレンツ関数をフィッティングすることにより、ギャップのエネルギーを計算してみました。このような方法が、どの程度物理的に意味があるのかは、難しいところですが。

001_20150928230014732.png

Fig.1: AkaiKKRによるGaAsのバンド構造の計算結果。Γ点のバンドギャップはグラフから目視で読み取る限り0.6Ry程度。



バンドギャップを目視で読みだす


ecaljなどでは、バンドギャップの大きさが数値として出力される機能があります。しかしながらAkaiKKR(machikaneyama)にはバンドギャップの大きさを数値として出力する機能がないように思えます。もちろん状態密度やバンド図を描いて目視で読み取ることは可能です。例えばGaAsはΓ点にVBM(Valence Band Mzximum)とCBM(Conduction Band Minimum)を持つ直接遷移型の半導体です。Fig.1はAkaiKKRによって計算されたΓ点付近のバンド構造で VBM は -0.03 Ry あたり CBM は 0.05 Ry あたりにあるのでバンドギャップは約 0.08 Ry だと読み取ることができます。(なおこの場合のエネルギー基準点 E=0 は必ずしも半導体のフェルミ準位(絶対零度における化学ポテンシャル)ではありません。金属の場合は問題なくフェルミ準位になりますが、半導体の場合はバンドギャップの間の「どこか」以上の事は言えないと思います。)

所詮LDAやGGAの範囲で決めたバンドギャップなので細かいことは気にしても仕方ないかもしれません。とは言うものの目視ではなくもうちょっと「ちゃんとした風」な値の出し方があった方が良いと思うときもあります。そんなわけで今回はBlochスペクトル関数にローレンツ関数をフィッティングしてピークの中心値を求めてみました。

計算方法


今回はspc計算の入力方法が、古いバージョンのAkaiKKRの方がやりやすいので(少なくともspc計算には)最新版(August 26, 2015)ではなく、それより以前のバージョン(May 22, 2015)を使用します。

最初に通常のgo計算を行います。以下はgo計算のための入力ファイルで、サンプルの入力ファイルを原子球近似(asa)としたものです。

c----------------------GaAs----------------------------------
go data/gaas
c------------------------------------------------------------
c brvtyp a c/a b/a alpha beta gamma
fcc 10.684 , , , , , ,
c------------------------------------------------------------
c edelt ewidth reltyp sdftyp magtyp record
0.001 1.5 sra mjwasa nmag 2nd
c------------------------------------------------------------
c outtyp bzqlty maxitr pmix
update 4 200 0.035
c------------------------------------------------------------
c ntyp
4
c------------------------------------------------------------
c type ncmp rmt field mxl anclr conc
Ga 1 1 0.0 2 31 100
As 1 1 0.0 2 33 100
Vc1 1 1 0.0 0 0 100
Vc2 1 1 0.0 0 0 100
c------------------------------------------------------------
c natm
4
c------------------------------------------------------------
c atmicx atmtyp
0 0 0 Ga
0.25 0.25 0.25 As
0.5 0.5 0.5 Vc1
0.75 0.75 0.75 Vc2
c------------------------------------------------------------


次にspc計算のための実行ファイルをコンパイルします。
まず source/specx.f の msex を大きめの値に変更します。今回は msex=401 としました。更に source/cemesr.f の data ref/0.75d0/ を data ref/0.5d0/ に変更します。これらの変更ののち make します。
前者はdos計算やspc計算のエネルギー分解能を決めるパラメータです。後者はewidthのうち、どれだけの割合をフェルミ準位より下に割り当てるかを指定するパラメータです。

前述のとおりGaAsのバンドギャップはΓ点にあるのでBlochスペクトル関数はΓ点だけ計算します。エネルギーの範囲もバンドギャップを含んでさえいればいいので小さめに変更します。

c----------------------GaAs----------------------------------
spc data/gaas
c------------------------------------------------------------
c brvtyp a c/a b/a alpha beta gamma
fcc 10.684 , , , , , ,
c------------------------------------------------------------
c edelt ewidth reltyp sdftyp magtyp record
0.001 0.2 sra mjwasa nmag 2nd
c------------------------------------------------------------
c outtyp bzqlty maxitr pmix
update 4 200 0.035
c------------------------------------------------------------
c ntyp
4
c------------------------------------------------------------
c type ncmp rmt field mxl anclr conc
Ga 1 1 0.0 2 31 100
As 1 1 0.0 2 33 100
Vc1 1 1 0.0 0 0 100
Vc2 1 1 0.0 0 0 100
c------------------------------------------------------------
c natm
4
c------------------------------------------------------------
c atmicx atmtyp
0 0 0 Ga
0.25 0.25 0.25 As
0.5 0.5 0.5 Vc1
0.75 0.75 0.75 Vc2
c------------------------------------------------------------
c kvector
0.0 0.0 0.0
c------------------------------------------------------------


すると data/gaas_up.spc にエネルギーとBlochスペクトル関数が書きだされます。

002_2015092823001346f.png

Fig.2: GaAsのΓ点のBlochスペクトル関数(赤)とローレンツ関数によるピークのフィッティング(緑と青)。


この数値データのピーク位置を読み取るだけでも良いのですが、もうひと手間かけてローレンツ関数にフィッティングしました。

\begin{equation}
f(x)=\frac{a_1}{1 + a_3 (x - a_2 )^2}
\end{equation}

その結果ピークの中心値は CBM が 0.0516617 Ry で VBM が 0.0297679 Ry となりました。したがってバンドギャップは 0.0814296 Ry となりました。

003_20150928230013664.png

004_20150928230013b79.png
Fig.3-4: それぞれのピークへのフィッティング


何が問題なのか?


Fig.3-4に示したようにAkaiKKRを用いて計算したBlochスペクトル関数は、エネルギーに広がりを持っています。しかし、本来なら規則構造の完全結晶の場合、エネルギーの幅を持たないデルタ関数的なピークになるはずです。このようなエネルギーの広がりがある(持たせてある)理由は第5回CCMSハンズオン(ソフトウェア講習会): AkaiKKRチュートリアル 1. KKR法のP29-30に書いてある通り、数値計算上の理由です。

規則構造の完全結晶だけなら、入力ファイルの edelt を十分小さくとれば、エネルギーの広がりは小さくなっていくので解決できます。問題は、不規則性の影響によってもエネルギーに広がりができるという事です。

不規則構造に関しても CBM や VBM に相当するBlochスペクトル関数のピークに対してフィッティングをすることによってピークの中心値を求めることはできると思います。しかし、数値計算的な理由からピークがぼやけている規則構造の場合と不規則性からエネルギーに不確定性が出ている場合とでは、意味が異なります。

関連エントリ




参考URL




付録


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


参考文献/使用機器




フィードバック



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

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


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


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


tag: AkaiKKR machikaneyama KKR 半導体 バンドギャップ 

comment

Secret

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

LTspiceAkaiKKRmachikaneyamaScilabKKRPSoC強磁性OPアンプPICCPAecaljモンテカルロ解析常微分方程式odeトランジスタ状態密度DOSインターフェース定電流PDS5022スイッチング回路半導体シェルスクリプト乱数レベルシフト分散関係HP6632AI2C可変抵抗トランジスタ技術ブレッドボード温度解析R6452A反強磁性確率論バンドギャップセミナー数値積分熱設計非線形方程式ソルババンド構造絶縁偏微分方程式ISO-I2CLM358マフィンティン半径フォトカプラシュミットトリガカオスLED三端子レギュレータGW近似A/Dコンバータ発振回路PC817C直流動作点解析USBTL431数値微分アナログスイッチカレントミラー74HC4053サーボ量子力学単振り子チョッパアンプ補間2ちゃんねる開発環境bzqltyFFT電子負荷LDAイジング模型BSch基本並進ベクトルブラべ格子パラメトリック解析標準ロジックアセンブラ繰り返し六方最密充填構造SMPコバルトewidthFET仮想結晶近似QSGW不規則合金VCAMaximaGGA熱伝導cygwinスレーターポーリング曲線キュリー温度スイッチト・キャパシタ失敗談ランダムウォークgfortran抵抗相対論位相図スピン軌道相互作用VESTA状態方程式TLP621ラプラス方程式TLP552条件分岐NE555LM555TLP521マントル詰め回路MCUテスタFXA-7020ZR三角波過渡解析ガイガー管自動計測QNAPUPSWriter509ダイヤモンドデータロガー格子比熱熱力学awkブラウン運動起電力スーパーセル差し込みグラフ第一原理計算フェルミ面fsolveCIFxcrysden最大値最小値ubuntu最適化平均場近似OpenMPシュレディンガー方程式固有値問題井戸型ポテンシャル2SC1815TeX結晶磁気異方性OPA2277非線型方程式ソルバフラクタルFSM固定スピンモーメントc/agnuplotPGA全エネルギーfccマンデルブロ集合縮退正規分布キーボード初期値interp1multiplotフィルタ面心立方構造ウィグナーザイツ胞L10構造半金属二相共存ZnOウルツ鉱構造BaOSIC重積分磁気モーメント電荷密度化学反応クーロン散乱岩塩構造CapSenseノコギリ波デバイ模型ハーフメタルRealforceフォノンquantumESPRESSOルチル構造スワップ領域リジッドバンド模型edelt合金等高線凡例軸ラベル線種シンボルトラックボールグラフの分割MAS830LPIC16F785トランス入出力CK1026PC直流解析パラメータ・モデル等価回路モデル不規則局所モーメント関数フィッティング日本語ヒストグラムTS-112ExcelGimp円周率TS-110LMC662片対数グラフ三次元specx.fifortUbuntu文字列疎行列不純物問題ジバニャン方程式ヒストグラム確率論マテリアルデザインP-10境界条件連立一次方程式AACircuit熱拡散方程式HiLAPW両対数グラフ陰解法MBEナイキスト線図負帰還安定性Crank-Nicolson法EAGLE最小二乗法

最新コメント
リンク

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