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