初期構造の読み込み
最終更新日:2026年10月16日
ここでは,cifファイル3つからinit_struc_data.pklを作成し,初期構造として読み込む.
RSによるCu 8原子の探索を例に,3構造を読み込み,不足する2構造をランダム生成して,合計5構造で探索を開始する.
読み込み時のチェックの詳細は,機能 > 初期構造の読み込みを参照.
準備
チュートリアル > ランダムサーチ(RS) > ASE on Your Local PCと同様に,cryspy.inとcalc_in/を新しい作業ディレクトリに用意する.
calc_in/のase_in.pyとjob_cryspyは,そのチュートリアルと同じものを使用する.まだcryspyは実行しない.
変換にはCrySPY Utilityのpos2pkl.pyを用いる.以下では,pos2pkl.pyにPATHが通っていることを想定する.設定方法はインストール > CrySPY Utilityを参照.
動作確認用のcifファイルをダウンロードし,作業ディレクトリに置く.いずれもCuを8原子含む構造.
構造データの変換
作業ディレクトリで次のコマンドを実行する.cifのように1ファイルに1構造を保存したデータには,-sを付ける.
カレントディレクトリにinit_struc_data.pklが作成される.入力順に構造IDが割り振られ,Cu8_1.cif,Cu8_2.cif,Cu8_3.cifのIDはそれぞれ0,1,2となる.
変換方法の詳細はCrySPY Utility > pos2pkl.pyを参照.
cryspy.in
cryspy.inを次のように設定する.
atype = Cu,nat = 8は,読み込む3構造の原子種と原子数に合わせている.tot_struc = 5とし,読み込んだ3構造にランダム生成した2構造を加える.load_struc_flag = Trueで初期構造の読み込みを有効にする.jobcmdは計算機環境に合わせて変更する.
データの配置と実行
初回のcryspy実行前に,作成した構造データを配置する.
3構造が読み込まれ,不足する2構造がランダム生成される.初期構造の準備が完了すると,一旦終了する.
以降は通常のRSと同様に,再びcryspyを実行して構造最適化を進める.
読み込み結果の確認
./data/init_POSCARSに,読み込んだ構造とランダム生成した構造を合わせた5構造が保存される.
| 構造ID | 初期構造 |
|---|---|
0 | Cu8_1.cifから読み込んだ構造 |
1 | Cu8_2.cifから読み込んだ構造 |
2 | Cu8_3.cifから読み込んだ構造 |
3,4 | ランダム生成した構造 |
./data/pkl_data/init_struc_data.pklも,この5構造を含む内容に更新される.
構造数や原子種・組成などの条件を満たさない場合はエラーになる.詳細は機能 > 初期構造の読み込み > 読み込み時のチェックを参照.