POSCARを入力とし、以下の手順を自動化するスクリプト群。qsubするスクリプト内で以下の計算を全て記述しないといけないため、「スクリプトを書くスクリプト」でスクリプトを書いたあとに、連結する構成にしている。分割したのは、デバッグのため。
- K点の収束計算
- INCARにおけるENCUTの収束
- 緩和計算
- バンドギャップの計算
all_convergence.sh
に引数として、POSCARのパスを入れる。e.g) sh all_convergence.sh poscar_file/normal_Si
all_convergence.sh
: 計算を回すためのファイルcreate_INCAR.sh
: K点収束計算のためのINCARファイルを生成するスクリプトcreate_POTCAR.sh
:all_convergence.sh
の引数として入れたPOSCARファイルから、POTCARファイルを構成するためのスクリプトcreate_POSCAR.sh
:all_convergence.sh
の引数として入れたPOSCARファイルを、ファイル名をPOSCARに変更するためのスクリプトcreate_conv_cpp.sh
: 収束判定を行うためのC++ファイルを生成するためのスクリプトgenerate_kpoints.py
:all_convergence.sh
の引数として入れたPOSCARファイルから、結晶ベクトルの比をもとにK点収束用のK点リストを生成するpythonファイルcreate_run_vasp_KP-conv.sh
: K点収束計算を行うスクリプトを生成するスクリプトcreate_run_vasp_ENCUT-conv.sh
: INCARにおけるENCUTの収束計算を行うスクリプトを生成するスクリプトcreate_run_vasp_relax.sh
: 緩和計算を行うスクリプトを生成するスクリプトcreate_run_vasp_bandgap_cal.sh
: バンドギャップ計算のためのDFTを行うスクリプトを生成するスクリプトcalculate_bandgap.sh
: バンドギャップ計算を行ったDOSCARから、バンドギャップを計算するC++ファイルを生成し、バンドギャップ計算を行うスクリプト
bandgap_result.csv
: bandgapの計算結果が入ったファイル。なお、nonmetal列が1ならば、bandgapはゼロである。(入力された値はDOSCARにおけるステップ幅なので、無意味)。例として入っているfcc_Siは導体なので、nonmetal列が1になっている。workspace__*/kptest.dat
: K点収束計算の結果workspace__*/encut_test.dat
: INCARにおけるENCUTの収束計算の結果workspace__*/final_DOSCAR
: 緩和計算後の最終的なバンドギャップ計算を行った後のDOSCARファイル。bandgap_result.csvは、このファイルをもとに計算するworkspace__*/final_OUTCAR
: 緩和計算後の最終的なバンドギャップ計算を行った後のOUTCARファイル。workspace__*/used_POTCAR.txt
: どのPOTCARファイルを使ったかを記録するためのファイル。