vasp_plot_dos プログラム仕様
VASP計算によって得られた状態密度 (DOS) をプロットするスクリプト。
このスクリプトはVASPのINCAR, POSCAR, OUTCAR, DOSCAR, EIGENVALファイルから 状態密度、バンド構造、バンドエッジ情報を読み取り、matplotlibを用いてDOSプロットを生成します。 ガウス関数によるDOSの平滑化、HOMO/LUMOレベルの検出、およびバンドエッジの表示が可能です。
- 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の平滑化を行います。 生成されたプロットは画面に表示されるか、画像ファイルとして保存されます。
- 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()
スクリプトの利用方法とコマンドライン引数の形式を表示します。
この関数は、プログラムが不正な引数で呼び出された場合や、 ヘルプ情報が必要な場合に呼び出され、標準出力に利用方法を出力します。