# Fileset

[toast-0.6.0-manual-0.8.pdf](https://mdr.nims.go.jp/filesets/93fbdd03-5cfe-4fb5-9e5f-8c1ae2d6663d/download)

## Creator

[XU, Yibin](https://orcid.org/0000-0001-8600-8748), [ARAI, Masao](https://orcid.org/0000-0003-0088-5649)

## Rights

MIT License

## Other metadata

[TOAST: Template Oriented Atomic Simulation Toolkit](https://mdr.nims.go.jp/datasets/168ba0db-5396-4389-89f7-c976ffa101af)

## Fulltext

■ ■               第一原理自動計算プログラム Template Oriented Atomic Simulation Toolkit (TOAST) ユーザーマニュアル                           toast-0.6.0-manual-0.8 2019/11/29 ■ ■  1  目次  1. プログラムの概要 ........................................................................................................................................................ 3 2. プログラムのインストール、環境設定 ...................................................................................................................... 4 2.1 動作環境 / 環境設定 .............................................................................................................................................. 4 2.1.1 Pythonのインストール .................................................................................................................................. 4 2.1.2 第一原理計算プログラム ................................................................................................................................ 4 2.1.3 計算結果の可視化 ........................................................................................................................................... 4 2.2 インストール方法 .................................................................................................................................................. 5 2.3 環境設定 .................................................................................................................................................................. 5 2.3.1 計算シナリオ設定ファイルの編集 ................................................................................................................. 5 2.3.2 ジョブ実行設定ファイルの編集..................................................................................................................... 6 3. プログラムの使用方法 ................................................................................................................................................. 7 3.1 概要 ......................................................................................................................................................................... 7 3.2 計算パラメーター .................................................................................................................................................. 8 3.3 設定ファイル ........................................................................................................................................................ 13 3.3.1 共通設定ファイル (toast.cfg) ...................................................................................................................... 13 3.3.2 計算シナリオ設定ファイル .......................................................................................................................... 14 3.3.3 擬ポテンシャル設定ファイル ...................................................................................................................... 15 3.3.4 設定ファイル例 ............................................................................................................................................. 16 3.3.4.1 共通設定ファイル例 (toast.cfg) ............................................................................................................ 16 3.3.4.2 設定ファイル例 (VASP) ........................................................................................................................ 17 3.3.4.1 設定ファイル例 (Quantum ESPRESSO) .......................................................................................... 21 3.3.4.1 設定ファイル例 (ABINIT) ................................................................................................................... 27 3.3.5 ジョブ実行設定ファイル .............................................................................................................................. 31 3.3.6 ジョブ実行設定ファイル例 .......................................................................................................................... 32 3.3.6.1 設定ファイル例 (PBS) .......................................................................................................................... 32 3.4 プログラムの実行 ................................................................................................................................................ 33 3.4.1 複数の物質の自動計算 .................................................................................................................................. 33 3.4.2 複数の物質の自動計算 (ジョブ状況更新/追加投入) .................................................................................. 33 3.4.3 1つの結晶構造の第一原理自動計算 ............................................................................................................ 33 3.4.4 計算データリスト ......................................................................................................................................... 35 3.4.5 計算状況 ......................................................................................................................................................... 36 3.4.6 可視化データ ................................................................................................................................................. 37 3.4.1 計算メタデータ ............................................................................................................................................. 39 3.5 計算データ ............................................................................................................................................................ 40 3.5.1 計算データの概要 ......................................................................................................................................... 40 3.5.2 第一原理自動計算データファイル calculations.xml ................................................................................ 41 4. プログラムの詳細 ...................................................................................................................................................... 46 4.1 プログラム構造 .................................................................................................................................................... 46 4.2 主要クラス、関数 ................................................................................................................................................ 47 4.2.1 calculation./autocalc.py ................................................................................................................................ 47 4.2.2 calculation./calc.py ........................................................................................................................................ 47 4.2.3 calculation./calculator.py.............................................................................................................................. 47 4.2.4 calculation./vasp.py ...................................................................................................................................... 48 4.2.5 calculation./espresso.py ................................................................................................................................ 48 4.2.6 calculation./abinit.py .................................................................................................................................... 48 4.2.7 structure/crystal.py ...................................................................................................................................... 49  2 4.2.8 jobmanage/job.py .......................................................................................................................................... 49 4.2.9 calculation/calprop.py................................................................................................................................... 49 4.2.10 calculation/calvis.py ................................................................................................................................... 49 4.2.11 calculation/metadata.py ............................................................................................................................. 49     3  1. プログラムの概要   第一原理自動計算プログラムは、ユーザーが用意した結晶構造 (CIF ファイル) に対し、第一原理計算を実行するプログラムである。第一原理計算プログラムは、ユーザーが利用可能なプログラムを利用することを想定している。第一原理自動計算プログラムの概要を図 1.1に示す。                      図 1.1 第一原理自動計算プログラムの概要  第一原理計算プログラムの主な特徴を以下に示す。  Pythonプログラム群で構成されおり、Linux環境において、コマンドベースで実行する。  第一原理自動計算プログラムのインターフェースは、以下の第一原理計算プログラムに対応している。 ・ The Vienna Abinitio Simulation Package (VASP)   （http://www.vasp.at/） ・ Quantum ESPRESSO   （http://www.quantum-espresso.org/） ・ ABINIT  （http://www.abinit.org/）  システムまたはユーザーが用意した計算シナリオに基づいて、第一原理計算を順次計算を実行する。  設定ファイルを編集することで、ユーザー環境に合わせて利用可能である。        計算サーバー第一原理計算プログラム VASP,  Quantum Espresso, ABINIT, …物質(結晶構造)(ユーザーが用意)第一原理計算実行データ解析エネルギー、電荷密度、状態密度、バンド構造、・・・第一原理計算結果データ表示、可視化計算シナリオ実行プログラム群結晶構造解析プログラムデータ解析プログラム群入力データ（共通データ）原子構造、計算条件、k点ポテンシャルデータジョブスクリプト計算データ（共通データ）データ解析データ入力データ、実行スクリプト、出力データ第一原理計算プログラム・インターフェース群結晶構造CIFファイルAtomWork, ICSD結晶構造作成ソフトVESTA, CrystalXXX, ...第一原理自動計算プログラム第一原理計算データ共通フォーマット(XMLファイル)第一原理計算プログラムインターフェース共通フォーマット(XMLファイル)⇔ 入出力ファイル⇔ ジョブスクリプト (PBS系)ユーザー設定ファイル計算シナリオ、計算パラメータジョブスクリプト (テンプレート)プログラムコマンド利用原子/分子可視化ソフトJmol, VESTA, XCrysDen, グラフ作成ソフトGnuplot,  4  2. プログラムのインストール、環境設定  2.1 動作環境 / 環境設定  第一原理自動計算プログラムは、Linux環境の計算機で利用することを想定している。 必要なアプリケーションを以下に示す。  項目 アプリケーション 備考 Python実行環境 Python 3.X 標準パッケージ numpyが必要 第一原理計算プログラム実行環境 第一原理計算プログラム VASP, Quantum Espresso , ABINIT 計算結果可視化環境 Gnuplot 結晶構造可視化アプリケーション    2.1.1 Pythonのインストール  Pythonパッケージは、多くのLinuxディストリビューションの提供パッケージとしてインストールが可能である。Pythonパッケージの標準パッケージの他に、Pythonパッケージnumpyのインストールが必要である。  または、Pythonパッケージをダインロードし、ビルドを行う。(https://www.python.org)  2.1.2 第一原理計算プログラム  第一原理計算プログラムは、ユーザーが利用可能なプログラムを利用することを想定している。 第一原理計算プログラムのインターフェースは、以下の第一原理計算プログラムに対応している。  第一原理計算プログラム 第一原理計算プログラム 動作確認バージョン Webサイト The Vienna Abinitio Simulation Package (VASP) VASP 5.4.4 http://www.vasp.at/ Quantum ESPRESSO QE 6.4.1 http://www.quantum-espresso.org/ ABINIT ABINIT 8.10.3 http://www.abinit.org/  第一原理計算プログラムのコンパイル、使用方法については、各プログラムのマニュアル、Webサイトを参照されたい。  2.1.3 計算結果の可視化  第一原理計算プログラムの計算結果の可視化は、市販/公開されているアプリケーションを利用する。  項目 データフォーマット アプリケーション例 Crystal Structure CIFファイル 第一原理計算プログラムの入出力データ VESTA, Jmol, XCrysDen他 Brillouin Zone Gnuplotスクリプト Jmolスクリプト Gnuplot Jmol Charge Density Gaussian Cube VESTA, Jmol, Xcrysden, 他 Density of State  Gnuplot 他 Band Structure  Gnuplot 他  5  2.2 インストール方法  第一原理自動計算プログラムのアーカイブ toast-X.X.X.tar.gz を、インストールするディレクトリで展開する。  第一原理自動計算プログラムの構成 インストールディレクトリ サブディレクトリ 内容 toast-X.X.X config 設定ファイル  calc Pythonプログラム群  test テスト用サンプルデータ   2.3 環境設定   第一原理自動計算プログラムは、toast/config にある設定ファイルを、ユーザーの計算環境に合わせて編集を行う。設定ファイルは、Config File形式(RFC822形式)となっており、ヘッダー[sectioin]でセクションに分割され、各セクション内でパラメーターと値をname = value の形式で記述する。 * 設定ファイルの詳細については、3章に記述している。  設定ファイル一覧 項目 ファイル 内容 共通設定ファイル toast.cfg 共通設定ファイル ジョブ管理、計算シナリオ 計算シナリオ設定ファイル vasp.para.cfg espresso..para.cfg abinit.para.cfg VASP用設定ファイル Quantum ESPRESSO用設定ファイル ABINIT用設定ファイル 擬ポテンシャル設定ファイル vasp.pp.XXX.txt espresso.pp.XXX.txt abinit.pp.XXX.txt VASP用ポテンシャルリスト QE用ポテンシャルリスト ABINIT用ポテンシャルリスト ジョブ実行設定ファイル jobmanage.cfg jobtemplate/XXX.tmpl ジョブ管理システム設定  2.3.1 計算シナリオ設定ファイルの編集  各計算プログラムの計算シナリオ設定ファイルの以下の項目をユーザーの第一原理計算プログラムの実行環境に合わせて記述する。  共通設定ファイル、計算シナリオ設定ファイル [general]セクション 項目 内容 記述例 ppdir 擬ポテンシャルファイルのディレクトリ ppdir = /opt/app/vasp/potpaw_PBE ppdir = /opt/app/espresso/SSSP_eff_PBE ppdir = /opt/app/abinit/JTH-PBE-atomicdata-1.0 cmd 計算プログラムの実行コマンド cmd = /opt/app/vasp/vasp.5.3.5/vasp cmd = /opt/app/espresso/espresso-5.4.0/bin/pw.x cmd = /opt/app/abinit/abinit-8.0.8/bin/abinit     6  2.3.2 ジョブ実行設定ファイルの編集  ジョブ管理システムを使用する場合は、ジョブ実行設定ファイルの編集、およびジョブ実行スクリプトのテンプレートの作成を行う。第一原理自動計算プログラムでは、PBS系のジョブ管理システムのテンプレートを用意している。  ジョブ実行設定ファイル [general]セクション 項目 内容 記述例 jobmanage_type ジョブ実行のTypeを指定 interactive  interactive実行 section-name  ジョブ管理システムを利用  jobmanage_type = interactive jobmanage_type = pbs [section-name] ジョブ実行スクリプトテンプレートの指定 テンプレート内の変数の設定 ジョブ投入コマンドの設定 ジョブ情報コマンドの設定 [pbs] template = job_template/pbs.tmpl core = 8 np = 8 queue = L ncpus = 1 nodes = 1 ppn = 8 walltime = 24:00:00 job_name =  submit = qsub stat = qstat        7  3. プログラムの使用方法  3.1 概要  第一原理自動計算プログラムは、ユーザーが用意した結晶構造 (CIF ファイル) に対し、第一原理計算を実行するプログラムである。  Pythonプログラム群で構成されおり、Linux環境において、コマンドベースで実行する。  第一原理自動計算プログラムのインターフェースは、以下の第一原理計算プログラムに対応している。 ・ The Vienna Abinitio Simulation Package (VASP)   （http://www.vasp.at/） ・ Quantum ESPRESSO   （http://www.quantum-espresso.org/） ・ ABINIT  （http://www.abinit.org/）  システムまたはユーザーが用意した計算シナリオに基づいて、第一原理計算を順次計算を実行する。  設定ファイルを編集することで、ユーザー環境に合わせて利用可能である。  第一原理自動計算プログラムの処理概要を以下に示す。  ユーザーが容易した複数の結晶構造(CIF File)を読み込み  各結晶構造(Material ID)ごとに計算ディレクトリを作成  計算シナリオ(計算シナリオ設定ファイル)に基づいて、入力データの生成、ジョブ実行スクリプトを生成し、計算を実行する。  計算データは、自動計算データファイルに抽出・出力される。  バンドギャップ等の計算結果解析を行う。  結晶構造、電荷密度、状態密度分布、バンド構造は、市販/公開されているアプリケーションで可視化可能なデータ形式で出力する。                    図 3.1 自動計算システムの処理概要   VASP第一原理計算実行データ解析エネルギー、電荷密度、状態密度、バンド構造、・・・第一原理計算プログラム・インターフェース群第一原理自動計算パッケージ原子/分子可視化ソフトJmol, VESTA, XCrysDen, グラフ作成ソフトGnuplot, ABINIT Quantum Espresso計算シナリオcfgファイルPPリストファイル結晶構造CIFファイル入力データ実行スクリプト出力データ Calc Folder(Material)中間フォーマットXMLファイル計算結果データ結晶構造 CIFCharge DensityDOS, Band Structure…計算結果リスト第一原理自動計算システムユーザーインターフェース 8  3.2 計算パラメーター   第一原理計算プログラムのエネルギーカットオフ、交換相関項、SCF計算反復法、構造最適化手法、収束判定値等の計算パラメーターは、計算シナリオ設定ファイルに記述する。 結晶構造に依存する計算のユニットセル (Primitive Cell)、原子の相対座標、k点メッシュ、バンド構造計算のk点経路や、擬ポテンシャルに依存するバンド数等は、自動計算プログラム内で計算する。  項目 計算方法 結晶構造 原子リスト(原子座標) CIF Fileのcrystal_system, spacegroup, cell_length, cell_angle, symmetry, atomから、Conventional Cell, Primitive Cell, 原子リスト(原子座標)を計算 K点メッシュ 計算シナリオ設定ファイルにおいて、_kpoints_lengthで length lを指定し計算。 biは、Reciprocal Lattice Vector Nkx = max(4, l * |b1|+0.5) Nky = max(4, l * |b2|+0.5) Nkz = max(4, l * |b3|+0.5) 計算シナリオ設定ファイルにおいて、_kpoints_spacingで spacing sを指定し計算。 Nkx = max(4,  |b1| / s +0.5) Nky = max(4,  |b2| / s +0.5) Nkz = max(4,  |b3| / s +0.5) バンド数 各元素の擬ポテンシャルのZ Valenceの値を抽出。 Z Valence * 各元素の原子数からElectron数 Nelectを計算。 Nbands = int(Nelect*0.6+0.5) + max(4, Natom*2) バンド計算用のk点経路 CIF Fileの crystal_system, spacegroup, cell_length, cell_angle, symmetry から、Brillouin Zoneを求め、k点経路を計算。  バンド計算用のk点経路 分類 System Center Type Condition K points Path,  K Points 単純立方格子 cubic simple  A＝B＝C α＝β＝γ＝90 Delta G(0.0 0.0 0.0) X(0.5 0.0 0.0) Z X(0.5 0.0 0.0) M(0.5 0.5 0.0) Sigma M(0.5 0.5 0.0) G(0.0 0.0 0.0) Lambda G(0.0 0.0 0.0) R(0.5 0.5 0.5) T R(0.5 0.5 0.5) M(0.5 0.5 0.0)    S X(0.5 0.0 0.0) R(0.5 0.5 0.5)) 面心立方格子 cubic face  A＝B＝C α＝β＝γ＝90 Delta G(0.0 0.0 0.0) X(1.0 0.0 0.0) Z X(1.0 0.0 0.0) W(1.0 0.5 0.0) Q W(1.0 0.5 0.0) L(0.5 0.5 0.5) Lambda L(0.5 0.5 0.5) G(0.0 0.0 0.0) Sigma G(0.0 0.0 0.0) K(0.75 0.75 0.0) S U(1.0 0.5 0.5) X(1.0 0.0 0.0) 体心立方格子 cubic body  A＝B＝C α＝β＝γ＝90 Delta G(0.0 0.0 0.0) H(1.0 0.0 0.0) G H(1.0 0.0 0.0) N(0.5 0.5 0.0) Sigma N(0.5 0.5 0.0) G(0.0 0.0 0.0) Lambda G(0.0 0.0 0.0) P(0.5 0.5 0.5) D P(0.5 0.5 0.5) N(0.5 0.5 0.0)    F H(1.0 0.0 0.0) P(0.5 0.5 0.5) 六方格子 hexagonal simple  A＝B≠C Sigma G(0.0 0.0 0.0) M(0.5 0.0 0.0)  9 α＝β＝90 γ＝120 T' M(0.5 0.0 0.0) K(1.0/3 1.0/3 0.0) T K(1.0/3 1.0/3 0.0) G(0.0 0.0 0.0) Lambda G(0.0 0.0 0.0) A(0.0 0.0 0.5) R A(0.0 0.0 0.5) L(0.5 0.0 0.5) S' L(0.5 0.0 0.5) H(1.0/3 1.0/3 0.5) S H(1.0/3 1.0/3 0.5) A(0.0 0.0 0.5)    U L(0.5 0.0 0.5) M(0.5 0.0 0.0)    P K(1.0/3 1.0/3 0.0) H(1.0/3 1.0/3 0.5) 三方格子1 trigonal simple type1 A＝B＝C α＝β＝γ α＜90 Q F(0.0 0.5 1.0) n1(2eta 0.5-eta 1.0) Sigma n1(eta eta 0.0) G(0.0 0.0 0.0) Lambda G(0.0 0.0 0.0) Z(0.0 0.0 1.5) B Z(0.0 0.0 1.5)            n2(-eta 2eta 1.5) Y n2(0.5-eta 2eta 0.5) L(0.5 0.0 0.5) l1 L(0.5 0.0 0.5) G(0.0 0.0 0.0) 三方格子2 trigonal simple type2 A＝B＝C α＝β＝γ α≧90 Sigma F(0.5 0.5 0.0) G(0.0 0.0 0.0) Lambda G(0.0 0.0 0.0) n1(0.0 0.0 eta) P n1(1.0 0.0 eta) Z(1.0 0.0 -0.5) Y Z(0.0 1.0 0.5)            L(0.5 0.0 0.5) l1 L(0.5 0.0 0.5) G(0.0 0.0 0.0) 単純正方格子 tetragonal simple  A＝B≠C α＝β＝γ＝90 Delta G(0.0 0.0 0.0) X(0.5 0.0 0.0) Y X(0.5 0.0 0.0) M(0.5 0.5 0.0) Sigma M(0.5 0.5 0.0) G(0.0 0.0 0.0) Lambda G(0.0 0.0 0.0) Z(0.0 0.0 0.5) U Z(0.0 0.0 0.5)            R(0.5 0.0 0.5) T R(0.5 0.0 0.5) A(0.5 0.5 0.5) S A(0.5 0.5 0.5) Z(0.0 0.0 0.5)    W R(0.5 0.0 0.5) X(0.5 0.0 0.0)    V M(0.5 0.5 0.0) A(0.5 0.5 0.5) 体心正方格子1 tetragonal body type1 A＝B≠C α＝β＝γ＝90 A＝B＜C Lambda Z(0.0 0.0 1.0)            G(0.0 0.0 0.0) Sigma G(0.0 0.0 0.0) n1(eta 0.0 0.0) F n1(eta 0.0 1.0) Z(0.0 0.0 1.0) U Z(0.0 0.0 1.0)            n2(eta eta 1.0) Y n2(eta 1.0-eta 0.0) X(0.5 0.5 0.0) Delta X(0.5 0.5 0.0) G(0.0 0.0 0.0)    W X(0.5 0.5 0.0) P(0.5 0.5 0.5) Q P(0.5 0.5 0.5) N(0.5 0.0 0.5) 体心正方格子2 tetragonal body type2 A＝B≠C α＝β＝γ＝90 A＝B＞C V Z(1.0 0.0 0.0)            n1(1.0 0.0 eta) Lambda n1(0.0 0.0 eta) G(0.0 0.0 0.0) Sigma G(0.0 0.0 0.0) Z(1.0 0.0 0.0) Y Z(1.0 0.0 0.0)            X(0.5 0.5 0.0) Delta X(0.5 0.5 0.0) G(0.0 0.0 0.0)    W X(0.5 0.5 0.0) P(0.5 0.5 0.5) Q P(0.5 0.5 0.5) N(0.5 0.0 0.5)  10 単純直方格子 orthorhombic simple  A≠B≠C α＝β＝γ＝90 Sigma G(0.0 0.0 0.0) X(0.5 0.0 0.0) D X(0.5 0.0 0.0) S(0.5 0.5 0.0) C S(0.5 0.5 0.0) Y(0.0 0.5 0.0) Delta Y(0.0 0.5 0.0) G(0.0 0.0 0.0) Lambda G(0.0 0.0 0.0) Z(0.0 0.0 0.5) A Z(0.0 0.0 0.5)            U(0.5 0.0 0.5) P U(0.5 0.0 0.5) R(0.5 0.5 0.5) E R(0.5 0.5 0.5) T(0.0 0.5 0.5) B T(0.0 0.5 0.5) Z(0.0 0.0 0.5)    G U(0.5 0.0 0.5) X(0.5 0.0 0.0)    Q S(0.5 0.5 0.0) R(0.5 0.5 0.5)    H T(0.0 0.5 0.5) Y(0.0 0.5 0.0) 面心直方格子1 orthorhombic face type1 A≠B≠C α＝β＝γ＝90 ka^2 < kb^2 + kc^2 kb^2 < kc^2 + ka^2 kc^2 < ka^2 + kb^2 Lambda Z(0.0 0.0 1.0 ) G(0.0 0.0 0.0) Sigma G(0.0 0.0 0.0) X(1.0 0.0 0.0) D X(1.0 0.0 0.0) n1(1.0 eta 0.0) B n1(0.0 eta 1.0) Z(0.0 0.0 1.0) A Z(0.0 0.0 1.0)            n2(eta 0.0 1.0) C n2(eta 1.0 0.0) Y(0.0 1.0 0.0) Delta Y(0.0 1.0 0.0) G(0.0 0.0 0.0)    H Y(0.0 1.0 0.0) n3(0.0 1.0 eta) G n3(1.0 0.0 eta) X(1.0 0.0 0.0) 面心直方格子2 orthorhombic face type2 A≠B≠C α＝β＝γ＝90 ka^2 > kb^2 + kc^2 Lambda Z(0.0 0.0 1.0)            G(0.0 0.0 0.0) Sigma G(0.0 0.0 0.0) n1(eta 0.0 0.0) U n1(eta 1.0 1.0) X(0.0 1.0 1.0) B X(0.0 1.0 1.0) Z(0.0 0.0 1.0) A Z(0.0 0.0 1.0)            n2(eta 0.0 1.0) C n2(eta 1.0 0.0) Y(0.0 1.0 0.0) Delta Y(0.0 1.0 0.0) G(0.0 0.0 0.0)    H Y(0.0 1.0 0.0) X(0.0 1.0 1.0) 面心直方格子3 orthorhombic face type3 A≠B≠C α＝β＝γ＝90 kb^2 > kc^2 + ka^2 Lambda Z(0.0 0.0 1.0)            G(0.0 0.0 0.0) Sigma G(0.0 0.0 0.0) X(1.0 0.0 0.0) D X(1.0 0.0 0.0) n2(1.0 eta 0.0) B n2(0.0 eta 1.0) Z(0.0 0.0 1.0) A Z(0.0 0.0 1.0)            Y(1.0 0.0 1.0) R Y(1.0 0.0 1.0) n1(1.0 eta 1.0) Delta n1(0.0 eta 0.0) G(0.0 0.0 0.0)    G Y(1.0 0.0 1.0) X(1.0 0.0 0.0) 面心直方格子4 orthorhombic face type4 A≠B≠C α＝β＝γ＝90 kc^2 > ka^2 + kb^2 Q Z(1.0 1.0 0.0)            n1(1.0 1.0 eta) Lambda n1(0.0 0.0 eta) G(0.0 0.0 0.0) Sigma G(0.0 0.0 0.0) X(1.0 0.0 0.0) D X(1.0 0.0 0.0) Z(1.0 1.0 0.0) C Z(1.0 1.0 0.0)            Y(0.0 1.0 0.0) Delta Y(0.0 1.0 0.0) G(0.0 0.0 0.0)  11    H Y(0.0 1.0 0.0) n2(0.0 1.0 eta) G n2(1.0 0.0 eta) X(1.0 0.0 0.0) 体心直方格子1 orthorhombic body type1 A≠B≠C α＝β＝γ＝90 A＞B A＞C Sigma G(0.0 0.0 0.0) X(1.0 0.0 0.0) U X(1.0 0.0 0.0) n1(1.0 eta 0.0) Delta n1(0.0 eta 0.0) G(0.0 0.0 0.0) Lambda G(0.0 0.0 0.0) n2(0.0 0.0 eta) G n2(1.0 0.0 eta) X(1.0 0.0 0.0)    Q R(0.5 0.0 0.5) W(0.5 0.5 0.5) D W(0.5 0.5 0.5) S(0.0 0.5 0.5)    P T(0.5 0.5 0.0) W(0.5 0.5 0.5) 体心直方格子2 orthorhombic body type2 A≠B≠C α＝β＝γ＝90 B＞C B＞A Sigma G(0.0 0.0 0.0) n2(eta 0.0 0.0) F n2(eta 1.0 0.0) X(0.0 1.0 0.0) Delta X(0.0 1.0 0.0) G(0.0 0.0 0.0) Lambda G(0.0 0.0 0.0) n1(0.0 0.0 eta) G n1(0.0 1.0 eta) X(0.0 1.0 0.0)    Q R(0.5 0.0 0.5) W(0.5 0.5 0.5) D W(0.5 0.5 0.5) S(0.0 0.5 0.5)    P T(0.5 0.5 0.0) W(0.5 0.5 0.5) 体心直方格子3 orthorhombic body type3 A≠B≠C α＝β＝γ＝90 C＞A C＞B Sigma G(0.0 0.0 0.0) n1(eta 0.0 0.0) F n1(eta 0.0 1.0) X(0.0 0.0 1.0) U X(0.0 0.0 1.0) n2(0.0 eta 1.0) Delta n2(0.0 eta 0.0) G(0.0 0.0 0.0) Lambda G(0.0 0.0 0.0) X(0.0 0.0 1.0)    Q R(0.5 0.0 0.5) W(0.5 0.5 0.5) D W(0.5 0.5 0.5) S(0.0 0.5 0.5)    P T(0.5 0.5 0.0) W(0.5 0.5 0.5) 底心直方格子1 orthorhombic base type1 A≠B≠C α＝β＝γ＝90 A＜B Sigma G(0.0 0.0 0.0) n1(eta 0.0 0.0) C n1(eta 1.0 0.0) Y(0.0 1.0 0.0) Delta Y(0.0 1.0 0.0) G(0.0 0.0 0.0) Lambda G(0.0 0.0 0.0) Z(0.0 0.0 0.5) A Z(0.0 0.0 0.5)   n2(eta 0.0 0.5) E n2(eta 1.0 0.5) T(0.0 1.0 0.5) B T(0.0 0.0 0.5) Z(0.0 1.0 0.5)    H Y(0.0 1.0 0.0) T(0.0 1.0 0.5)    D S(0.5 0.5 0.0) R(0.5 0.5 0.5) 底心直方格子2 orthorhombic base type2 A≠B≠C α＝β＝γ＝90 A＞B Sigma G(0.0 0.0 0.0) Y(1.0 0.0 0.0) F Y(1.0 0.0 0.0) n1(1.0 eta 0.0) Delta n1(0.0 eta 0.0) G(0.0 0.0 0.0) Lambda G(0.0 0.0 0.0) Z(0.0 0.0 0.5) A Z(0.0 0.0 0.5)            T(1.0 0.0 0.5)  12 G T(1.0 0.0 0.5) n2(1.0 eta 0.5) B n2(0.0 eta 0.5) Z(0.0 0.0 0.5)    H Y(1.0 0.0 0.0) T(1.0 0.0 0.5)    D S(0.5 0.5 0.0) R(0.5 0.5 0.5) 単純単斜格子 monoclinic simple  A≠B≠C α＝γ＝90 β＞90 Lambda G(0.0 0.0 0.0) Y(0.0 0.5 0.0) l1 Y(0.0 0.5 0.0) C(0.0 0.5 0.5) W C(0.0 0.5 0.5) Z(0.0 0.0 0.5) l2 Z(0.0 0.0 0.5)  G(0.0 0.0 0.0) l3 G(0.0 0.0 0.0) X(0.5 0.0 0.0) V X(0.5 0.0 0.0) A(0.5 0.5 0.0) l4 A(0.5 0.5 0.0) Y(0.0 0.5 0.0) l5 Y(0.0 0.5 0.0) E(0.5 0.5 -0.5) U E(0.5 0.5 -0.5) D(0.5 0.0 -0.5) l6 D(0.5 0.0 -0.5) G(0.0 0.0 0.0) 底心単斜格子1 monoclinic base type1 A≠B≠C α＝γ＝90 β＞90 A＜B Lambda G(0.0 0.0 0.0) Y(0.0 1.0 0.0) l1 Y(0.0 1.0 0.0) n1(eta 1.0 0.0) l2 n1(eta 0.0 0.0) G(0.0 0.0 0.0) l3 G(0.0 0.0 0.0) Z(0.0 0.0 0.5) U Z(0.0 0.0 0.5)            M(0.0 1.0 0.5) l4 M(0.0 1.0 0.5) Y(0.0 1.0 0.0) 底心単斜格子2 monoclinic base type2 A≠B≠C α＝γ＝90 β＞90 A＞B Lambda G(0.0 0.0 0.0) n1(0.0 eta 0.0) C n1(1.0 eta 0.0) Y(1.0 0.0 0.0) l1 Y(1.0 0.0 0.0) G(0.0 0.0 0.0) l2 G(0.0 0.0 0.0) Z(0.0 0.0 0.5) U Z(0.0 0.0 0.5)            n2(0.0 eta 0.5) E n2(1.0 eta -0.5) M(1.0 0.0 -0.5) l3 M(1.0 0.0 -0.5) Y(1.0 0.0 0.0)      13  3.3 設定ファイル  3.3.1 共通設定ファイル (toast.cfg)  共通設定ファイル toast.cfg は、ジョブ管理、各プログラムに対する計算シナリオの共通設定を記述する。 共通設定ファイルの設定内容は、計算シナリオ設定ファイル、ジョブ管理設定ファイルより優先される。  Section name value  [job] jobmanage_type interactive [section-name] Interactive実行 [section]で指定したテンプレート、変数を用いてジョブスクリプトを生成 mpi_cmd  MPI実行コマンド nproc  プロセッサ数 [vasp] program  プログラム version  バージョン ppdir  ポテンシャルファイルのディレクトリを指定 pplist  元素のポテンシャルのリストファイルを指定 cmd  計算プログラムの実行コマンドを指定 scenario  計算シナリオファイル [espresso] program  プログラム version  バージョン ppdir  ポテンシャルファイルのディレクトリを指定 pplist  元素のポテンシャルのリストファイルを指定 cmd  計算プログラムの実行コマンドを指定 scenario  計算シナリオファイル [abinit] program  プログラム version  バージョン ppdir  ポテンシャルファイルのディレクトリを指定 pplist  元素のポテンシャルのリストファイルを指定 cmd  計算プログラムの実行コマンドを指定 scenario  計算シナリオファイル       14  3.3.2 計算シナリオ設定ファイル   第一原理自動計算プログラムは、toast/config にある設定ファイルを、ユーザーの計算環境に合わせて編集を行う。設定ファイルは、Config File形式(RFC822形式)となっており、ヘッダー[sectioin]でセクションに分割され、各セクション内でパラメーターと値をname = value の形式で記述する。#で始まる行はコメント行である。 * Python ConfigParserモジュールを使用している。   用意した CIF ファイルに対して、ユーザーが指定したシナリオ(scenario)に従って複数のタスク(task)を順番に実行する。  設定ファイルはヘッダ [section-name] で各セクションに分割される。  [general]セクション、[default]セクション以下のセクションは、順次実行するタスク(task)を設定する。  各タスクは、独自パラメーター (_name)と計算プログラムのパラメータ (name)から構成される。  計算プログラムのパラメータは、第一原理計算プログラムの入力データのキーワードそのものとする。 （第一原理計算プログラムの使用経験のあるユーザーを想定している。）  Section name value  [geneal] program  vasp espresso abinit 使用するプログラムを指定 VASP Quantum ESPRESSO ABINIT version  プログラムバージョン ppdir  ポテンシャルファイルのディレクトリを指定 pplist  元素のポテンシャルのリストファイルを指定 cmd  計算プログラムの実行コマンドを指定 [default] _kpoints_length 30 K点メッシュ生成における length を指定 _kpoints_spacing 0.3 K点メッシュ生成におけるspacingを指定 _spin  nomag ferro スピン計算の指定 スピンなし計算 スピン ferro 計算 name value 各[task]セクションで共通の計算プログラムのパラメーター 各[task]セクションで、_input=defaultが指定されている場合、これらの計算パラメータが追加される [task] _calc_dir  [task]を実行するサブディレクトリを指定 _structure cif task名 CIFファイルの結晶構造 [task]の計算結果の結晶構造 _input default 各[task]セクションで、[default]の計算パラメータが追加される _spin_criteion 0.1 スピン判定計算におけるスピン判定値 Task名が[check_spin]の場合に有効 _mkdir_X  生成するサブディレクトリを指定 _copy_X [src]  [dist] ファイルのコピー _name_list_X control system electrons 入力データのnamalist (QE用) name value 計算プログラムのパラメーター   15 3.3.3 擬ポテンシャル設定ファイル  第一原理計算プログラムの計算において、使用する各元素のポテンシャルを設定する。 第一原理自動計算プログラムは、各第一原理計算プログラム用に擬ポテンシャル設定ファイルを用意している。  プログラム 設定ファイル 擬ポテンシャル 備考 VASP potpaw_PBE.rec.txt Potpaw_PBE VASPの推奨ポテンシャル QE espresso.pp.pbe.sssp.eff.txt SSSP_eff_PBE Standard Solid State Pseudopotentials (SSSP) http://materialscloud.org/sssp/ espresso.pp.pbe.gbrv.txt GBRV pbe_UPF GBRV pseudopotential http://www.physics.rutgers.edu/gbrv/ ABINIT abinit.pp.pbe.jth.txt JTH PAW JTH PAW atomic datasets http://www.abinit.org/  擬ポテンシャル設定ファイルの記述 原子番号 元素名 ポテンシャルファイル/ディレクトリ …     16  3.3.4 設定ファイル例  3.3.4.1 共通設定ファイル例 (toast.cfg)  共通設定ファイル例 (toast.cfg) を以下に示す。  [job] #jobmanage_type = interactive jobmanage_type = pbs #mpi_cmd = mpijob -mpi nproc = 4  [espresso] program = espresso version = 6.1 ppdir = /opt/app/qe/gbrv pplist = espresso.pp.pbe.gbrv.txt bindir = /opt/app/qe/qe-6.1/bin cmd = pw.x -nk ${nk:1} nproc = 1 scenario = qe.para.noopt.checkspin.cfg  [vasp] program = vasp version = 5.3.5 ppdir = /opt/app/vasp/potpaw_PBE pplist = vasp.pp.pbe.rec.txt cmd = /opt/app/vasp/vasp.5.3.5/vasp scenario = vasp.para.cfg  [abinit] program = abinit version = 8.4.2 ppdir = /opt/app/abinit/JTH-PBE-atomicdata-1.0 pplist = abinit.pp.pbe.jth.txt #ppdir = /opt/app/abinit/gbrv #pplist = abinit.pp.pbe.gbrv.txt cmd = /opt/app/abinit/abinit-8.4.4/bin/abinit #cmd = /opt/app/abinit/abinit-7.10.5/bin/abinit scenario = abinit.para.cfg      17  3.3.4.2 設定ファイル例 (VASP)  VASP用の設定ファイル例を以下に示す。  (1) 計算シナリオ設定ファイル スピン判定計算、構造最適化計算、SCF計算、DOS計算、BAND計算を順次計算するシナリオである。  [general] program = vasp version = 5.3.5 ppdir = /opt/app/vasp/potpaw_PBE pplist = vasp.pp.pbe.rec.txt cmd = /opt/app/vasp/vasp.5.3.5/vasp #mpi_cmd = mpijob -mpi nproc = 1  [default] _kpoints_length = 30 #_kpoints_spacing = 0.03 #_spin = nonmag #_spin = ferro NPAR = 1 SYSTEM =  ISTART = 0 PREC = high ENCUT = 550 ALGO = fast #ALGO = normal EDIFF = 1E-6 NELM = 100  # default 60 #NELMIN = 8 #NELMDL = -5 ISPIN = NBANDS = ISMEAR = 0  # default 1 SIGMA = 0.1  # default 0.2 ISYM =  [check_spin] _calc_dir = spin _structure = cif _input = default _spin_criterion = 0.1 ISPIN = 2 LWAVE = .FALSE. LCHARG = .FALSE. IBRION = 2 ISIF = 3  18 NSW = 100 EDIFFG = 1e-5 POTIM = 0.05  [opt1] _calc_dir = opt.1 _structure = cif _input = default NELMIN = 8 LWAVE =.FALSE. LCHARG =.FALSE. IBRION =2 ISIF = 3 NSW = 200 EDIFFG = 1e-5 POTIM = 0.05  [opt2] _calc_dir = opt.2 _structure = opt1 _input = default NELMIN = 8 LWAVE =.FALSE. LCHARG =.FALSE. IBRION =2 ISIF = 3 NSW = 200 EDIFFG = -0.01 POTIM = 0.05  [scf] _calc_dir = scf _structure = opt2 _input = default NELMIN = 8 ISMEAR = -5 LAECHG = .TRUE.  [dos] _calc_dir = dos _structure = scf _input = default _copy_2 = ../scf/WAVECAR WAVECAR _copy_3 = ../scf/CHGCAR CHGCAR NELMIN = 8 ISMEAR = -5 ICHARG = 11 LORBIT = 11 _emin_ef = -20  19 _emax_ef = +20 EMIN = -20 EMAX = 30 NEDOS = 2501 LWAVE = .FALSE.  [band] _calc_dir = band _structure = scf _input = default _copy_2 = ../scf/WAVECAR WAVECAR _copy_3 = ../scf/CHGCAR CHGCAR ISMEAR =  SIGMA =  ICHARG = 11 LWAVE = .FALSE.  (2) 擬ポテンシャル設定ファイル  1  H  H 2  He  He 3  Li  Li_sv 4  Be  Be 5  B  B 6  C  C 7  N  N 8  O  O 9  F  F 10  Ne  Ne 11  Na  Na_pv 12  Mg  Mg 13  Al  Al 14  Si  Si 15  P  P 16  S  S 17  Cl  Cl 18  Ar  Ar 19  K  K_sv 20  Ca  Ca_sv 21  Sc  Sc_sv 22  Ti  Ti_sv 23  V  V_sv 24  Cr  Cr_sv_GW 25  Mn  Mn_pv 26  Fe  Fe 27  Co  Co 28  Ni  Ni 29  Cu  Cu 30  Zn  Zn  20 31  Ga  Ga_d 32  Ge  Ge_d 33  As  As 34  Se  Se 35  Br  Br 36  Kr  Kr 37  Rb  Rb_sv 38  Sr  Sr_sv 39  Y  Y_sv 40  Zr  Zr_sv 41  Nb  Nb_sv 42  Mo  Mo_sv 43  Tc  Tc_pv 44  Ru  Ru_sv_GW 45  Rh  Rh_sv_GW 46  Pd  Pd 47  Ag  Ag 48  Cd  Cd 49  In  In_d 50  Sn  Sn_d 51  Sb  Sb 52  Te  Te 53  I  I 54  Xe  Xe 55  Cs  Cs_sv 56  Ba  Ba_sv 57  La  La 58  Ce  Ce 59  Pr  Pr_3 60  Nd  Nd_3 61  Pm  Pm_3 62  Sm  Sm_3 63  Eu  Eu_2 64  Gd  Gd_3 65  Tb  Tb_3 66  Dy  Dy_3 67  Ho  Ho_3 68  Er  Er_3 69  Tm  Tm_3 70  Yb  Yb_2 71  Lu  Lu_3 72  Hf  Hf_pv 73  Ta  Ta_sv_GW 74  W  W_sv 75  Re  Re 76  Os  Os 77  Ir  Ir 78  Pt  Pt 79  Au  Au  21 80  Hg  Hg 81  Tl  Tl_d 82  Pb  Pb_d 83  Bi  Bi_d 84  Po  Po_d 85  At  At_d_GW 86  Rn  Rn 87  Fr  Fr_sv 88  Ra  Ra_sv 89  Ac  Ac 90  Th  Th 91  Pa  Pa 92  U  U 93  Np  Np 94  Pu  Pu 95  Am  Am 96  Cm  Cm   3.3.4.1 設定ファイル例 (Quantum ESPRESSO)  Quantum ESPRESSO用の設定ファイル例を以下に示す。  (1) 計算シナリオ設定ファイル スピン判定計算、構造最適化計算、SCF計算、DOS計算、BAND計算を順次計算するシナリオである。  [general] program = espresso version = 5.4.0 #ppdir = /opt/app/espresso/upf_files ppdir = /opt/app/espresso/SSSP_eff_PBE pplist = espresso.pp.pbe.sssp.eff.txt #ppdir = /opt/app/espresso/gbrv #pplist = espresso.pp.pbe.gbrv.txt cmd = /opt/app/espresso/espresso-5.4.0/bin/pw.x nproc = 1  [default] _kpoints_length = 30 #_kpoints_spacing = 0.03 #_spin = nonmag #_spin = ferro  _namelist_1 = control calculation =  prefix =  tstress = .true. tprnfor = .true. pseudo_dir = '../'  22 outdir = './' wfcdir = etot_conv_thr = 1.0e-5 forc_conv_thr = 1.0e-4 disk_io = 'low' wf_collect =  _namelist_2 = system ibrav = 0 nat =  ntyp =  nbnd =  ecutwfc = 40.0 ecutrho = 200.0 occupations = 'smearing' smearing = 'gaussian' degauss = 0.1 nspin = 1  _namelist_3 = electrons mixing_beta = 0.7 conv_thr = 1.0e-6  _namelist_4 = ions _namelist_5 = cell  [check_spin] _calc_dir = spin _structure = cif _input = default calculation = 'vc-relax' nspin = 2  [opt] _calc_dir = opt _structure = cif _input = default calculation = 'vc-relax'  [scf] _calc_dir = scf _structure = opt _input = default calculation = 'scf' wfcdir = './'  [charge] _calc_dir = scf _cmd = /opt/app/espresso/espresso-5.4.0/bin/pp.x  23 _input_file = job2.in _script_file = job2.sh _log_file = log2 _namelist_1 = inputpp prefix =  filplot = charge plot_num = 0 spin_component = 0 #spin_component = 1  # spin up #spin_component = 2  # spin down _namelist_2 = plot iflag = 3 output_format = 6 fileout = charge.cube  [nscf] _calc_dir = dos _structure = scf _input = default _mkdir = pwscf.save _copy_1 = ../scf/pwscf.save/data-file.xml ./pwscf.save/data-file.xml _copy_2 = ../scf/pwscf.save/charge-density.dat ./pwscf.save/charge-density.dat _copy_3 = ../scf/pwscf.save/spin-polarization.dat ./pwscf.save/spin-polarization.dat _copy_4 = ../scf/pwscf.paw ./pwscf.paw calculation = 'nscf' wf_collect = .true. occupations = 'tetrahedra' smearing =  degauss =   [tdos] _calc_dir = dos _cmd = /opt/app/espresso/espresso-5.4.0/bin/dos.x _input_file = job2.in _script_file = job2.sh _log_file = log2 _namelist = dos prefix =  fildos = dos emin =  emax =   [pdos] _calc_dir = dos _cmd = /opt/app/espresso/espresso-5.4.0/bin/projwfc.x _input_file = job3.in _script_file = job3.sh _log_file = log3 _namelist = projwfc  24 prefix =  filpdos = pdos emin =  emax =   [dos_band] _calc_dir = dos _cmd = /opt/app/espresso/espresso-5.4.0/bin/bands.x _input_file = job4.in _script_file = job4.sh _log_file = log4 _namelist = bands prefix =  filband = band #lsym = .true.  [dos_band2] _calc_dir = dos _cmd = /opt/app/espresso/espresso-5.4.0/bin/bands.x _input_file = job5.in _script_file = job5.sh _log_file = log5 _namelist = bands prefix =  filband = band2 #lsym = .true. spin_component = 2  [band] _calc_dir = band _structure = scf _input = default _mkdir = pwscf.save _copy_1 = ../scf/pwscf.save/data-file.xml ./pwscf.save/data-file.xml _copy_2 = ../scf/pwscf.save/charge-density.dat ./pwscf.save/charge-density.dat _copy_3 = ../scf/pwscf.save/spin-polarization.dat ./pwscf.save/spin-polarization.dat _copy_4 = ../scf/pwscf.paw ./pwscf.paw calculation = 'bands' prefix =  occupations = 'smearing' smearing = 'gaussian' degauss = 0.01 #K_POINTS = {crystal_b}  [band_plot] _calc_dir = band _cmd = /opt/app/espresso/espresso-5.4.0/bin/bands.x _input_file = job2.in _script_file = job2.sh  25 _log_file = log2 _namelist = bands prefix =  filband = band #lsym = .true.  [band_plot2] _calc_dir = band _cmd = /opt/app/espresso/espresso-5.4.0/bin/bands.x _input_file = job3.in _script_file = job3.sh _log_file = log3 _namelist = bands prefix =  filband = band2 #lsym = .true. spin_component = 2  (2) 擬ポテンシャル設定ファイル  1 H H.pbe-rrkjus_psl.0.1.UPF 2 He He_ONCV_PBE-1.0.upf 3 Li li_pbe_v1.4.uspp.F.UPF 4 Be Be_ONCV_PBE-1.0.upf 4 Be be_pbe_v1.4.uspp.F.UPF 5 B B.pbe-n-kjpaw_psl.0.1.UPF 6 C C_pbe_v1.2.uspp.F.UPF 7 N N.pbe.theos.UPF 8 O O_pbe_v1.2.uspp.F.UPF 9 F f_pbe_v1.4.uspp.F.UPF 10 Ne Ne.pbe-n-kjpaw_psl.1.0.0.UPF 11 Na Na_pbe_v1.uspp.F.UPF 12 Mg mg_pbe_v1.4.uspp.F.UPF 13 Al Al.pbe-n-kjpaw_psl.1.0.0.UPF 14 Si Si.pbe-n-rrkjus_psl.1.0.0.UPF 15 P P.pbe-n-rrkjus_psl.1.0.0.UPF 16 S S_pbe_v1.2.uspp.F.UPF 17 Cl cl_pbe_v1.4.uspp.F.UPF 18 Ar Ar.pbe-n-rrkjus_psl.1.0.0.UPF 19 K K.pbe-spn-rrkjus_psl.1.0.0.UPF 20 Ca Ca_pbe_v1.uspp.F.UPF 21 Sc Sc_pbe_v1.uspp.F.UPF 22 Ti ti_pbe_v1.4.uspp.F.UPF 23 V V_pbe_v1.uspp.F.UPF 24 Cr cr_pbe_v1.5.uspp.F.UPF 25 Mn Mn.pbe-spn-kjpaw_psl.0.3.1.UPF 26 Fe Fe.pbe-spn-kjpaw_psl.0.2.1.UPF 27 Co Co_pbe_v1.2.uspp.F.UPF 28 Ni ni_pbe_v1.4.uspp.F.UPF  26 29 Cu Cu_pbe_v1.2.uspp.F.UPF 30 Zn Zn_pbe_v1.uspp.F.UPF 31 Ga Ga.pbe-dn-rrkjus_psl.0.2.UPF 32 Ge Ge.pbe-dn-kjpaw_psl.1.0.0.UPF 33 As As.pbe-n-rrkjus_psl.0.2.UPF 34 Se Se_pbe_v1.uspp.F.UPF 35 Br br_pbe_v1.4.uspp.F.UPF 36 Kr Kr.pbe-n-rrkjus_psl.0.2.3.UPF 37 Rb Rb_ONCV_PBE-1.0.upf 38 Sr Sr.pbe-spn-rrkjus_psl.1.0.0.UPF 39 Y Y_pbe_v1.uspp.F.UPF 40 Zr Zr_pbe_v1.uspp.F.UPF 41 Nb Nb.pbe-spn-kjpaw_psl.0.3.0.UPF 42 Mo Mo_ONCV_PBE-1.0.upf 43 Tc Tc_ONCV_PBE-1.0.upf 44 Ru Ru_ONCV_PBE-1.0.upf 45 Rh Rh.pbe-spn-kjpaw_psl.1.0.0.UPF 46 Pd Pd.pbe-spn-kjpaw_psl.1.0.0.UPF 47 Ag ag_pbe_v1.4.uspp.F.UPF 48 Cd Cd.pbe-dn-rrkjus_psl.0.3.1.UPF 49 In In.pbe-dn-rrkjus_psl.0.2.2.UPF 50 Sn Sn_pbe_v1.uspp.F.UPF 51 Sb sb_pbe_v1.4.uspp.F.UPF 52 Te Te_pbe_v1.uspp.F.UPF 53 I I_pbe_v1.uspp.F.UPF 54 Xe Xe.pbe-dn-rrkjus_psl.1.0.0.UPF 55 Cs Cs_pbe_v1.uspp.F.UPF 56 Ba Ba_ONCV_PBE-1.0.upf 57 La La.GGA-PBE-paw-v1.0.UPF 58 Ce Ce.GGA-PBE-paw-v1.0.UPF 59 Pr Pr.GGA-PBE-paw-v1.0.UPF 60 Nd Nd.GGA-PBE-paw-v1.0.UPF 61 Pm Pm.GGA-PBE-paw-v1.0.UPF 62 Sm Sm.GGA-PBE-paw-v1.0.UPF 63 Eu Eu.GGA-PBE-paw-v1.0.UPF 64 Gd Gd.GGA-PBE-paw-v1.0.UPF 65 Tb Tb.GGA-PBE-paw-v1.0.UPF 66 Dy Dy.GGA-PBE-paw-v1.0.UPF 67 Ho Ho.GGA-PBE-paw-v1.0.UPF 68 Er Er.GGA-PBE-paw-v1.0.UPF 69 Tm Tm.GGA-PBE-paw-v1.0.UPF 70 Yb Yb.GGA-PBE-paw-v1.0.UPF 71 Lu Lu.GGA-PBE-paw-v1.0.UPF 72 Hf Hf.pbe-spn-rrkjus_psl.0.2.UPF 73 Ta Ta_pbe_v1.uspp.F.UPF 74 W W_pbe_v1.2.uspp.F.UPF 75 Re Re_pbe_v1.2.uspp.F.UPF 76 Os Os_pbe_v1.2.uspp.F.UPF 77 Ir Ir_pbe_v1.2.uspp.F.UPF  27 78 Pt pt_pbe_v1.4.uspp.F.UPF 79 Au Au_ONCV_PBE-1.0.upf 80 Hg Hg_pbe_v1.uspp.F.UPF 81 Tl Tl.pbe-dn-rrkjus_psl.0.2.3.UPF 82 Pb Pb.pbe-dn-kjpaw_psl.0.2.2.UPF 83 Bi Bi.pbe-dn-kjpaw_psl.0.2.2.UPF 84 Po Po.pbe-dn-rrkjus_psl.1.0.0.UPF 86 Rn Rn.pbe-dn-rrkjus_psl.1.0.0.UPF   3.3.4.1 設定ファイル例 (ABINIT)  ABINIT用の設定ファイル例を以下に示す。  (1) 計算シナリオ設定ファイル スピン判定計算、構造最適化計算、SCF計算、DOS計算、BAND計算を順次計算するシナリオである。  [general] program = abinit version = 8.0.7 ppdir = /opt/app/abinit/JTH-PBE-atomicdata-1.0 pplist = abinit.pp.pbe.jth.txt #ppdir = /opt/app/abinit/gbrv #pplist = abinit.pp.pbe.gbrv.txt cmd = /opt/app/abinit/abinit-8.0.8/bin/abinit #cmd = /opt/app/abinit/abinit-7.10.5/bin/abinit nproc = 1  [default] _kpoints_length = 30 #_kpoints_spacing = 0.03 #_spin = nonmag #_spin = ferro acell =  rprim =  ntypat = 0 znucl =  natom = 0 typat =  xred =  nband = ecut = 30 pawecutdg = 40 iscf = 17 #ixc = 11 nstep = 100 occopt = 7 nsppol =  enunit = 1  28 prtxml = 1 kptopt = 1 ngkpt =  nshiftk =  shiftk =  prtcif = 1 autoparal = 1  [check_spin] _calc_dir = spin _structure = cif _input = default #_spin_criterion = 0.1 _spin_criterion = 0.0001 nsppol = 2 toldfe = 1.0e-6 #tolmxf = 0.5e-4 optcell = 1 ionmov = 2 dilatmx = 1.05 ecutsm = 0.5 ntime = 50  [opt1] _calc_dir = opt.1 _structure = cif _input = default toldfe = 1.0e-6 #tolmxf = 1.0e-4 optcell = 1 ionmov = 2 dilatmx = 1.05 ecutsm = 0.5 ntime = 50  [opt2] _calc_dir = opt.2 _structure = opt1 _input = default toldfe = 1.0e-6 #toldff = 1.0e-4 #tolmxf = 1.0e-4 optcell = 1 ionmov = 2 #dilatmx = 1.05 dilatmx = 1.1 ecutsm = 0.5 ntime = 50   29 [scf] _calc_dir = scf _structure = opt2 _input = default toldfe = 1.0e-6  [dos] _calc_dir = dos _structure = scf _input = default _copy = ../scf/jobxo_DEN jobxi_DEN iscf = -2 tolwfr = 1.0e-10 prtdos = 2 #prtdos = 3  [pdos] _calc_dir = pdos _structure = scf _input = default _copy = ../scf/jobxo_DEN jobxi_DEN iscf = -2 tolwfr = 1.0e-10 #prtdos = 2 prtdos = 3  [band] _calc_dir = band _structure = scf _input = default _copy = ../scf/jobxo_DEN jobxi_DEN iscf = -2 tolwfr = 1.0e-10 kptopt = 0  (2) 擬ポテンシャル設定ファイル  1 H H.GGA_PBE-JTH.xml 2 He He.GGA_PBE-JTH.xml 3 Li Li.GGA_PBE-JTH.xml 4 Be Be.GGA_PBE-JTH.xml 5 B B.GGA_PBE-JTH.xml 6 C C.GGA_PBE-JTH.xml 7 N N.GGA_PBE-JTH.xml 8 O O.GGA_PBE-JTH.xml 9 F F.GGA_PBE-JTH.xml 10 Ne Ne.GGA_PBE-JTH.xml 11 Na Na.GGA_PBE-JTH.xml 12 Mg Mg.GGA_PBE-JTH.xml  30 13 Al Al.GGA_PBE-JTH.xml 14 Si Si.GGA_PBE-JTH.xml 15 P P.GGA_PBE-JTH.xml 16 S S.GGA_PBE-JTH.xml 17 Cl Cl.GGA_PBE-JTH.xml 18 Ar Ar.GGA_PBE-JTH.xml 19 K K.GGA_PBE-JTH.xml 20 Ca Ca.GGA_PBE-JTH.xml 21 Sc Sc.GGA_PBE-JTH.xml 22 Ti Ti.GGA_PBE-JTH.xml 23 V V.GGA_PBE-JTH.xml 24 Cr Cr.GGA_PBE-JTH.xml 25 Mn Mn.GGA_PBE-JTH.xml 26 Fe Fe.GGA_PBE-JTH.xml 27 Co Co.GGA_PBE-JTH.xml 28 Ni Ni.GGA_PBE-JTH.xml 29 Cu Cu.GGA_PBE-JTH.xml 30 Zn Zn.GGA_PBE-JTH.xml 31 Ga Ga.GGA_PBE-JTH.xml 32 Ge Ge.GGA_PBE-JTH.xml #33 As As.GGA_PBE-JTH_sp.xml 33 As As.GGA_PBE-JTH.xml 34 Se Se.GGA_PBE-JTH.xml 35 Br Br.GGA_PBE-JTH.xml 36 Kr Kr.GGA_PBE-JTH.xml 37 Rb Rb.GGA_PBE-JTH.xml 38 Sr Sr.GGA_PBE-JTH.xml 39 Y Y.GGA_PBE-JTH.xml 40 Zr Zr.GGA_PBE-JTH.xml 41 Nb Nb.GGA_PBE-JTH.xml 42 Mo Mo.GGA_PBE-JTH.xml 43 Tc Tc.GGA_PBE-JTH.xml 44 Ru Ru.GGA_PBE-JTH.xml 45 Rh Rh.GGA_PBE-JTH.xml 46 Pd Pd.GGA_PBE-JTH.xml 47 Ag Ag.GGA_PBE-JTH.xml 48 Cd Cd.GGA_PBE-JTH.xml #49 In In.GGA_PBE-JTH_sp.xml 49 In In.GGA_PBE-JTH.xml #50 Sn Sn.GGA_PBE-JTH_sp.xml 50 Sn Sn.GGA_PBE-JTH.xml #51 Sb Sb.GGA_PBE-JTH_sp.xml 51 Sb Sb.GGA_PBE-JTH.xml 52 Te Te.GGA_PBE-JTH.xml 53 I I.GGA_PBE-JTH.xml 54 Xe Xe.GGA_PBE-JTH.xml 55 Cs Cs.GGA_PBE-JTH.xml 56 Ba Ba.GGA_PBE-JTH.xml 57 La La.GGA_PBE-JTH.xml  31 58 Ce Ce.GGA_PBE-JTH.xml 59 Pr Pr.GGA_PBE-JTH.xml 60 Nd Nd.GGA_PBE-JTH.xml 61 Pm Pm.GGA_PBE-JTH.xml 62 Sm Sm.GGA_PBE-JTH.xml 63 Eu Eu.GGA_PBE-JTH.xml 64 Gd Gd.GGA_PBE-JTH.xml 65 Tb Tb.GGA_PBE-JTH.xml 66 Dy Dy.GGA_PBE-JTH.xml 67 Ho Ho.GGA_PBE-JTH.xml 68 Er Er.GGA_PBE-JTH.xml 69 Tm Tm.GGA_PBE-JTH.xml 70 Yb Yb.GGA_PBE-JTH.xml 71 Lu Lu.GGA_PBE-JTH.xml 72 Hf Hf.GGA_PBE-JTH.xml 73 Ta Ta.GGA_PBE-JTH.xml 74 W W.GGA_PBE-JTH.xml 75 Re Re.GGA_PBE-JTH.xml 76 Os Os.GGA_PBE-JTH.xml 77 Ir Ir.GGA_PBE-JTH.xml 78 Pt Pt.GGA_PBE-JTH.xml 79 Au Au.GGA_PBE-JTH.xml 80 Hg Hg.GGA_PBE-JTH.xml #81 Tl Tl.GGA_PBE-JTH_sp.xml 81 Tl Tl.GGA_PBE-JTH.xml #82 Pb Pb.GGA_PBE-JTH_sp.xml 82 Pb Pb.GGA_PBE-JTH.xml #83 Bi Bi.GGA_PBE-JTH_sp.xml 83 Bi Bi.GGA_PBE-JTH.xml 84 Po Po.GGA_PBE-JTH.xml 85 At At.GGA_PBE-JTH.xml 86 Rn Rn.GGA_PBE-JTH.xml   3.3.5 ジョブ実行設定ファイル  ジョブ実行設定ファイル jobmanage.cfgは、ユーザーのジョブ実行環境（ジョブ管理システム）に合わせて、ジョブ投入コマンド、ジョブスクリプトの形式を設定する。ジョブスクリプトの形式は、config/job_templateディレクトリにあるテンプレートを用いる。  Section name value  [general] jobmanage_type interactive [section-name] Interactive実行 [section]で指定したテンプレート、変数を用いてジョブスクリプトを生成 [type] template  ジョブスクリプトのテンプレートを指定  np  MPI実行のプロセス数  name value ジョブスクリプトのテンプレート中の変数を指定   32 3.3.6 ジョブ実行設定ファイル例  3.3.6.1 設定ファイル例 (PBS)  PBS系のジョブ管理システムTorqueを用いた場合のジョブ実行設定ファイル例を以下に示す。  (1) ジョブ実行設定ファイル jobmanage.cfg  [general] #jobmanage_type = interactive jobmanage_type = pbs  [interactive] submit = sh stat = ps  [pbs] template = job_template/pbs.tmpl core = 8 np = 8 queue = L ncpus = 1 nodes = 1 ppn = 8 walltime = 24:00:00 job_name =  submit = qsub stat = qstat  (2) ジョブスクリプトのテンプレート pbs.tmpl  #!/bin/csh #PBS -q $queue #PBS -l ncpus=$ncpus #PBS -l nodes=$nodes:ppn=$ppn #PBS -l walltime=$walltime  #PBS -N $job_name cd $$PBS_O_WORKDIR      33  3.4 プログラムの実行  3.4.1 複数の物質の自動計算  ユーザーが容易した複数の物質の結晶構造(CIF File)を読み込み、計算シナリオに基づいて、順次計算を実行する。  結晶構造ファイルは、ユーザーが1ディレクトリにまとめて用意する。  計算データは、指定したディレクトリに結晶構造ごとのサブディレクトリで計算を実行する。  Material IDは、CIFファイル名から設定する。(CIF Fileから拡張子.cifを除いたもの)  Python Script Option  calc/ac-setup.py -m, --matdir 結晶構造(CIF File)のあるディレクトリ   -c, --caldir 計算を実行するディレクトリ   -p, --program 第一原理計算プログラムの指定  vasp (デフォルト) espresso abinit  -s, --scenario 計算シナリオ設定ファイルの指定 Default システム提供 ユーザーシナリオ  -n, --nproc MPI実行プロセス数   実行例 %python  [INSTALLDIR]/toast/calc/ac-setup.py -m matdir -c caldir -p vasp -s vasp.para.opt.checkspin.cfg -n 8   3.4.2 複数の物質の自動計算 (ジョブ状況更新/追加投入)  ユーザーが容易した複数の物質の結晶構造(CIF File)を読み込み、計算シナリオに基づいて、順次計算を実行する。  ジョブ状況更新/追加投入  新規ジョブの投入  Python Script Option  calc/ac-update.py joblist joblist file joblist.txt  -c, --caldir 計算を実行するディレクトリ   -n, --dry-run Status更新のみ 新規Job投入なし   -q, --qstat ジョブ管理システムの status をチェックしてジョブ状況更新   -v, --verbose    実行例 %python  [INSTALLDIR]/toast/calc/ac-update.py –c caldir -v joblist.txt   3.4.3 1つの結晶構造の第一原理自動計算  結晶構造(CIF File)があるディレクトリで、計算シナリオに基づいて、計算を実行する。 複数の結晶構造(CIF File)の第一原理計算を行う Python スクリプト ac-setup.py, ac-update.py から呼ばれる 34 Pythonスクリプトである。  Python Script Option  calc/ac-calc.py -m, --mat Material ID 結晶構造(CIF File)から拡張子.cif を除いたもの AtomWorkのCIFファイルの場合、-1-2.cif を除いたもの  -p, --program 第一原理計算プログラムの指定 vasp espresso abinit デフォルト vasp  -s, --scenario 計算シナリオ設定ファイルの指定 Default システム提供 ユーザーシナリオ  -n, --nproc MPI実行プロセス数   実行例 %python  [INSTALLDIR]/toast/calc/ac-calc.py -m 4295272247 -p vasp -s vasp.para.opt.checkspin.cfg -n 8      35  3.4.4 計算データリスト  ユーザーが容易した複数の結晶構造(CIF File)に対して、第一原理自動計算の計算結果の一部をリスト形式のテキストファイルに出力する。  Python Script Option  calc/ac-summary.py -c, --cal 計算を実行したディレクトリ   -o, --output 出力ファイル caldata.txt  実行例 %python  [INSTALLDIR]/toast/calc/ac-summary.py -c caldir  出力内容 項目 内容 備考 Material ID  CIF Fileの情報 Chemical Formula  CIF Fileの情報 Spacegroup  CIF Fileの情報 Spacegroup No  CIF Fileの情報 Lattice Parameter (original) Cell Length a, b, c Cell Angle  alpha, beta, gamma CIF Fileの情報 Lattice Parameter (relaxed) Cell Length a, b, c Cell Angle  alpha, beta, gamma  Total Energy (eV)   Fermi Energy (eV)   Bandgap Type metal, direct, indirect  Bandgap (eV)    出力例 material chemica_formula spacegroup_name spacegroup_no lattice_parameter(original) lattice_parameter(relaxed) total_energy(eV/atom) fermi_energy(eV) bandgaptype bandgap(eV) 4295272247 Si cubic Fd-3m 227 5.429 5.429 5.429 90.0 90.0 90.0 5.4688472 5.4688472 5.4688472 90.0 90.0 90.0 -5.42460796 5.65437076 indirect 0.618  4295278799 Fe cubic Im-3m 229 2.862 2.862 2.862 90.0 90.0 90.0 2.83553114 2.83553114 2.83553114 90.0 90.0 90.0 -8.23692267 5.75646479 metal -  4295349454 O Si cubic F-43m 216 5.45 5.45 5.45 90.0 90.0 90.0 4.87188342 4.87188342 4.87188342 90.0 90.0 90.0 -5.506395975 6.30502700 metal -     36  3.4.5 計算状況  ユーザーが用意した複数の結晶構造(CIF File)に対して、第一原理自動計算の計算状況をリスト形式のテキストファイルに出力する。  Python Script Option  calc/ac-stat.py -c, --caldir 計算を実行したディレクトリ   -o, --output 出力ファイル デフォルト calstat.txt  実行例 %python  [INSTALLDIR]/toast/calc/ac-stat.py -c caldir  出力内容 項目 内容 備考 Material ID  CIF Fileの情報 Chemical Formula  CIF Fileの情報 Spacegroup  CIF Fileの情報 Spacegroup No  CIF Fileの情報 CIF File  CIF Fileの情報 Calculation Status 計算状況 o  計算終了 E  異常終了 / (計算中) -  未実行 計算シナリオの各 taskの計算状況  計算状況の判定 計算状況 VASP Quantum ESPRESSO ABINIT o  計算終了 vasprun.xmlが正常出力 OUTCAR が計算終了まで出力 ログファイル(標準出力)にJOB DONE.が出力 job.out に Calculation Completedが出力 E  異常終了 / (計算中) vasprun.xmlが異常 OUTCAR が計算終了まで出力されていない ログファイル(標準出力)にJOB DONE.が出力されていない job.out に Calculation Completed が出力されていない -  未実行 vasprun.xml, OUTCARが存在しない ログファイル(標準出力)が存在しない job.outが存在しない   出力例 material chemica_formula spacegroup_name spacegroup_no calculation_status  4295272247 Si cubic Fd-3m 227 4295272247-1-2.cif o o o o o o  4295278799 Fe cubic Im-3m 229 4295278799-1-2.cif o o o o o o  4295349454 O Si cubic F-43m 216 4295349454-1-2.cif o o o o o o       37  3.4.6 可視化データ  第一原理自動計算の計算結果の可視化データをリスト形式、詳細表示のHTMLファイルに出力する。 結晶構造の可視化には、ブラウザの設定変更が必要である。 参考サイト http://wiki.jmol.org/index.php/Troubleshooting/Local_Files  Python Script Option  calc/ac-vis.py -c, --caldir 計算を実行したディレクトリ   -o, --output リスト表示ファイル デフォルト caldata.html  -j, --jsdir Java Script ライブラリのPath cdn / None  (default) Local User define  -a, --archive 可視化データ (zipファイル)   実行例 %python  [INSTALLDIR]/toast/calc/ac-vis.py -c [caldir] -a caldata.zip  出力内容 (リスト表示) 項目 内容 備考 Material ID  CIF Fileの情報 Chemical Formula  CIF Fileの情報 Spacegroup  CIF Fileの情報 Spacegroup No  CIF Fileの情報 Lattice Parameter (original) Cell Length a, b, c Cell Angle  alpha, beta, gamma CIF Fileの情報 Lattice Parameter (relaxed) Cell Length a, b, c Cell Angle  alpha, beta, gamma  Total Energy (eV)   Fermi Energy (eV)   Bandgap Type metal, direct, indirect  Bandgap (eV)    出力内容 (詳細表示) 項目 内容 備考 Material Information   Crystal Structure Crystal System Space Group Space Group Number Cell Parameter Atom Sites  Structure Conventional Cell (Initial) Primitive Cell (Initial) Primitive Cell (Relaxed) Brillouin Zone  Energy Total Energy Fermi Energy  Band Structure    38 Density of State   Electronic Property Band Gap Band Gap Type    出力例 (リスト表示)           出力例 (詳細表示)                                  39  3.4.1 計算メタデータ  計算データから、計算メタデータ (materialRecord.xml)、データシートを生成する。  Python Script Option  calc/ac-data.py -m, --mat Material ID 結晶構造(CIF File)から拡張子.cif を除いたもの AtomWorkのCIFファイルの場合、-1-2.cif を除いたもの  -p, --program 第一原理計算プログラムの指定 vasp Vaspのみに対応  -s, --scenario 計算シナリオ設定ファイルの指定 Default システム提供 ユーザーシナリオ  -o, --output 出力ファイル 設定なしの場合は [material id].xml  --regid registrationId   --reguid registrationUserId   実行例 python  [INSTALLDIR]/toast/calc/ac-data.py  -m [matid]  -p vasp  -s vasp.para.opt.checkspin.cfg  出力内容 項目 内容 備考 計算メタデータ materialRecord.xml  データシート datasheet.xml        40  3.5 計算データ  3.5.1 計算データの概要   結晶ごとの計算実行ディレクトリに、計算シナリオの各タスク(task)のサブディレクトリを作成し、第一原理計算を実行している。各タスク(task)の計算の入出力データは、そのサブディレクトリに保存されている。 主要な計算データは、第一原理自動計算データファイル calculations.xml にまとめている。また、計算データの一部は、結晶構造可視化アプリケーションやGnuplotで可視化可能なデータフォーマットで出力している。  項目 データファイル 内容 備考 結晶構造 [maid].cif [maid].relaxed.cif [maid].relaxed.p1cif ユーザーが用意したCIF File 構造最適化後のCIF File 構造最適化後のCIF File (P1)  元のCIF Fileの格子定数を更新 P1構造のCIF File 自動計算データ calculations.xml 第一原理自動計算データファイル   calculations.txt 計算データの一部を出力  Brillouin Zone  [matid].bz.plt [matid].bz.spt Brillouin Zone + k点Path Gnuplot スクリプト Jmolスクリプト  Charge Density [matid].charge.cube Gaussian Cube Format VESTA, Jmol, XCrysDen 等で可視化 DOS dos.plt dos.dat Gnuplot スクリプト チェック用の簡易表示  band.plt band.dat Gnuplot スクリプト チェック用の簡易表示     41  3.5.2 第一原理自動計算データファイル calculations.xml  主要な計算データは、第一原理自動計算データファイル calculations.xml にまとめている。 データファイル calculations.xml の構成(階層構造、タグ、属性)を以下に示す。  データファイル calculations.xml の構成 Tag 1 Tag 2 Tag 3 Tag 4 Tag 5 Tag 6 Tag 7  calculations        materials material_id chemical_formulla crystal_system spacegroup spacegroup_no cif      structuire [@name=initial)      初期構造 lattice [@name=conventional]  a, b, c alpha,beta,gamma a1,a2,a3    Cell length Cell Angle Lat vector lattice [@name=primitive] a, b, c alpha,beta,gamma a1,a2,a3     atom i[@name=name]    coordinate structuire [@name=relaxed)      構造最適化構造  (SCF計算の構造) calculation [@name=task]      Taskの計算データ inputs i[@name=value]     kpoint[@type=kmesh]     nkx nky nkz kpoint[@type=kpath] i[@name=KP]    kx ky kz property i[@name=prop.@unit]     dos spin i  DOS  ene dos pdos atom spin i PDOS  ene pdos band spin kpoint i Band Struc   ene occ  データファイル calculations.xml の出力例 <?xml version="1.0"?> <calculations>   <material>     <material_id>4295272247</material_id>     <chemical_formula>Si</chemical_formula>     <crystal_system>cubic</crystal_system>     <spacegroup>Fd-3m</spacegroup>     <spacegroup_no>227</spacegroup_no>     <cif>4295272247-1-2.cif</cif>   </material>   <structure name="original">     <lattice type="conventional">       <a>5.429</a>  42       <b>5.429</b>       <c>5.429</c>       <alpha>90.0</alpha>       <beta>90.0</beta>       <gamma>90.0</gamma>     </lattice>     <lattice type="conventional">       <a1>5.429 0.0 0.0</a1>       <a2>0.0 5.429 0.0</a2>       <a3>0.0 0.0 5.429</a3>     </lattice>     <lattice type="primitive">       <a1>0.0 2.7145 2.7145</a1>       <a2>2.7145 0.0 2.7145</a2>       <a3>2.7145 2.7145 0.0</a3>     </lattice>     <lattice/>     <atom>       <i name="Si">   0.12500    0.12500    0.12500</i>       <i name="Si">   0.87500    0.87500    0.87500</i>     </atom>   </structure>   <structure name="relaxed">     <lattice type="conventional">       <a>5.4688472</a>       <b>5.4688472</b>       <c>5.4688472</c>       <alpha>90.0</alpha>       <beta>90.0</beta>       <gamma>90.0</gamma>     </lattice>     <lattice type="conventional">       <a1>5.4688472 0.0 0.0</a1>       <a2>0.0 5.4688472 0.0</a2>       <a3>0.0 0.0 5.4688472</a3>     </lattice>     <lattice type="primitive">       <a1>0.0 2.7344236 2.7344236</a1>       <a2>2.7344236 0.0 2.7344236</a2>       <a3>2.7344236 2.7344236 0.0</a3>     </lattice>     <atom>       <i name="Si">0.12500000 0.12500000 0.12500000</i>       <i name="Si">0.87500000 0.87500000 0.87500000</i>     </atom>   </structure>   <calculation name="check_spin"> …   <calculation name="opt1">  43 …   <calculation name="opt2"> …   <calculation name="scf">     <inputs>       <i name="_calc_dir">scf</i>       <i name="_structure">opt2</i>       <i name="_input">default</i>       <i name="npar">1</i>       <i name="system"/>       <i name="istart">0</i>       <i name="prec">high</i>       <i name="encut">550</i>       <i name="algo">fast</i>       <i name="ediff">1E-6</i>       <i name="nelm">100  # default 60</i>       <i name="ispin"/>       <i name="nbands"/>       <i name="ismear">-5</i>       <i name="sigma">0.1  # default 0.2</i>       <i name="isym"/>       <i name="nelmin">8</i>       <i name="laechg">.TRUE.</i>     </inputs>     <structure name="initial">       <lattice type="primitive">         <a1>0.00000000 2.73442360 2.73442360</a1>         <a2>2.73442360 0.00000000 2.73442360</a2>         <a3>2.73442360 2.73442360 0.00000000</a3>       </lattice>       <atom>         <i name="Si">0.12500000 0.12500000 0.12500000</i>         <i name="Si">0.87500000 0.87500000 0.87500000</i>       </atom>     </structure>     <structure name="final">       <lattice type="primitive">         <a1>0.00000000 2.73442360 2.73442360</a1>         <a2>2.73442360 0.00000000 2.73442360</a2>         <a3>2.73442360 2.73442360 0.00000000</a3>       </lattice>       <atom>         <i name="Si">0.12500000 0.12500000 0.12500000</i>         <i name="Si">0.87500000 0.87500000 0.87500000</i>       </atom>     </structure>     <kpoints type="kmesh">10 10 10</kpoints>     <parameters>       <i name="ispin">1</i>  44       <i name="nbands">10</i>       <i name="nelect">8.00000000</i>       <i name="nkpoints">47</i>       <kpoints>       </kpoints>     </parameters>     <properties>       <i name="etotal" unit="eV">-10.84921592</i>       <i name="etotal_per_atom" unit="eV/atom">-5.42460796</i>       <i name="efermi" unit="eV">5.65437076</i>     </properties>   </calculation>   <calculation name="dos">     <inputs> …   <properties>       <i name="etotal" unit="eV">-10.84994683</i>       <i name="etotal_per_atom" unit="eV/atom">-5.424973415</i>       <i name="efermi" unit="eV">5.62480381</i>       <dos>         <spin spin="1">           <i>-14.0000 0.0000 0.0000</i>           <i>-13.9844 0.0000 0.0000</i>           <i>-13.9688 0.0000 0.0000</i>           <i>-13.9532 0.0000 0.0000</i> …      <pdos>         <i name="value">energy s py pz px dxy dyz dz2 dxz dx2</i>         <atom atom="">           <spin spin="1">             <i> -14.0000  0.0000  0.0000  0.0000  0.0000  0.0000  0.0000  0.0000  0.0000  0.0000 </i>             <i> -13.9844  0.0000  0.0000  0.0000  0.0000  0.0000  0.0000  0.0000  0.0000  0.0000 </i>             <i> -13.9688  0.0000  0.0000  0.0000  0.0000  0.0000  0.0000  0.0000  0.0000  0.0000 </i>             <i> -13.9532  0.0000  0.0000  0.0000  0.0000  0.0000  0.0000  0.0000  0.0000  0.0000 </i>             <i> -13.9376  0.0000  0.0000  0.0000  0.0000  0.0000  0.0000  0.0000  0.0000  0.0000 </i> …       <i name="bandgap_type">indirect</i>       <i name="bandgap" unit="eV">0.618</i>       <band>         <spin spin="1">           <kpoint kpoint="1">             <i>-6.1986 1.0000</i>             <i>5.6156 1.0000</i>             <i>5.6156 1.0000</i> …                       </kpoint>   <calculation name="band">     <inputs> …  45     <kpoints type="kpath">       <i name="Gamma">   0.00000    0.00000    0.00000</i>       <i>   0.00000    0.02174    0.02174</i>       <i>   0.00000    0.04348    0.04348</i>       <i>   0.00000    0.06522    0.06522</i>       <i>   0.00000    0.08696    0.08696</i> …     <properties>       <i name="etotal" unit="eV">-7.97993391</i>       <i name="etotal_per_atom" unit="eV/atom">-3.989966955</i>       <i name="efermi" unit="eV">5.74667513</i>       <band>         <spin spin="1">           <kpoint kpoint="1">             <i>-6.1986 1.0000</i>             <i>5.6156 0.9434</i>             <i>5.6156 0.9433</i>             <i>5.6156 0.9433</i>             <i>8.1724 -0.0000</i>             <i>8.1724 -0.0000</i>             <i>8.1724 -0.0000</i>             <i>8.7488 -0.0000</i>             <i>13.3247 0.0000</i>             <i>13.4902 0.0000</i> …       </band>     </properties>   </calculation> </calculations>       46  4. プログラムの詳細  4.1 プログラム構造  第一原理自動計算プログラムは、Python プログラム群で構成されている。第一原理自動計算プログラム構造の概要を以下に示す。  Install Directory Subdirectory Pyhthon Program  toast/calc  ac-setup.py 複数の結晶構造の第一原理自動計算 ac-update.py 複数の結晶構造の第一原理自動計算  (ジョブ状況更新/追加投入) ac-calc.py 計算シナリオに基づく第一原理計算 ac-summary.py 計算データリスト出力 ac-stat.py 計算状況出力 calculation autocalc.py 複数の結晶構造の第一原理自動計算クラス calc.py 計算シナリオに基づく第一原理計算クラス calculator.py 第一原理計算プログラムの処理のAbstract クラス vasp.py VASP用処理クラス esprsso.py QE用処理クラス abinit.py ABINIT用処理クラス structure crystal.py 結晶構造解析クラス jobmanage job.py ジョブ実行処理クラス toast/config   設定ファイル job_template  ジョブスクリプト テンプレート      47  4.2 主要クラス、関数  4.2.1 calculation./autocalc.py  複数の結晶構造の第一原理自動計算クラス Class Function  autocalc calculate 複数の結晶構造の第一原理自動計算 calc_prep 自動計算の前処理 calc 自動計算の実行  caldata 計算データリストの出力  calstat 計算状況の出力  4.2.2 calculation./calc.py  計算シナリオに基づく第一原理計算クラス Class Function  calc calculate 計算シナリオに基づく第一原理計算 read_config 計算シナリオ設定ファイルの読み込み structure ユニットセルの生成 calc_prep 前処理 write_parameter 第一原理自動計算データファイル calculations.xmlの生成 calc_task 各タスクの実行 calc_post 後処理、計算結果解析 自動計算データファイル calculations.xmlの更新 kpoints K点メッシュの計算 ispin スピン判定 execute 第一原理計算プログラムの実行 calstat 計算状況の出力  4.2.3 calculation./calculator.py  第一原理計算プログラムの処理のAbstract クラス Class Function  calculator calc 計算シナリオに基づく第一原理計算 potentials 擬ポテンシャルファイルの生成、コピー inputs 入力データの生成 nbands バンド数の計算 structure CIF Fileまたは他のTaskの計算結果から結晶構造、原子座標の生成 mag スピン判定のためのmagnetizationの抽出 efermi DOS計算のEmin,EmaxのためのFermi Energyの抽出 results 計算結果データの抽出 自動計算データファイル calculations.xmlの更新 calstat 計算状況の出力     48  4.2.4 calculation./vasp.py  VASP用処理クラス Class Function  calculator calc 計算シナリオに基づく第一原理計算 potentials 擬ポテンシャルファイルの生成、コピー inputs 入力データの生成 nbands バンド数の計算 structure CIF Fileまたは他のTaskの計算結果から結晶構造、原子座標の生成 mag スピン判定のためのmagnetizationの抽出 efermi DOS計算のEmin,EmaxのためのFermi Energyの抽出 results 計算結果データの抽出 自動計算データファイル calculations.xmlの更新 calstat 計算状況の出力  4.2.5 calculation./espresso.py  Quantum ESPRESSO用処理クラス Class Function  calculator calc 計算シナリオに基づく第一原理計算 potentials 擬ポテンシャルファイルの生成、コピー inputs 入力データの生成 nbands バンド数の計算 structure CIF Fileまたは他のTaskの計算結果から結晶構造、原子座標の生成 mag スピン判定のためのmagnetizationの抽出 efermi DOS計算のEmin,EmaxのためのFermi Energyの抽出 results 計算結果データの抽出 自動計算データファイル calculations.xmlの更新 calstat 計算状況の出力  4.2.6 calculation./abinit.py  ABINIT用処理クラス Class Function  calculator calc 計算シナリオに基づく第一原理計算 potentials 擬ポテンシャルファイルの生成、コピー inputs 入力データの生成 nbands バンド数の計算 structure CIF Fileまたは他のTaskの計算結果から結晶構造、原子座標の生成 mag スピン判定のためのmagnetizationの抽出 efermi DOS計算のEmin,EmaxのためのFermi Energyの抽出 results 計算結果データの抽出 自動計算データファイル calculations.xmlの更新 calstat 計算状況の出力  49  4.2.7 structure/crystal.py  結晶構造解析クラス Class Function  calculator loadCIF CIF Fileの読み込み checkCIF CIF Fileのチェック convertCIF2VASP セル（Conventional Cell, Primitive Cell）, 原子の相対座標の計算 saveKPoints バンド計算用のk点経路の計算 saveBrillouin Brillouin Zoneの可視化スクリプトの出力 printLog ログ出力  4.2.8 jobmanage/job.py  ジョブ実行処理クラス Class Function  job read_config ジョブ実行設定ファイルの読み込み jobscript ジョブ実行スクリプトの生成 jobscript_interactive Interactive計算用の実行スクリプトの生成 jobscript_template ジョブ管理システムのジョブスクリプトのテンプレートを用いたジョブスクリプトの生成  4.2.9 calculation/calprop.py  計算結果解析 Class Function   cellparameter Cell Parameterの計算 bandgap Bandgapの計算 fermisurf フェルミ面可視化データの生成  dosplot DOSプロットデータの生成  pdosplot PDOSプロットデータの生成  bandplot バンド構造プロットデータの生成  caldata 計算データの出力  4.2.10 calculation/calvis.py  可視化データ Class Function   visdata 可視化データの生成  4.2.11 calculation/metadata.py  計算メタデータ Class Function   datasheet データシートの生成 materialrecord 計算メタデータの生成 materialrecord_dataset 計算データセット (ZIPファイル) の生成  50   1. プログラムの概要 2. プログラムのインストール、環境設定 2.1 動作環境 / 環境設定 2.1.1 Pythonのインストール 2.1.2 第一原理計算プログラム 2.1.3 計算結果の可視化 2.2 インストール方法 2.3 環境設定 2.3.1 計算シナリオ設定ファイルの編集 2.3.2 ジョブ実行設定ファイルの編集 3. プログラムの使用方法 3.1 概要 3.2 計算パラメーター 3.3 設定ファイル 3.3.1 共通設定ファイル (toast.cfg) 3.3.2 計算シナリオ設定ファイル 3.3.3 擬ポテンシャル設定ファイル 3.3.4 設定ファイル例 3.3.4.1 共通設定ファイル例 (toast.cfg) 3.3.4.2 設定ファイル例 (VASP) 3.3.4.1 設定ファイル例 (Quantum ESPRESSO) 3.3.4.1 設定ファイル例 (ABINIT) 3.3.5 ジョブ実行設定ファイル 3.3.6 ジョブ実行設定ファイル例 3.3.6.1 設定ファイル例 (PBS) 3.4 プログラムの実行 3.4.1 複数の物質の自動計算 3.4.2 複数の物質の自動計算 (ジョブ状況更新/追加投入) 3.4.3 1つの結晶構造の第一原理自動計算 3.4.4 計算データリスト 3.4.5 計算状況 3.4.6 可視化データ 3.4.1 計算メタデータ 3.5 計算データ 3.5.1 計算データの概要 3.5.2 第一原理自動計算データファイル calculations.xml 4. プログラムの詳細 4.1 プログラム構造 4.2 主要クラス、関数 4.2.1 calculation./autocalc.py 4.2.2 calculation./calc.py 4.2.3 calculation./calculator.py 4.2.4 calculation./vasp.py 4.2.5 calculation./espresso.py 4.2.6 calculation./abinit.py 4.2.7 structure/crystal.py 4.2.8 jobmanage/job.py 4.2.9 calculation/calprop.py 4.2.10 calculation/calvis.py 4.2.11 calculation/metadata.py