vasp_plot_epsilon プログラム仕様

OUTCARファイルから光学誘電関数をプロットするスクリプト。

このスクリプトはVASPのOUTCARファイルから、LEPSILON=.TRUE.で計算された周波数依存の誘電関数(実部と虚部)を読み込み、 グラフとして表示し、Excelファイルに保存します。 density-density応答とcurrent-current応答の両方をサポートしています。

関連リンク:

vasp_plot_epsilon.py Technical Documentation

VASP.vasp_plot_epsilon.main()[ソース]

スクリプトのメイン処理を実行します。

コマンドライン引数を解析してグローバル変数を更新し、 指定されたモードに基づいてVASPのOUTCARファイルから光学誘電関数を読み込み、プロットします。 不正なモードが指定された場合はエラーメッセージを表示して終了します。

VASP.vasp_plot_epsilon.plot_epsilon(mode, CAR_path, Emin, Emax)[ソース]

VASP OUTCARから読み込んだ誘電関数データをプロットし、Excelファイルに保存します。

指定されたモード('density'または'current')に基づいて誘電関数データを処理し、 その実部と虚部を6つのテンソル成分(XX, YY, ZZ, XY, YZ, ZX)ごとにグラフ化します。 また、プロットに使用されたデータを'epsilon.xlsx'というファイル名で保存します。

パラメータ:
  • mode -- str。プロットする誘電関数のタイプ ('density'または'current')。

  • CAR_path -- str。VASP計算が実行されたディレクトリへのパス。OUTCARファイルがこのパス内にあると仮定します。

  • Emin -- float。プロットのエネルギー範囲の最小値 (eV)。

  • Emax -- float。プロットのエネルギー範囲の最大値 (eV)。

戻り値:

None。グラフを表示し、データを保存しますが、値を返しません。

VASP.vasp_plot_epsilon.read_epsilon(OUTCAR_path)[ソース]

VASPのOUTCARファイルから全ての周波数依存誘電関数データを読み込みます。

この関数はOUTCARファイルを開き、密度-密度応答と電流-電流応答の両方について、 誘電関数の実部と虚部のスペクトルデータを抽出します。

パラメータ:

OUTCAR_path -- str。OUTCARファイルへのパス。

戻り値:

tuple[list[float], list[list[float]], list[list[float]], list[list[float]], list[list[float]]]。 エネルギーリスト (Elist)、密度-密度応答の実部 (e1list1)、虚部 (e2list1)、 電流-電流応答の実部 (e1list2)、虚部 (e2list2)。

VASP.vasp_plot_epsilon.read_spectrum(fp, key)[ソース]

指定されたキーパターンに基づいてOUTCARファイルからスペクトルデータを読み込みます。

ファイルの指定されたセクションからエネルギーと対応する6つの誘電関数成分を抽出します。 キーとなる行を見つけ、その後続くデータ行をパースします。

パラメータ:
  • fp -- tklib.tkfile.tkFile。読み込み対象のファイルポインタ。

  • key -- str。読み込みを開始するセクションを特定するための正規表現パターン。

戻り値:

tuple[list[float], list[list[float]]]。 エネルギーのリスト (Elist) と、6つの成分ごとの誘電関数値のリスト (epslist)。

VASP.vasp_plot_epsilon.updatevars()[ソース]

コマンドライン引数に基づいてグローバル変数を更新します。

スクリプト実行時に渡されたコマンドライン引数を解析し、 mode, CAR_dir, Emin, `Emax`の各グローバル変数に値を設定します。 `mode`が不正な値の場合にはスクリプトを終了します。

VASP.vasp_plot_epsilon.usage()[ソース]

スクリプトの正しい使用方法を表示します。

この関数は、プログラムが不正な引数で呼び出された場合や、 ユーザーがヘルプ情報を求めた場合に、標準出力に利用方法を出力します。