Quantum Espresso Hacking
Quantum Espresso Hacking故名思義就是想要從一個駭客的角度,來理解Quantum Espresso這個軟體,會想要做這個題目的最大原因是讀博士班讀到一半,本來以為自己要畢業了,結果因為論文寫不出來和期刊寫不出來,等等理由,被老師多留下來半年。本來想著這半年就拿認真寫論文,但發現當初找的學位考試口委,有其中一個是純理論背景的,為了不要在口認的時候被問倒,所以現在想要靠著每天寫一天關於Quantum Espresso的文章,加減學習一下密度泛函理論的相關知識。
在之前的文章裡,我寫了一個Quantum Espresso的GPU版本的安裝方式,本來裝這個是為了要更快地算出某個材料的Raman光譜的,但後來發現需要有更大VRAM的GPU,才能支援我作到那個工作,而那會花我超多錢,所以現在就退而求其次,先解決其它問題,再來認真的做Quantum Espresso裡的GPU版本計算工作。
在Quantum Espresso裡的Raman 光譜計算工作,有一個對我來說很嚴重的問題,那就是他只支援LDA XC Potential,而我平常在Material Studio 的CASTEP模組裡,都是使用GGA PBE的組合,因此有可能造成計算結果無法再現的問題。
所以現階段的研究目標,或是說工作目標就是讓Quantum Espresso可以支援GGA PBE的Raman 光譜計算。在知道如何實作這個功能前,首先從一個操作面向來看看,怎麼用Quantum Espresso計算出一個材料的Raman光譜。一個我很想吐槽Quantum Espresso的點就是,比起CASTEP在一開始的設計的時候,就己經朝著虛擬實驗室的方向開發,所以全部有關於現實的實驗數據的運算,都被放在一個可以輕鬆找到的地方,Quantum Espresso就像是一個純粹為物理人寫的程式,很多東西如果沒有仔細地去研究,其實會不知道怎麼用。
舉Raman光譜計算的例子來說,在Quantum Espresso裡,或是一些量子力學教科書的內容裡,Raman光譜可以從聲子(Phonon Dispersion)的頻散(Dispersion)關係中得到,也就是Phonon Dispersion,而在Quantum Espresso中要計算得到Raman光譜,首先得用pw將系統進行幾何優化到最低能量,再利用phonon計算lrraman,再用q2r將其轉換到真實空間,再用matdyn得到dynamical matrix,最後再用dynmat計算得到Raman光譜。老實講在這一連串的計算裡,沒有半個字和Raman光譜有關的,所以也很可以想像初學者在遇到這個計算流程的時候會有多麼的無解。
所以接下來就一一地解析pw, phonon, q2r, matdyn, dynmat各自都做了什麼事。
因為這個工作就算是一個,每天上來工作一點就來更新一點,日誌型式的內容,所以有時候會發現我寫到一半就沒有了,那就只能下集待續了。另外,在本網誌的其它文章經營上,我發現如果先在Youtube上發一個影片,然後再把人轉到Blogger的話,流量會超級高的,所以未來在這個文章或是相關主題達到一定的規模的時候,應該也會考慮錄個Youtube來擴大一點觸及率。
留言
張貼留言