cryspy-Eplot
最終更新日:2026年10月16日
cryspy-Eplot コマンド
CrySPY version 1.4.1以降では,cryspy-Eplotコマンドがインストールされる.
EA-vcでは,デフォルトで各世代の計算終了時に凸包図が自動的に生成・保存される.出力間隔の変更や自動出力の無効化は,[option]セクションのenergy_output_intervalで指定する(入力ファイル > [option] Sectionを参照).
後から描画パラメータを変更したい場合は,cryspy-Eplotコマンドを用いて再描画できる.
変更できる入力パラメーターは以下のページを参考.
実行方法とオプション
cryspy.inがあるディレクトリで,下記コマンドを実行.
| Option | Description |
|---|---|
-c, --composition-window | cryspy.inで指定された組成範囲を描画した図を保存する.詳細は組成範囲の確認を参照. |
エネルギープロット(RS,EA)
凸包プロット(EA-vc)
通常プロット(2元系,3元系)
世代を指定した再描画
凸包は第3世代,表示する構造は第2世代を指定した例.
組成制限がある場合の描画
組成制限を設定した2元系・3元系の描画例.青色の領域が組成の許容範囲を表す.
組成範囲の確認(-c)
version 1.5.0以降では,組成制限が設定されている場合に,-cオプションを用いて許容される組成範囲をプロットできる.
EA-vcでmin_compまたはmax_compを指定している場合,次のコマンドで,現在のcryspy.inに設定された組成の許容範囲を描画できる.
探索結果のデータを必要としないため,探索を開始する前でも入力した組成制限を確認できる.
通常の2元系・3元系では,図は./data/convex_hull/composition_window_input.<fig_format>に保存される.
fig_formatのデフォルトはsvgであり,[visual]セクションでpngやpdfにも変更できる.
原子種の配置は,同じく[visual]セクションのaxis_orderで指定する.
ファイル名のinputは,世代番号によらず,実行時の入力に基づく図であることを表す.
以下は2元系・3元系の描画例.
この図はmin_compとmax_compから求めた連続的な組成領域を表す.
ll_nat・ul_natによる整数の原子数の制約や,chargeによる電荷中性条件は反映されない.
入力例や図の見方は組成制限を参照.
-cを指定した場合は組成範囲の図を出力して終了する.
探索結果のエネルギーや凸包を再描画する場合は,-cを付けずにcryspy-Eplotを実行する.
軸の配置変更
cryspy.inの[visual]セクションでaxis_orderを変更し,cryspy-Eplotを実行すると,原子種の配置を変更して再描画できる.
設定の詳細はチュートリアル > EA-vc > 解析と可視化および入力ファイル > [visual]セクションを参照.
2元系では,atypeの順にl(左)とr(右)を指定する.
左はaxis_order = lr,右はaxis_order = rlの例.
3元系では,atypeの順にt(上),l(左),r(右)を指定する.
左はaxis_order = tlr,右はaxis_order = ltrの例.
化合物を基準とした凸包(terminals)
cryspy.inの[visual]セクションでterminalsに2つまたは3つの化合物組成を指定すると,それらを基準とした凸包を描画できる.
この処理にはpymatgenのCompoundPhaseDiagramを使用している.
基準となる化合物組成の選び方により,3元系を擬3元系として,4元系を擬3元系として描画することもできる.ここでは,3元系を擬2元系として描画する例を示す.
この設定はcryspy-Eplotによる事後解析用であり,探索中の凸包計算や自然選択には影響しない.
以下は,3元系のLi–Al–Oに電荷中性条件を課し,第30世代まで探索した例.[structure]セクションでは次のように設定している.
この電荷中性条件を満たす組成は,3元系の組成図ではLi2OとAl2O3を結ぶ直線上にある.そのため,これらの化合物組成を基準にすることで,Li2O–Al2O3の擬2元系として凸包を描画できる.電荷中性条件の設定については,機能 > 電荷中性条件を参照.
左は元素を基準とした3元系の凸包,右はLi2OとAl2O3を基準とした擬2元系の凸包.
右の図は,[visual]セクションを以下のように設定してcryspy-Eplotを実行すると得られる.
出力ファイル名には,基準とした化合物組成を表す_terminals_Li2O-Al2O3が付く.この例では,デフォルトのsvg形式で./data/convex_hull/conv_hull_gen_30_terminals_Li2O-Al2O3.svgに保存される.
化合物組成を2つ指定した場合,terminal_axis_orderを省略するとデフォルトのlrが使われ,terminalsの指定順にLi2Oが左,Al2O3が右に配置される.
指定した各化合物組成のデータが,描画に用いる相図データに含まれている必要がある.
パラメータの詳細は入力ファイル > [visual]セクションを参照.