DFT 浅入浅出
1 前言
根据量子力学理论,波函数能够给出一个系统系全部物理量的信息,因此只要求解薛定谔方程(Schrödinger equation)就能够准确预测整个体系的各种性质。但是对于多体系来说,计算过于复杂,准确求解薛定谔方程几乎不可能。密度泛函理论(Density-functional theory , DFT )正是为了求解薛定谔方程而发展的一种近似方法,通过近似和变换,能够较为准确地求解薛定谔方程,使理论化学计算成为可能。 [1]
开始之前,首先引入泛函(Functional)的概念。泛函是函数的函数(A functional is a function of a function),即 F[f],其中 f(x) 也是一个函数。密度泛函从字面意思来讲就是,将薛定谔方程表达为电子密度的泛函。
2 Born–Oppenheimer 近似
对于一个多体系,既包含了原子核又包括了电子。考虑到原子核的质量要比电子大很多,Born–Oppenheimer 近似(Born–Oppenheimer approximation)认为原子核相对于电子接近静止,可以将原子核变量从薛定谔方程中分离。薛定谔方程简化成关于电子变量的函数: \[ {\displaystyle {\hat {H}}\Psi =\left[{\hat {T}}+{\hat {V}}+{\hat {U}}\right]\Psi =\left[\sum _{i=1}^{N}\left(-{\frac {\hbar ^{2}}{2m_{i}}}\nabla _{i}^{2}\right)+\sum _{i=1}^{N}V(\mathbf {r} _{i})+\sum _{i<j}^{N}U\left(\mathbf {r} _{i},\mathbf {r} _{j}\right)\right]\Psi =E\Psi ,} \]
Ĥ is the Hamiltonian, E is the total energy, T̂ is the kinetic energy, V̂ is the potential energy from the external field due to positively charged nuclei, and Û is the electron–electron interaction energy.
3 Hohenberg–Kohn 定理
经过Born–Oppenheimer 近似处理后,薛定谔方程转化成关于电子变量的函数。但是对于一个 N 电子体系,在空间上有 3N 个自由度,计算量依然庞大。
1964 年,Hohenberg 和 Kohn 提出并证明了两条定理:
First: The ground state of any interacting many particle system with a given fixed inter-particle interaction is a unique functional of the electron density n(r).
Second: The electron density that minimizes the energy of the overall functional is the true electron density corresponding to the full solutions of the Schrödinger equation.
第一条定理证明了薛定谔方程是基态电子密度的泛函,因此可以将薛定谔方程转化为关于电子密度的泛函,空间上的自由度简化成 3 个。第二条定理指出使能量最低的电子密度即是基态的电子密度,则为求解基态电子密度提供了思路(能量最低)。
4 Kohn–Sham 方程
Hohenberg–Kohn theorems 第一条定理证明了薛定谔方程是基态电子密度的泛函,但是这个泛函的准确形式是无法写出来的。Kohn–Sham 方程(Kohn–Sham equation)核心思想是将总能 E 关于电子密度 ρ 的泛函尽可能地写出来: \[ E[\rho ]=T_{s}[\rho ]+V[\rho]+U_{\text{H}}[\rho ]+E_{\text{xc}}[\rho ], \]
其中前三项均是经典物理量,可以展开求得(视为已知);而 Exc[ρ] 的含义是使方程左右成立而补充的误差,称为交换-关联能(涉及到电子间的相互作用)。对交换-关联能近似显然比直接对 E[ρ] 近似更接近真实体系。
但是到这里,完整的推理我也没有看懂。我的理解是,Kohn–Sham 方程目的是求解单电子的波函数,前三项均可以使用波函数展开,但是 Exc[ρ] 项较为复杂,展开后还包含了电子密度。相当于,要求解波函数,首先需要知道系统的电子密度,而电子密度是由波函数决定的。 [2]
所以解决方法就是建立一个自洽场(self-consistent field method, SCF)。首先猜一个电子密度,带入到 Kohn–Sham 方程中求出一组波函数,再通过波函数求出电子密度,并与之前的电子密度比较,如果相符,则认为求到了真解,否则,用新求出的电子密度继续带入 Kohn–Sham 方程求波函数,直到求出真解。在实际计算中,只要解出的电子密度与带入的电子密度在可接受的误差之内,即可输出结果,这个结果也叫“收敛”。
5 小结
总的来说,DFT 的建立基本就是这个样子。量子化学事实上还包括其它的一些方法,包括 HF、TDDFT(算激发态常用) 等,我也不太了解。需要深入学习可以参考 Quantum Chemistry(by Ira Levine),目前已经出到了第七版,网上也能找到相关的电子版。
在我看来,理论计算对于有机化学工作者来说,只是一个辅助工具。DFT 计算基态分子速度和精度也都能够接受,而常用的软件 Gaussian,就像一个黑匣子,只需要给出分子结构,参照文献设定好合适的泛函,也能解决大部分问题,并不要求一开始就对量子化学理论有一个全面的了解。如何熟练掌握理论计算软件并操练起来,在实战中发掘问题解决问题,才是更经济的选择。
参考文献
【1】 http://newton.ex.ac.uk/research/qsystems/people/coomer/dft_intro.html
【2】 https://www.zhihu.com/question/30510921