截斷能與什麼因素有關?

進行第一性原理計算時,階段能ECUT是把價電子與芯電子cut off的能量。通常在VASP中對於某些元素有默認的截斷能,但是計算一個非單元素體系時階段能該怎麼選取?階段能是否和晶胞的大小有關?


隨手答,

1、ENCUT取高不取低:比如如描述O的ENCUT高於S,那麼體系中同時存在O和S時,計算時用O的參數。

2、ENCUT的大小取決於體系本身波函數的平滑性(波函數越平滑,ENCUT越低,計算越快),和盒子大小無關。也就是所你做unitcell用的ENCUT參數可以照搬到supercell計算中。

3、VASP中POTCAR里默認的ENCUT一般偏低,除非是低精度非常無所謂的計算,否則一般要手動調高。

4、手動調高到多少要具體試,和體系還有泛函贗勢都有些關係。一般做法是取一個化學組成和結構相似,且儘可能小的unitcell,然後手動提高ENCUT的值,直到體系總能量變化收斂到1meV/atom的範圍內。

5、這種事似乎應該多請教組裡師兄:)

就這樣。


可採用較小的胞做階段能測試,用多組不同截斷能計算同一結構,關注體系能量的變化。當能量不隨截斷能明顯變化時即可。


說說我學 VASP 的過程,希望有所幫助。

目前研一,上學期的課程中,計算材料學(其實就是MS上機課,老師帶著我們用MS算各種東西),固體物理和量子化學對與自己對計算的理解會有幫助。計算材料學的課程就是使用 castep 模塊的過程,VASP 中很多參數和 castep 是相同的。在後面學 VASP 的時候,castep 的學習過程讓我更容易接受 VASP,反過來也更加理解當初 castep 計算為什麼這麼做。固體物理主要是布洛赫定理和 VASP 的計算原理息息相關。量子化學的話,對於理解 DFT 的計算流程是非常重要的。

上學期的時候,我只是在折騰怎麼在自己筆記本上安裝 VASP 。小木蟲上有格帖子將 VASP5.4 的安裝,基本上按照那裡來就可以了。折騰的過程,其實也讓我有些明白 Linux 的環境變數的配置是什麼意思。現在我會直接把 VASP 的路徑寫到 ~/.bashrc 文件中,然後在腳本中使用 VASP 時就不需要再給出路徑了,mpi 同理(嗯,這算是很簡單的 Linux 知識吧)。

這學期開始,有了上學期上課的基礎,再看一些計算的資料,比如李震宇老師的葵花寶典,David S. Sholl 的《密度泛函理論》,就容易明白,使用平面波基組的 VASP 和布洛赫定理,到平面波截斷能,再到 ISMEAR 控制的模糊化處理。結合侯柱鋒老師的教程,自己動手計算教程里的例子。用專門的時間看看 Shell 腳本,看明白侯老師教程里的腳本。想想 VASP 的計算邏輯,把邏輯基本想通了以後,其實就可以開始獨立地算一些東西了。不要忽視 Shell 腳本的學習,將一些重複繁瑣的過程寫進腳本里,能大大提高效率。另外,因為之前有 Fortran 編程的基礎,在能帶計算的時候,順手把侯老師之前寫的能帶數據處理程序 pband.f 重新寫了一下,安裝自己的喜好進行了一些修改,使得程序更易用( pband.f 已經很老了,當時的 VASP 在 KPOINTS 文件中還不支持線模式,所以 pband.f 需要一個額外的 syml 文件)。另外,遇到問題,可以查 VASP 手冊,谷歌。

計算的邏輯:計算的流程大概可以分為三步:收斂性測試、幾何優化、其他計算。收斂性測試的目的在於:確定計算的參數,使得計算在結果滿足自己需要的精度的前提下,儘可能減少計算的耗時。幾何優化用於保證自己獲得相對正確的結構,(結構決定性能),進而保證後續的計算是正確的。

你問的問題,應該是說計算一個體系時,應該用多大的截斷能。這是在收斂性測試的過程中確定的:對體系設定不同的截斷能,看體系能量變化。一般來說,能量變化滿足 @余曠 說的 1meV/atom 就足夠了。測試的過程使用腳本提交任務可以提高自己工作效率。

上圖例子是侯柱鋒老師教程中 Al 的計算的復現,體系中只有一個 Al 原子。

總的來說,還是要多試多算多想吧。

回答中有什麼錯誤,還請指出。


推薦閱讀:

在極端條件下,物質都會出現哪些奇特的性質?
過渡態的符號怎麼打出來?
計算時Normalization的意義何在?一個好的Normalization應該是怎樣的?
定向攪拌能夠產生手性分子嗎?如果分子不行,能夠形成具有手性的分子自組裝形態嗎?
水面壓強越小,沸點越低,同時凝固點越高。所以減小氣壓,使水沸點和凝固點接近,可能同時凝固和沸騰嗎?

TAG:物理化學 | 凝聚態物理 | 計算物理學 | 密度泛函理論 |