vasp_plot_dos プログラム仕様

VASP計算によって得られた状態密度 (DOS) をプロットするスクリプト。

このスクリプトはVASPのINCAR, POSCAR, OUTCAR, DOSCAR, EIGENVALファイルから 状態密度、バンド構造、バンドエッジ情報を読み取り、matplotlibを用いてDOSプロットを生成します。 ガウス関数によるDOSの平滑化、HOMO/LUMOレベルの検出、およびバンドエッジの表示が可能です。

vasp_plot_dos.py 技術ドキュメント

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

スクリプトのメインエントリーポイントです。

コマンドライン引数を解析してグローバル変数を更新し、 現在の`mode`設定に基づいて適切なDOSプロット関数を呼び出します。 サポートされていないモードが指定された場合は、エラーを出力して終了します。

VASP.vasp_plot_dos.plot_dos(mode, CAR_path, Emin, Emax)[ソース]

VASP計算によって得られた状態密度 (DOS) をプロットします。

VASPのINCAR、POSCAR、OUTCAR、EIGENVAL、DOSCARファイルを読み込み、 状態密度、バンドエッジ (EV, EC)、HOMO/LUMOレベルなどの情報を抽出します。 指定されたエネルギー範囲でDOSと電子数 (Ne) のプロットを生成し、 オプションでガウス関数によるDOSの平滑化を行います。 生成されたプロットは画面に表示されるか、画像ファイルとして保存されます。

パラメータ:
  • mode (str) -- プロットモード。現在は 'DOS' のみがサポートされています。

  • CAR_path (str) -- VASP計算結果が格納されているディレクトリのパス。

  • Emin (float) -- プロットするエネルギー範囲の下限 (eV)。

  • Emax (float) -- プロットするエネルギー範囲の上限 (eV)。

戻り値:

なし。プロットを表示し、ファイルに保存します。

戻り値の型:

None

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

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

sys.argv から引数を読み取り、getarg, getfloatarg, getintarg 関数を使用して適切な型に変換し、グローバル変数 (mode, CAR_dir, Emin, Emax, occ_th, width, save_figure, plot_figure, plot_figure_Ne) を更新します。 不正な`mode`が指定された場合は`terminate`を呼び出し、プログラムを終了します。

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

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

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