計算のスキップ
2025年7月15日
計算途中でskip
DFT計算などで電子状態がどうしても収束しない場合や,明らかに不安定な構造で途中で計算をやめたい場合,下記の手順でskipできる.
- qdelなどでジョブを止める
./work/xxx/stat_job
の3行目をskip
に書き換える- 通常通りcryspyを実行
これで,この構造は切り捨てられて,計算が次へ進む.
cryspy_rslt (rslt_data.pkl) に記録された後にskip
CrySPY version 1.4.2以上
正しくない電子状態等で計算が終わった場合,エネルギーが過剰に低く出力されて,rslt_dataに記録されてしまうことがある.例えば下記の結果は,ID 198のエネルギーが低くなりすぎてしまっている.
cryspy_rslt_energy_asc
Gen ... E_eV_atom Ef_eV_atom ...
198 10 ... -5.542899 -1.800631 ...
157 8 ... -5.598984 -0.356639 ...
186 10 ... -6.323099 -0.330717 ...
95 5 ... -6.317931 -0.325549 ...
このデータを取り消してskipするためには,バージョン1.4.2から自動でインストールされるコマンドを使う.
cryspy-skip 198
もしskipさせたい構造が複数あるなら,複数のIDを入力する.
cryspy-skip 198 157
これでデータが更新される.
EAまたはEA-vcの場合
EAやEA-vcの場合,skipする構造がエリート構造として登録されている可能性もある.cryspy-skip
コマンドを使うとelite_struc.pkl
とelite_fitness.pkl
に保存されているデータからskipする構造を取り除く.
EA-vcの凸包の再計算
EA-vcの場合,skipする構造のエネルギーが凸包計算に影響を与える場合がある.そのため,skipさせたあとは,下記コマンドで凸包の再計算を行っておく.
cryspy-calc-convex-hull 10
上記入力の10
は世代を表し,10世代時点での凸包の再計算,凸包プロットを行う.