密度泛函理论如何随系统规模缩放?


11

从理论上讲,进行密度泛函理论(DFT)计算的时间如何随电子数量而变化?我对VASP,ABINIT等“典型” DFT实现感兴趣,而不是O(N)代码。

Answers:


13

最简单的正确答案是DFT以。这是因为您最终将对角线化的哈密顿量与选举次数成正比,对角化从技术上说是O n 3O(Ne3)O(n3)


实际上,DFT是一堆步骤,不同的步骤在不同的上下文中会限制速率。如果我们将自己限制在平面波(PW)DFT(VASP,ABINIT,QE等)上,那么我们可以做出更强有力的陈述。了解PW DFT代码的一个重要思想是,哈密顿量永远不会存储为大矩阵。取而代之的是,计算哈密顿算子的作用并将其用于通常是“内部”迭代对角化器(共轭梯度,戴维森等)中。这些对角化器的形式为,其中M V是计算哈密顿量作用的成本,但是鉴于它们在较大的自洽算法中的作用,它们的执行速度往往更快。O(neMV)MV

计算哈密顿量作用的过程分为两个步骤:

  • O(nvlnnv)
  • O(nanp)O(nanpnv)
  • 非局部电位或者是对角线或,方框对角线或,分别O(nanp)O(nanp2)

所有这些都必须对每个电子发生一次(实际上是波函数),因此要为所有电子增加倍。ne

通过某种方式(例如,Gram-Schmidt),波函数(哈密顿量的本征函数)必须保持彼此正交,O(ne2nv)

最后,波函数需要组成一个电子密度。在PW码中,这是通过每个波函数(和)和最后一个FFT。O(nenvlnnv)

请注意,我输入了几个不同的:与体积有关(实际上,它是基本大小),是每个原子的投影仪数量,是原子数量,数量电子。形式上,和彼此线性相关(是一个小整数),但是您可以想象在固定数量的电子下增加体积(在平板/线几何中增加真空)或在以下情况下增加投影仪的数量:固定数量的原子和电子(使用更精确的伪电势)。nnvnpnanenvnanenp

常见的情况是问题是受FFT限制的,在这种情况下,问题实际上是,即使在技术上不正确,这在文献中还是比较常见的答案。O(n2lnn)


您真的需要完整的本征分解,还是只需要光谱的一小部分?
维克多·刘

O(ne)ne/2

感谢您的回答!您能推荐讨论该问题或进行基准测试的任何论文吗?
Max Radin

1
G. Kresse,计算材料科学6,15(1996)是VASP的标准介绍。您可能要从第6节开始。RM Martin,《电子结构:基础理论和实践方法》(剑桥大学出版社,2004年)是DFT(平面波及其他方法)的出色入门,但对复杂性可能不太明确。
Max Hutchinson
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.