第一原理計算プログラムとOpenMXについて
東京大学物性研究所
計算物質科学研究センター

内容•

第一原理計算について•

第一原理計算とは？

•第一原理計算の分類と特徴・選択•

ポテンシャル
•

•

基底関数
••

全電子／擬ポテンシャル

平面波／局在基底／混合基底

交換相関項の近似について2

第一原理計算とは？
第一原理計算は、シュレーディンガー方程式を数値的に解くための方法

実験パラメータを用いずに物性や構造を予測するのに有効3密度汎関数理論
シュレーディンガー方程式はコーン・シャム方程式に書き換える事ができる (Kohn and Sham, 1965)

第一原理計算プログラムではこれを解いている

基底状態のエネルギーは密度の汎関数で記述できる(Hohenberg and Kohn, 1964)

近似が必要
4

SCF計算電子密度関数の初期値を与える
電子密度ρ(n)電子密度よりポテンシャルを計算
Kohn-Sham方程式を解く

実際の計算では、Kohn-Sham
方程式を左のようなSelf-Consistent Field (SCF)と呼ばれる方法で解く。
初期値に適当な電子密度（原子軌道等）を与えて収束するまで計算をループさせる。

新しい電子密度ρ(n+1)が算出されるNO収束しているか？
(ρ(n)=ρ(n+1)か？)
YES

計算終了
5

第一原理計算の手法
計算コードの違い → Kohn-Sham方程式の解き方の違い

コアポテンシャルの取扱
全電子/擬ポテンシャル

基底関数
平面波/局在基底

大きくポテンシャルの取扱と基底関数の種別によってコードを分類する事ができる6

ポテンシャルと基底による分類
平面波基底 + 局在基底
全電子計算
局在基底
第一原理計算平面波基底
擬ポテンシャル法
局在基底

7

全電子計算と擬ポテンシャル法
全電子計算
内殻電子を含めた全電子に関して計算する
擬ポテンシャル法
内殻電子を擬ポテンシャルで置き換え価電子関してのみ正確に計算する

全電子

擬ポテンシャル

精度

高

中コスト

高

低

内殻

可✕

内殻

外殻

8

平面波基底波動関数を基底関数φを用いてと表す時に、平面波を用いるのが平面波基底
メリット
フーリエ変換なので波数の大きな平面波を加える事で収束し、精度をコントロールする事が可能
周期系で計算コストを削減できる
デメリット
d電子系など局在した軌道があると計算コストが増大
9局在基底
波動関数を基底関数φを用いてと表す時に、原子軌道を用いるのが局在基底メリット
周期系でないものも含めて大規模計算に向いている
デメリット
計算精度はどのような基底系を選ぶかによってくる
完全直交基底となっているとは限らない（nを増やして任意の関数を構成できると限らない）
10

混合基底（平面波+局在）
原子に局在した基底と空間に一様に広がっている平面波の両方を用いて波動関数を記述する方法

局在基底

平面波

メリット
原子核近くの現象と原子から離れた領域の両方を正確に記述可能
デメリット
平面波と局在基底の両方を計算するため計算量が多くなる

11ポテンシャルと基底による分類
平面波基底 + 局在基底
全電子計算

Wien2k, elk, exciting, etc.

局在基底
GAUSSIAN, ADF,
Akai-KKR etc.

第一原理計算平面波基底
擬ポテンシャル法

VASP, Quantum Espresso,Phase, xTAPP, etc.

局在基底
OpenMX, SIESTA, etc.

12

各分類の特徴
どの計算法を選ぶかは必要な精度と効率による
これらは大まかに以下のようになっている

精度

効率

全電子・平面+局在◎✕

全電子・局在○○擬ポテンシャル・平面○○

擬ポテンシャル・局在△◎13どの手法・アプリを使えば良いか？
物質系や必要な精度、系の電子数などによる
一般的な固体の結晶では擬ポテンシャル・平面波基底
分子では全電子・局在基底が使われる場合が多い

全電子・混合基底はX線吸収微細構造（XAFS）スペクトルなど、内殻電子の情報が反映される現象の計算で必要となる
擬ポテンシャル・局在基底はサイズの大きな系など高速な計算が要求される場合に有効14交換相関項の近似
Kohn-Sham方程式

上記式のveffに着目する

この交換相関項の部分が解けない → 近似手法を用いる
よく使われているのは、
Local density approximation: LDA、局所密度近似
Generalized gradient approximation: GGA、一般化勾配近似
15

LDAについて•LDA (Local Density Approximation)
交換相関項を局所的な電子密度のみを用いた関数で近似
交換相関項をその場所の電子密度に対応する一様電子ガスの交換相関に等しいと置く

この近似によりKohn-Sham方程式が解けるようになる

16

GGAについて•GGA (Generarized Gradient Approximation)
局所的な電子密度と局所的な電子密度の変化率を用いて近似

前述のLDAでは交換相関項を電子密度のみで表現しようとしていたが、密度の変化率を含めて計算する事で計算精度を上げようとする試み
PW91 (J. P. Perdew, et al., Phys. Rev. B., 46 (1992) 6671)
PBE (J. P. Perdew, K. Burke and M. Ernzerhof, Phys. Rev. Lett., 77 (1996) 3865)
B3LYP(A.D. Becke, J.Chem.Phys. 1993, 98, 5648-5652.,
C. Lee, W. Yang, R.G. Parr, Phys. Rev. B 1988, 37, 785-789.)などいくつかの方法が存在する

PBEによる方法が広く用いられている
17

LDAとGGA•LDA、GGAともに構造、凝集エネルギーなどについては高精度に計算する事が可能•

水素結合や磁気秩序に関してはGGAでよく記述する事ができる•

バンドギャップやファンデルワールス力に関してはいずれの場合も上手くいかない
バンドギャップに関しては必ず過小評価する•

LDA, GGAの選択は基本的に第一原理計算ソフトウェアのインプット内で行う場合が多い

18

LDA，GGAを超えて・LDA + U
LDAの交換相関項の扱いに加えて局在電子のクーロン相互作用Uを一般化ハバードモデルの形で加える方法
Uは経験的に決定され、適切なUを選ぶ事で計算精度がLDAから改善される
・GW近似
励起状態も扱える多体摂動論の一つ
RPA（乱雑位相近似）の範囲で動的な遮蔽効果を取り込む
バンドギャップの値が改善される

19ここまでのまとめ•

第一原理計算ソフトウェアはKohn-Sham方程式を解く
ことでシュレーディンガー方程式の数値解を与えるもの•

内殻と基底関数の扱い方によってソフトウェアが分かれており、計算目的に合った手法を選ぶ事ができる•

交換相関項の近似についてはLDAとGGAがよく使われており、計算時にどの近似手法を用いるか指定する

20

内容

•

OpenMXについて•

OpenMXとは•

OpenMXの活用事例

21OpenMXとはOpen source package for Material eXplorer
・尾崎泰助教授(東大物性研)が中心となって開発し、GPLライセンスで公開されているフリーな第一原理計算ソフトウェア
・数値局在基底、擬ポテンシャル・大規模系に対して分子動力学計算や構造最適化を速やかに実行可能

Website:http://www.openmx-square.org/

22

OpenMXの沿革
2000年
2003年
2004年
2006年
…
2015年
2016年

開発開始
OpenMX 0.3 公開
OpenMX 1.5 公開
OpenMX 3.0 公開
OpenMX 3.7 公開
OpenMX 3.8 公開（2019年12月2日現在の最新は3.8.5）

この間に多数のハンズオンが開催されている
出版論文数：718本（http://www.openmx-square.org/publications.htmlより）
参考：Google Scholarで“OpenMX DFT”で検索 → 984件ヒット“OpenMX ab-initio”で検索 → 637件ヒット

23

OpenMXの開発者
http://www.openmx-square.org/contributors.htmlより5ヶ国24人 大学、国立研究機関、企業などから構成されている

T. Ozaki (Univ. of Tokyo)
H. Kino (NIMS)
J. Yu (SNU)
M.J. Han (KAIST)
M. Ohfuchi (Fujitsu Labs.)
F. Ishii (Kanazawa Univ.)
K. Sawada (RIKEN)
Y. Kubota (Kanazawa Univ.)
Y.P. Mizuta (Kanazawa Univ.)
T. Ohwaki (NISSAN ARC)
T.V.T Duy (NISSAN ARC)
H. Weng (CAS)Y. Shiihara (Toyota Tech. Inst.)
M. Toyoda (Tokyo Inst. Tech.)Y. Okuno (FUJIFILM)
R. Perez (UAM)
P.P. Bell (UAM)
M. Ellner (UAM)
Yang Xiao (NUAA)
A.M. Ito (NIFS)
M. Kawamura (Univ. of Tokyo)
K. Yoshimi (Univ. of Tokyo)
C.-C. Lee (Univ. of Tokyo)
K. Terakura (NIMS)

24

OpenMXの対象としている物質
シリセン、グラフェン
カーボンナノチューブ
遷移金属酸化物
金属酸化物
分子磁性体
希土類磁石材料
金属間化合物
リチウムイオン電池材料
鉄鋼材料
金属アモルファスetc.
25

OpenMXのメリット•

フリーソフトウェアであり無償で利用可能•

大規模系に対して構造最適化や分子動力学計算を速やかに実行できる•

スパコンなどの高並列環境に対応している•

電気伝導計算などの多様な手法に対応•

精力的に開発が行われている•

日本語のマニュアルが整備されている

26

Mnバンド構造の比較
精度の良い計算結果（全電子+混合基底：Wien2k）との比較(http://www.jaist.ac.jp/~t-ozaki/vps_pao2013/Mn/index.htmlより)

擬ポテンシャル
数値局在基底全電子混合基底d軌道までの基底関数を用いる事で全電子手法の結果をよく再現
27

OpenMXの活用事例
Nd-Fe-Bは最強の永久磁石として様々な用途で使われているが、希少元素の使用を極力抑えた材料の開発、改良が求められている→ 磁性の発現機構を知りたい

磁性の理解のためには焼結磁石の微細構造の理解が不可欠→ ドメイン構造を持つ大きな系の計算が必要→ OpenMXのオーダーN法を用いて電子状態計算を実行（京コンピュータを用いた高並列計算により2700原子を含む界面構造を計算）
https://ma.issp.u-tokyo.ac.jp/app-post/1036 より

28

全体のまとめ•

第一原理計算の手法の種別とソフトウェアの選び方•

大規模計算に適した擬ポテンシャル・局在基底のソフトウェアであるOpenMXの基本情報

29OpenMX講習会
東京大学物性研究所
計算物質科学研究センター

今回行う計算について•

構造データファイルよりC-Toolsを用いてOpenMXのインプットファイルを作成し、実行•

出てきた結果の可視化（電子密度、状態密度、バンド図等）•

物質構造ファイルをダウンロードしての演習

31

C-Toolsについて•

C-Toolsは第一原理計算アプリケーション(DFTコード)の入力ファイル作成の補助ツール。OpenMXにも対応している。

CIF
xTAPP
OpenMXVASP
RSDFT
Quantum ESPRESSO

32

CIFファイルについて•

Crystallographic Information Fileの略
結晶構造のデータが記述されたテキストファイルで物性の分野ではよく使用されている•

例えばNIMSのAtomWork(http://crystdb.nims.go.jp/)で入手できる(例)
data_NIMS_MatNavi_4295513595_1_2_chemical_formula_sum 'C'_space_group_crystal_system cubic_symmetry_space_group_name_H-M 'F d -3 m'_symmetry_Int_Tables_number 227
loop__symmetry_equiv_pos_site_id_symmetry_equiv_pos_as_xyz
1 x,y,z2 -x+3/4,-y+1/4,z+1/2
3 -x+1/4,y+1/2,-z+3/4
(以下略)
33

簡単な例 - Si結晶 ここでは、簡単な例として、Si結晶の電子状態計算を実行する。

loadボタンをクリックし、サンプルフォルダ内のSi.cifを選択「UDF setup」タブを選択する

34パラメータの設定(1)「Calculation Type」を「Energy」に「XD Type」を「PBE」に

上記設定の後、「save」ボタンをクリックしてファイル名を「si.dat」として保存
35

パラメータの設定(2)「si.dat」をテキストエディタで開き、以下の部分を編集する。
<Definition.of.Atomic.Species
Si Si8.0H-s2p2d1 Si_CA13H
Definition.of.Atomic.Species><Definition.of.Atomic.Species
Si Si8.0H-s2p2d1 Si_PBE13
Definition.of.Atomic.Species><Atoms.SpeciesAndCoordinates
1 Si 0.000000 0.000000 0.000000 5.00 5.00
2 Si 1.920000 1.108513 0.783837 5.00 5.00
Atoms.SpeciesAndCoordinates><Atoms.SpeciesAndCoordinates
1 Si 0.000000 0.000000 0.000000 2.00 2.00
2 Si 1.920000 1.108513 0.783837 2.00 2.00
Atoms.SpeciesAndCoordinates>36

パラメータの設定(3)「si.dat」に以下の行を追加
DATA.PATH /opt/app/openmx/3.8/intel-17.0/DFT_DATA13

データのコピー
WinSCPを起動し、Camphorに接続。作成した「si.dat」とジョブ投入用スクリプト「job_si.sh」をサーバーにコピーする。

ドラッグ＆ドロップでコピー

38

計算の実行
Puttyからサーバーに接続し、スクリプトを投入する。
$ qsub job_si.sh

ジョブの実行状況に関しては以下のコマンドで確認する。
$ qstatjob_si.sh#!/bin/bash#============ PBS Options ============#QSUB -q ca#QSUB -W 1:00:00#QSUB -A p=4:t=1:c=1:m=2710M#============ Shell Script ============
module load openmx/3.8_intel-17.0
aprun -n $QSUB_PROCS -d $QSUB_THREADS N $QSUB_PPN openmx si.dat > si.std
39

計算結果
WinSCPで計算結果を手元の環境にコピーしてくる。
ここでは以下のファイルを用いる。
・si.dat.out: OpenMXの入力ファイルと標準出力
・si.dat.tden.cube: cube形式の全電子密度
si.dat.outを見る事で、SCF計算の収束性やフェルミエネルギーの情報を得る事が出来る。

40

電子密度(1)電子密度は、si.dat.tden.cubeをVESTAで読込む事で見る事が出来る。
• VESTAを起動して、「File」→「Open」から、si.dat.tden.cubeを選択する。
• 「Objects」→「Properties」→「Isosurfaces…」を選択すると、左図のようなウィンドウが出るので、level部分をクリックして0.05に修正しOKを押す。

41

電子密度(2)• 「Objects」→「Boundary」を選択し、左図のようなウィンドウが出るので、x(min), y(min), z(min)を-1.25、x(max), y(max), z(max)を1.25に変更し、OKを押す。
• 下記のように電子密度の可視化が出来る。（マウスで動かせる）

42

バンド図の計算
次に、同じSi結晶におけるバンド図の計算を実行する。
「Calculation Type」を「Band」にしてsi_band.datとして保存

43

パラメータの設定
Difinition.of.Atomic.SpeciesとAtoms.SpeciesAndCoordinatesに関しては、前の計算と同様に修正する。
加えて、以下の部分を修正。

Dos.fileout off
Dos.Kgrid 0 0 0

Dos.fileout on
Dos.Kgrid 7 7 7

上記により、状態密度も合わせて計算する設定となる。

データコピー、計算の実行に関しては前の計算と同様。
以下のデータ、スクリプトを使用する。
・si_band.dat
・job_si_band.sh・si_band.gp44状態密度(1)状態密度の出力にはOpenMXに付属のコードDosMainを使用する。
Camphorにはインストールされているので、以下のコマンドで実行。
$ tssrun DosMain si_band.dat.Dos.val si_band.dat.Dos.vec
上記を実行すると、以下のように出力される。質問にはいずれも1で答える。
Max of Spe_Total_CNO = 13
1 1 101 102 103 101 102 103 201 202 203 204 205<si_band.dat.Dos.val><si_band>
Which method do you use?, Tetrahedron(1), GaussianBroadening(2)1Do you want Dos(1) or PDos(2)?
145状態密度(2)
前頁のDosMainの実行により、状態密度データsi_band.DOS.Tetrahedronが出力される。これをグラフ作成ソフトGnuplotを使用して描画する。
$ tssrun gnuplot si_band.gp
これで状態密度のプロットsi_band.pngが得られる。

46

バンド図(1)状態密度の出力にはOpenMXに付属のコードbandgnu13を使用する。
Camphorにはインストールされているので、以下のコマンドで実行。
$ tssrun bandgnu13 si_band.dat.Band
上記実行により、Gnuplot用スクリプトsi_band.dat.GNUBANDが生成される。ここでは、画像ファイルに図を出力したいので、以下のようにsi_band.dat.GNUBANDに追加、修正する。
set term png
set out "si_band2.png"
set style data lines
set nokey…
set xra [0.000000:2.530949]
set yra [-15:10]…

47

バンド図(2)Gnuplotでバンド図を描画。
$ tssrun gnuplot si_band.dat.GNUBAND

上記実行により、バンド図si_band2.pngが生成される。

48

演習

•

Siと同じダイヤモンド構造の結晶(ダイヤモンド, Ge)に関してバンド図を計算し、比較してみよう。

49

大きな系の計算（Si表面）
次に、大きなSi表面系における並列計算の例を見る。
ここではSi111_7b7b2_DAS_light.datとしてOpenMXの入力ファイルを用意している。これは、347個のSi原子からなる系となっている。
構造はC-Toolsで開く事で確認可能。

50

計算の実行
データコピー、計算の実行に関しては前の計算と同様。
以下のデータ、スクリプトを使用する。
・Si111_7b7b2_DAS_light.dat
・job_si111.sh

実行後、例えば電子密度を見たい場合には、
・si111_7b7b2_DAS.tden.cubeを手元の環境にコピーすれば良い。

51

可視化
VESTA によって電子密度を可視化すると以下のようになる。

52

計算時間について
ここでの計算例では、12並列のMPI計算により10分程度で計算する事が出来る。以下に並列数を変えた場合の時間を図示する。
並列数を上げる事で計算を素早く実行する事が可能。
（3並列だと約1700秒なのに対して24並列だと380秒程度）

53

まとめ

•

C-TOOLSとXC40を用いてのOpenMXの使い方、可視化の方法について学んだ•

基本的な計算の実行方法、バンド図の描き方•

並列化の方法とその効果

54計算科学ソフトウェア、データ等
東京大学物性研究所
計算物質科学研究センター

内容•

ソフトウェアやデータベースを探すためのWebサービスに関して56

MateriApps• 公開ソフトウェア(アプリケーション)を核としたコミュニティー形成をめざして• 265の物質科学アプリケーションやツールを紹介(2019年11月27日現在)• 「やりたいこと」からアプリケーショ
ンを検索• 検索タグ：「特徴」「対象」「手法・アルゴリズム」• 開発者の声を利用者に届ける• アプリ紹介、開発者ページ、アプリの魅力・将来性・応用性• 講習会情報・web講習会・更新情報• 月間 15000 ページビューにまで成長
2013年5月公開

http://ma.cms-initiative.jp/ja57

MateriAppsの活用方法「アプリ詳細検索」タブから検索ページへ行けばカテゴリーや手法から欲しいアプリケーションにたどり着ける58

MateriApps LIVE!
•

USBメモリから直接ブートできる Linux システム
(Debian Linux)•

Windows、Mac などで利用可•

インストール作業なしで物質科学アプリを実行•

VirtualBox向けのovaファイルも提供されている•多数の物質科学計算の公開アプリ・ツールを収録••

2018年9月12日現在：
ABINIT, AkaiKKR, ALPS, CP2K, Feram,ERmod, GAMESS, Gromacs, OpenMX, Quantum
Espresso, SMASH,VESTA, xTAPP等

MateriApps LIVE! サイトからダウンロード可能http://cmsi.github.io/MateriAppsLive/59

MatNavi
http://mits.nims.go.jp/
物質材料研究機構(NIMS)が運営するマテリアルのデータベースサイト

ユーザー登録すれば無償でさまざまな物質データを得る事が出来る
ここでは
無機材料データベース「AtomWork」と電子構造計算データベース「CompES-X」
について取り上げる

最初はこちらから登録

60

AtomWork
科学技術文献から抽出した無機材料の結晶構造、X線回折、特性、状態図に関するデータを収録したデータベース
約82,000件の結晶構造情報がある

CIFファイルをダウンロード可能→ 第一原理計算にも活用できる

61

CompES-X
AtomWorkにあるCIFデータに関してVASPで計算を実行して得られた電子構造を収録

様々な物質の計算結果の図やデータが得られる→ 既に欲しい結果がある場合は計算しなくとも良い

62

まとめ•

物質計算ソフトウェアのポータルMateriApps••

ソフトウェアを目的に沿って調べられる

物質の構造や電子状態に関するデータベースMatNavi•

物質の構造ファイルで容易に手に入るものもある•

場合によっては第一原理計算の結果も提供されている

63

演習

•

AtomWorksにある物質についてCIFファイルを取得してOpenMXで計算を実行してみよう。

64

講習会に関する質問等•

講習会についての質問をメールで受け付けます。
（講習会後1週間以内でお願いします）•小西優祐（株式会社アカデメイア）宛
y-konishi@academeia15.co.jp

65