解析と可視化

最終更新日:2026年10月16日

自動エネルギープロット

バージョン1.4.4からは,デフォルトで各世代の計算終了時に自動的にエネルギープロットが行われ, ファイルは下記に保存される.

./data/energy_plot/energy_EA_gen_{gen}.{fig_fotmat}.

バージョン1.5.0以降は,[option]セクションのenergy_output_intervalで出力間隔(世代数)を変更できる.デフォルトは1(毎世代)で,0なら自動出力を無効にする.詳細は入力ファイル > [option] Sectionを参照.

energy_EA_gen_3 energy_EA_gen_3

cryspy.inの[visual]セクションで以下の入力変数が指定可能となっている. 入力変数の詳細はこちら CrySPY > Input file > [visual] section.

...
[visual]
ymax = 0.2
markersize = 10
fig_format = svg
...

cryspy-Eplotを用いた再プロット

もしプロットされた図を調整して再プロットしたい場合は,cryspy-Eplotコマンドを使えば簡単に実行できる.

cryspy-Eplot 

cryspy-Eplotコマンドを用いる場合は,専用の以下の入力変数も利用可能となっている.

  • plot_min_gen
  • plot_max_gen
  • ref_gen

例えば,2世代目における図を再プロットするには,[visual]セクションを下記のように書く.

...
[visual]
plot_max_gen = 2
...

cryspy-Eplotを実行すると

cryspy-Eplot 

energy_EA_gen_2 energy_EA_gen_2

この場合,CrysPYは ./data/energy_plot/energy_EA_gen_{gen}.{fig_fotmat}にファイルを上書き保存する.

plot_min_genとplot_max_genを用いることで,プロットする世代の範囲を指定することも可能である. plot_min_genに値が設定された場合,たとえそれが1であっても普段と異なる次のファイルに図が保存される. ./data/energy_plot/energy_EA_gen_{plot_min_gen}-{plot_max_gen}.{fig_fotmat}.

例えば,第2世代時点での結果から,2世代目だけの結果を抜き出すには下記のように行う.

...
[visual]
plot_min_gen = 2
plot_max_gen = 2
...

energy_EA_gen_2-2 energy_EA_gen_2-2

どの時点での世代の結果を用いるか(x軸の最大値に関係)は,ref_genで指定できる. 例えば,ページ最上部の図にあるように,第3世代までの結果から,第2世代目の結果だけ抜き出すには,以下のように設定する.

...
[visual]
plot_max_gen = 2
plot_min_gen = 2
ref_gen = 3
...

ref_genが指定されている場合は,ファイル名は以下のようになる. energy_EA_gen_{plot_min_gen}-{plot_max_gen}_ref_{ref_gen}.{fig_format}.

energy_EA_gen_2-2 energy_EA_gen_2-2

より詳細なデータ解析や,図の編集がしたければ,次に書いてあるようにファイルをダウンロードしてJupyter notebookを使うと良い.

データのダウンロード

ここでは,CrySPYのデータをローカルPCで解析・可視化することを前提としている. CrySPYをスーパーコンピュータやワークステーションで使用している場合は,データをローカルPCにダウンロードすること. work や backup ディレクトリは,ファイルサイズが非常に大きくなる可能性があるため,不要であれば削除してよい.

Jupyter Notebook

先ほどダウンロードした結果の中にある data/ ディレクトリに移動する. その後,CrySPY utilityがローカルにダウンロード してある場合は cryspy_analyzer_EA.ipynb をコピーする. またはGitHubから直接ダウンロードしてくる(CrySPY_utility/notebook/). Jupyter を起動し(VScode,Jupyter Lab,Jupyter Notebook など), セルを順番に実行するだけで,以下のような図を得ることができる.

Cu8Au8_EA Cu8Au8_EA