27
分子の話 -第一原理計算- カーネル/VM 勉強会 懇親会LT @cosmo__

カーネル VM懇親会LT

Embed Size (px)

Citation preview

Page 1: カーネル VM懇親会LT

分子の話-第一原理計算-

カーネル/VM 勉強会懇親会LT

@cosmo__

Page 2: カーネル VM懇親会LT

自己紹介

● コスモ ● Twitter:@cosmo__● Blog(Wordpress):cosmo0920

● Pixiv、SoundCloudにも生息しています● ソフトウェアエンジニア見習い● この間までラボ畜。専攻は化学でした

(分子の計算をしていました)

Page 3: カーネル VM懇親会LT

カーネル/VMと言えば…

Page 4: カーネル VM懇親会LT

低レイヤー

Page 5: カーネル VM懇親会LT

低レイヤーの定義

● 低レイヤーはどこから低レイヤー?ユーザランド

カーネル

ハードウェア ↓・

ハードウェア下に行く程レイヤーが低い(はず?)

Page 6: カーネル VM懇親会LT

● 半導体の性質はその上で動くカーネルからみると低レイヤー

半導体の性質を決めるもの is

↓ 一段降りてみる

A.分子(の中の電子)

Page 7: カーネル VM懇親会LT

分子の中の電子の話をしよう。

● 分子の中の電子は…●分子の中の電子は物質の性質を決める最小単位

●分子の大きさは周りを回る電子の動ける空間の大きさ

Page 8: カーネル VM懇親会LT

分子の概念● 分子の概念が西洋科学で検証され始めたのは

それ程古くない

→1920年代に提唱された量子力学の貢献

ニールス・ボーア出典:http://ja.wikipedia.org/wiki/%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB:Niels_Bohr.jpghttp://ja.wikipedia.org/wiki/%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB:Dirac_4.jpg

ポール・ディラック

Page 9: カーネル VM懇親会LT

ハミルトニアン・・・系の特徴を記述

波動関数・・・量子的な粒子を記述

物理の道具を用いますよ

Page 10: カーネル VM懇親会LT

量子力学の基本方程式時間に依存するシュレディンガー方程式

時間に依存しないシュレディンガー方程式

Page 11: カーネル VM懇親会LT

厳密なハミルトニアン

これは厳密には解けない

Page 12: カーネル VM懇親会LT

シュレディンガー方程式

● 大変美しい方程式→しかし、厳密に解けるのは水素原子まで!あれ?分子の計算はどうなるの…

Page 13: カーネル VM懇親会LT

Hartree-Fock法

● シュレディンガー方程式→厳密…でも解けない

● ハートリー・フォック方程式→厳密ではない…しかし解く方法が存在する(近似解)

Page 14: カーネル VM懇親会LT

問題を読み替える

● よろしい、解けない部分を解けるように変えてしまえ→とりあえず相互作用しないものとして計算

● ハートリー・フォック方程式

Page 15: カーネル VM懇親会LT

第一原理ハミルトニアン

解けない項をとりあえず無視すると最後の項だけが問題

第一原理計算(ab initio計算)

Page 16: カーネル VM懇親会LT

Hartree-Fock方程式

● 対角化と固有値問題に帰着する

フォック演算子

Page 17: カーネル VM懇親会LT

SCF(Self Consistent Field)

原子軌道関数ρ(r,0)、一電子のルーチン

n-1回目電子密度 ρ(r,n-1) 、二電子のルーチン

電子密度からポテンシャルを計算

波動方程式を解く Hψ=Eψ → ρ(r,n)が求まる

ρ(r,n) = ρ(r,n-1)なら終了違った場合は戻る

Page 18: カーネル VM懇親会LT

計算量の話

● ハートリーフォックのSCF計算ではO(N^4)のルーチン(二電子のルーチン)があります

● しかもそのルーチンはSCFのサイクル毎に呼ばれます

計算コストが高い!!

HPC!!

Page 19: カーネル VM懇親会LT

最小のプログラム(C++版)cosmo SCF% wc -l *.h 9 collect.h 9 hfcalc.h 9 integral.h 10 one_integral.h 30 param.h 9 scf.h 8 two_integral.h 15 util.h 99 totalcosmo SCF% wc -l *.cpp 68 collect.cpp 20 hfcalc.cpp 140 integral.cpp 19 main.cpp 56 one_integral.cpp 30 param.cpp 127 scf.cpp 24 two_integral.cpp 160 util.cpp 644 totalcosmo SCF% wc -l **/*.hpp 44 include/FixMatrix.hpp

>787行<水素分子を計算するだけでも…

Page 20: カーネル VM懇親会LT

つらい

Page 21: カーネル VM懇親会LT

流石に実装するのはきつかった…

● 第一原理計算でどんな性質がわかる?● 分子構造● イオン化ポテンシャル● 双極子モーメント● 振動エネルギー● 反応性、溶媒効果等々…の分子の性質が計算出来る

Page 22: カーネル VM懇親会LT

第一原理計算のソフトウェア―特に分子軌道計算が出来るもの

● 多くはプロプラのソフトウェア● Gaussian● Jager● GAMESS-UK

● 学術使用は自由● GAMESS-US● SIESTA

● 中にはオープンソースも● PSI3(PSI4が開発中)● NWChem(North West Chem)

Page 23: カーネル VM懇親会LT

フリーな第一原理計算ソフトウェア

● NWChemNWChem: Delivering High-Performance Computational Chemistry to Science

http://www.nwchem-sw.org/index.php/Main_Page

● PSI4(まだβ版)

PSI4: ab initio quantum chemistry

https://github.com/psi4

お家でab initio計算ができる時代

Page 24: カーネル VM懇親会LT

>ただし言語はFortran<

…たまにC++製もあります

Page 25: カーネル VM懇親会LT

つらい

Page 26: カーネル VM懇親会LT

今どの程度まで計算が可能か

● 第一原理計算は最低O(N^4)なので数百原子が限界

● 微細な構造も含めて半定量的な議論まではできる

● 磁性はまぁまぁ予測できる● 反応経路もまぁまぁ予測できる● 半導体のバンドも計算により再現出来ます

→が、まだまだ定量性に欠ける

Page 27: カーネル VM懇親会LT

まとめ

● ここで解説したものはまだ基本的な第一原理計算の理論のさわりです

→なので実際の計算に入るにはまだ知識不足● ハートリーフォック法は電子の相互作用を無

視している部分があるので…

正しく間違った計算をすることができます!!