我正在从头开始在 STO-3G 基础集中实施 Hartree-Fock 计算,以执行 Born-Oppenheimer 分子动力学。我有一个受限的 Hartree-Fock 程序,可以很好地再现 Ref 的总能量。[1] 和具有预先优化的分子几何形状的 Gaussian09。
现在,在 Born-Oppenhaimer MD 模拟期间,我的几何形状可能与平衡相距甚远。我看到我的 SCF 循环不会收敛于拉伸几何:键长为 2.132 bohr 的分子收敛,而键长为 3.132 bohr 的分子达到允许的最大迭代次数(500)。
在参考文献的表 10.4 中。[2] 很明显,DIIS(迭代子空间的直接反转)方法的实现加速了 SCF 收敛。除了这种加速之外,似乎用这种方法可以很容易地达到拉伸分子的收敛。出于这个原因,我在 Ref 之后实现了 DIIS 算法。[3]。
我相信我非常正确地实现了 DIIS 方法,因为我能够为预先优化的分子几何形状获得 SCF 收敛的加速。在下表中,您可以找到针对不同分子的简单 SCF 和 SCF-DIIS 步骤的数量:
Molecule SCF DIIS
H2O 16 9
CO 53 19
HeH+ 8 7
CH4 11 8
FH 10 7
O2 41 18
N2 110 22
在我测试的每个分子中,我都得到了加速,这在需要大量正常 SCF 循环的情况下非常令人印象深刻。这是一个很好的结果,但不幸的是,拉伸分子的收敛性并没有得到改善。通过将预优化结构的距离(以 bohr 为单位)加倍,DIIS 算法(以及正常的 SCF)无法收敛。
在 Ref 的原始 DIIS 算法中添加了一些步骤。[3] 我不考虑?如果这些计算收敛于 Gaussian09,我如何使拉伸分子的 SCF 循环收敛?
编辑
Gaussian09 像我的程序对 option 一样刹车SCF=NoDIIS
。使用该选项SCF=DIIS
,即使对于非常扭曲的分子,SCF 也会收敛。
[1] A. Szabo 和 N. Ostlund,现代量子化学,多佛,1996 年。
[2] T. Helgaker、P. Jørgensen 和 J. Olsen,分子电子结构理论,威利,2000 年。
[3] P. Pulay,改进的 SCF 收敛加速,计算化学杂志,1982 年。