作者caseypie (吟遊詩人)
看板Physics
標題Re: [問題] 人類有能力用電腦模擬找出新材料來嗎
時間Thu Feb 17 17:03:35 2022
最後這篇來講講考慮到量子效應的動力學模擬方法
其實這講法有點誤導人,並不是像上一篇有推文提到的Lindbladian那樣高級的東西
具體一點,我要講的是ab initio molecular dynamics (AIMD)
也就是「完全」建立在量子力學結果上的MD模擬
各種量子模擬方法處理的問題都是:給定一個位能,求波函數
在計算化學裡,這個位能通常來源是原子核的電荷和(有時還有磁矩)
在凝態物理和化學物理的大多數研究裡,原子核被當成固定點
比如說,在量子物理課解氫原子的薛丁格方程時,氫原子核是一個處於原點的點電荷
也就是說,原子核並不具有量子效應
整個量子模擬僅僅關注電子們的量子效應,原子核們只是提供位能的背景
這個簡化叫做Born-Oppenheimer approximation
BO近似把電子和原子核的區分開來,讓AIMD能有一些相對簡單的實踐
主要步驟是:
(1)給定原子核分布
(2)依此原子核分布計算基態電子密度分布
(3)依此電子密度分布計算其作用於各原子核上的庫侖力
(4)依此庫侖力移動各原子核
(5)重複(2)(3)(4)
簡單的說,就是on the fly用量子力學計算force field
這樣的方法能達到古典有效力場達不到的細緻和精確度
相應地,需要的計算資源和計算時間也變得相當恐怖
此外,由於電腦計算能力的發展
最近也開始有人嘗試建立不依賴BO近似的AIMD
比如說ab initio Ehrenfest Dynamics
這裡有一篇回答寫得不錯:
https://shorturl.at/vBEY8
以下就不特別依照什麼原則排序了,單純想到什麼寫什麼
6. 在MD開始大行其道的1980年代,Car和Parrinello對於力場這種有效模型相當不滿
於是他們想到了--把DFT連上MD!
DFT計算給定原子位置的電荷密度分布,再由此計算各原子受力
這就是Car–Parrinello molecular dynamics (CPMD)
是第一個實際應用的AIMD方法
在此下載:
https://www.cpmd.org/wordpress/ (非營利用途免費)
事實上CPMD也不是每一步都計算一次DFT
而是讓電子密度函數自己依照Kohn-Sham energy進行動力學演化
有個論證是說,由於CPMD的時間尺度小於1fs,所以電子密度的演化可能有些延遲
因此讓電子密度自行演化反而更接近真實結果
但我個人認為純粹就是1980年代的電腦太爛了,每步都算DFT會什麼都算不出來...
CPMD有一個變體是CP2K,採用了不同的電子密度演化模式
據說更接近原本每步都算DFT的初衷,現在的CPMD軟體是採用CP2K演算法
7. Ehrenfest Dynamics:
這個我沒做過,僅就我看過的資料隨便講講
這個方法是基於所謂的Ehrenfest theorem
亦即重粒子的運動軌跡和動量的期望值和位能的期望值滿足哈密頓力學
把動量和位置的期望值當成其古典值,就變成了一個MD方法
這個方法的步驟:
(1)根據原子核位置(的期望值,以下省略)寫下Hamiltonian
(2)解時變薛丁格方程得一原子核和電子的波函數
(3)依此波函數計算位能期望值並求其對於原子核位置的梯度
(4)將此梯度當成對於原子核位置的作用力,依此移動原子核
(5)重複(1)到(4)
由於所需計算量極為巨大,解薛丁格方程一般使用最快速的Hatree-Fock方法
比起BO近似的AIMD,這個方法能夠計算電子激發態和一些原子核的量子效應
例如在核磁共振實驗裡非常重要的Nuclear Overhauser effect
AIMD方法就是很慢,算不了大系統
但是「考慮量子效應的MD」這個點子實在太吸引人了,因此有不少曲線路徑被提出來
以下講兩個有具體做出軟體並應用的
8. Reactive force field
化學裡最重要的量子效應是什麼?
其實不用想得太深奧,鍵結的斷裂和重組就是個量子效應
在通用的MD力場裡,鍵結是彈簧或長桿
那是不是只要允許這個彈簧或桿子可以被拉斷就能模擬各種化學反應了?
這種鍵結能被打斷/接上的力場就是reactive force field
目前唯一開發完成被足夠廣泛應用的這類力場是ReaxFF:
https://pubs.acs.org/doi/10.1021/jp004368u
所有鍵結都能斷裂,號稱能模擬任何化學反應
創始人非常用力推廣,但接受度實在是不怎麼樣
因為很多東西算不準!
這未必是這個想法根本上有問題,也有可能是實踐上的瑕疵
比如說位能函數的形式不夠好,或者電荷轉移機制有問題,或參數沒有調好
畢竟ReaxFF的開發人數遠不能跟古典力場御三家CHARMM/AMBER/GROMACS相比
工程實踐上有很多問題也是可以理解的
不過大者恆大也是計算科學的常態,ReaxFF恐怕沒有證明自己的機會了
除了所有鍵結都能斷裂的ReaxFF,有些人退而求其次只讓自己有興趣的鍵結斷裂
最常見的是允許氫離子解離,也就是能模擬酸鹼反應,模擬生化系統時很有用
比如說這個:
https://pubs.acs.org/doi/abs/10.1021/acs.jcim.7b00603
和這個:
https://aip.scitation.org/doi/10.1063/1.3688228
不過這些都只是一些實驗室自己的小眾工作
而且在這個年頭在學術界做這些實在太吃力不討好了
因為最近MD領域流行的東西是......
9. Machine learning force field
喜聞樂見地,任何領域都逃不過的機器學習也在MD軋上一角了
概念也如同其他機器學習應用一般簡單粗暴:
力場說穿了不就是個函數,輸入原子位置輸出能量
這個能量可以來自古典有效模型,也可以來自DFT,那為什麼不能來自ML/DL函數?
於是有許多人餵各種ML模型CPMD的結果,訓練出各種精確度不輸CPMD的力場
一開始大家還用一些傳統ML方法,比如Gaussian approx potential之類的
最近幾乎無一例外都上深度神經網路了
目前許多人採用ANI-1cxx這個框架來訓練自己的深度學習力場
https://roitberg.chem.ufl.edu/research/
現在還沒有大家公認信服的通用力場,都是各自對自己的系統訓練
機器學習力場的瓶頸是對資料量的需求
CPMD本身就很耗資源了,還要跑好多不同的模型好長的軌跡來搜集資料做訓練...
目前機器學習力場在小分子和純物質(例如純水、碳奈管)取得很好的結果
在比較複雜的系統裡(例如大分子溶液)的表現很差
鍵結重組等化學效應的結果也欠缺可遷移性--那我CPMD都算完了幹嘛還要訓練?
這些問題可以靠更大量的訓練樣本來解決,也可能靠一些拆分問題的巧思來解決
最近有一篇不錯的Review:
https://doi.org/10.1021/acs.chemrev.0c01111
大概就這樣了,我沒什麼其他領域的東西可以講了
如果你看到這裡,有MD模擬的經驗,對C/Python的程式能力有自信
也有興趣繼續做這方面工作(畢竟有程式經驗的話刷題轉碼多好)
我公司(不是我的)正在招人:
https://www.htuobio.com
不要管網站上寫的開缺,那個過期了
可以直接丟公司招聘信箱或私訊我
感謝
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 198.47.45.153 (加拿大)
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Physics/M.1645088625.A.58D.html
1F:→ Eriri: 推學長 也推加拿大 老實說我也寫過MD 課堂程度而已XD 02/17 17:23
2F:→ recorriendo: 推學長 02/18 14:26
3F:推 recorriendo: 補推 02/18 15:24
4F:推 contaminate: 這個缺base在那 02/20 19:19
5F:推 meblessme: 謝謝提供資料 02/20 22:55
6F:→ caseypie: 溫哥華,可以討論遠端可行性 02/21 02:27
7F:推 ccchenUAB: 多謝分享 03/05 11:27