EF_T_semi_FEA プログラム仕様

半導体のキャリア統計量を自由電子近似 (FEA) でシミュレーションするスクリプト。

このスクリプトは、VASP計算結果に基づき、半導体の温度依存性、フェルミ準位依存性、 および有効質量に関する特性を自由電子近似を用いて計算・プロットします。 コマンドライン引数により、'me' (有効質量評価), 'T' (温度依存性), 'EF' (フェルミ準位依存性) の 3つのモードで動作します。

関連リンク: EF-T-semi_FEA_usage

electrical.EF_T_semi_FEA.exec_EF()[ソース]

フェルミ準位依存性のキャリア統計量を計算し、結果をプロットしてCSVに保存します。

指定された温度 (T0) とフェルミ準位範囲 (dos.EFmin から dos.EFmax) で、 電子濃度 (Ne)、正孔濃度 (Nh)、ドナーイオン濃度 (ND+)、アクセプタイオン濃度 (NA-)、 ホール係数 (RH)、正味キャリア濃度 (Ns)、および特性温度 (T0_Ne, T0_Nh) を計算します。 計算されたデータは、標準出力に表示され、CSVファイルに保存されます。 また、Matplotlibを使用して、これらの値のフェルミ準位依存性を示す複数のグラフが生成されます。 バンドギャップ中央での有効状態密度 (NC, NV) と有効質量 (me*, mh*) も近似計算し表示します。

electrical.EF_T_semi_FEA.exec_T()[ソース]

温度依存性のキャリア統計量を計算し、結果をプロットしてCSVに保存します。

指定された温度範囲 (Tmin から Tmax) で、フェルミ準位 (EF)、 電子濃度 (Ne)、正孔濃度 (Nh)、ドナーイオン濃度 (ND+)、アクセプタイオン濃度 (NA-)、 ホール係数 (RH)、正味キャリア濃度 (Ns)、および活性化エネルギー (Ea) を計算します。 計算されたデータは、標準出力に表示され、CSVファイルに保存されます。 また、Matplotlibを使用して、これらの値の温度依存性を示す複数のグラフが生成されます。

electrical.EF_T_semi_FEA.exec_me()[ソース]

状態密度 (DOS) をプロットし、有効質量 (m*) を計算します。

DOSリストから計算された状態密度と、その二乗値をプロットします。 また、DOSのエネルギー微分を用いて有効質量を計算し、そのエネルギー依存性もプロットします。 有効質量の計算は、DOSが自由電子近似の式にフィットすると仮定して行われます。 計算されたデータはグラフとして表示され、ユーザーの入力を待って終了します。

electrical.EF_T_semi_FEA.main()[ソース]

スクリプトのメイン実行関数です。

コマンドライン引数を解析し、必要なグローバル変数を初期化します。 半導体のバンド構造とドーピング濃度に基づいて、状態密度 (DOS) 計算のための エネルギー範囲とメッシュを設定します。 その後、選択された動作モード ('me', 'T', 'EF') に応じて、 対応する実行関数 (exec_me, exec_T, exec_EF) を呼び出します。 不正なモードが指定された場合は、エラーメッセージを表示し、利用方法を出力して終了します。

electrical.EF_T_semi_FEA.pfloat(str)[ソース]

文字列を浮動小数点数に変換します。

パラメータ:

str (str) -- 変換する文字列。

戻り値:

変換された浮動小数点数。

戻り値の型:

float

electrical.EF_T_semi_FEA.pint(str)[ソース]

文字列を整数に変換します。

パラメータ:

str (str) -- 変換する文字列。

戻り値:

変換された整数。

戻り値の型:

int

electrical.EF_T_semi_FEA.updatevars()[ソース]

コマンドライン引数を解析し、グローバル変数を更新します。

スクリプト実行時に渡された引数を読み込み、選択された動作モード('me', 'EF', 'T')に基づいて、 対応するグローバル変数(例: バンド端エネルギー、ドーピング濃度、温度範囲など)を設定します。 引数が不正または不足している場合は、使用方法を表示してプログラムを終了します。

electrical.EF_T_semi_FEA.usage()[ソース]

スクリプトの利用方法とコマンドライン引数の例を表示します。

この関数は、プログラムが不正な引数で実行された場合や、ヘルプ表示が必要な場合に呼び出されます。 'me' (有効質量評価), 'T' (温度依存性), 'EF' (フェルミ準位依存性) の各モードにおける 引数の形式と例を詳細に説明します。