PSI4学习

密度泛函理论

       密度泛函理论和Hartree-Fock理论是通过SCF模块控制的,

SCF模块

       介绍,自洽场理论(SCF)是从头算量子化学的基石。这里SCF同时指常规的Hartree-Fock分子轨道理论也包括Kohn-Sham 密度泛函理论(KS-DFT)。PSI4包括的SCF代码,具有许多受欢迎的自旋专业化,处理Fock矩阵的方法。

     

molecule {
0 3
O
O 1 1.21
}

set {
basis cc-pvdz
guess sad #从原子密度叠加开始
reference uhf
scf_type direct #使用电子排斥积分(ERI)的直接算法, 迭代的第一部分为DF部分, 这一部分是从SAD猜测开始的,来自非幂等密度矩阵,然后再是直接算法。使用Pulay's DIIS算法加速SCF收敛
}

energy('scf')

理论:

广义的密度泛函理论(KS-DFT)因为高的准确性和计算成本之比 ,成为了现在计算化学的主流。

              纯的Kohn-Sham DFT是建立在Hohenberg-Kohn理论之上,其规定了:1. 能量是单一粒子电子密度的泛函。2. 存在一组没有相互作用的准粒子,其密度和真实电子密度相同,准粒子态被认为是封装了真实多体量子效应的有效单体电位的特征向量。前者的想法允许处理电子密度而不是更加复杂的波函数,后者允许通过隐式的单体Kohn-Sham轨道处理麻烦的动能项。

E_{KS}=D\tfrac{T}{\mu \nu }(T_{\mu \nu }+V_{\mu \nu })+\frac{1}{2}D\tfrac{T}{\mu \nu }D\tfrac{T}{\lambda \sigma }(\mu \nu|\lambda \sigma)+E_{XC}[\rho _{\alpha }, \rho _{\beta }],其中最主要的是E_{XC}[\rho_{\alpha }, \rho_{\beta }],包括潜在的非局部交换,相关项,剩余动能函数项(通常很小可以忽略)。因此,它被简单地称为交换相关函数。LSDA只取决于\rho _{\alpha }\rho _{\beta },局部自选密度近似,交换相关能量只和局部的密度信息相关(例如,密度值或者导数)。GGA,广义梯度近似,使用正态分布的密度梯度来建立不均匀的参数。GGA和LSDA计算成本相似,但GGA要准确得多。下一个是meta近似,其中包括密度得二阶导数,依赖于自选动能密度。

        由于局部Kohn-Sham势的指数衰减,导致其不能很好的概括远距离的交换和相关空穴的信息。在交换空穴方面,导致了多电子自相互作用误差(MSIE), 其在激发态计算中表现为杂散的低电平电荷转移态,延伸绝缘体中的最终金属击穿,较差的热化学,以及当整数粒子数交叉时化学势完全缺乏导数不连续性。在相关性方面,这主要表现在KS-DFT无法处理分散体相互作用。

        广义Kohn-Sham(GKS)为了克服局部KS-DFT的不足之处(尤其是MSIE误差),通过依赖轨道的贡献将远距离信息纳入泛函。注意,这些泛函通常被称为“隐式”密度泛函,因为轨道本身就是Kohn–Sham势的泛函。

        GKS的交换部分的最简单形式是全局混合模拟,其中将非相互作用准粒子的精确Hartree–Fock交换的一部分添加到泛函中,交换泛函的局部减少相应的量。请注意,术语“精确交换”是指Hartree–Fock是非相互作用准粒子的精确交换能,而不是真正的电子。因此,添加100%的精确交换在物理上是不合理的,并且往往会导致极其糟糕的结果。精确交换的分数定义为\alpha,通常由绝热或启发式论证来决定并且大约为25%。精确交换的添加借用了现有Hartree–Fock代码的一部分,但需要注意的是,Hartree–Fock交换的获得成本通常比库仑矩阵高得多。全局混合模拟已经变得非常流行,像普遍存在的B3LYP这样的泛函经常产生非常准确的结果。

        一种更先进的GKS泛函的技术是远程校正(LRC)模拟,近年来得到了广泛的应用。LRC认为,在交换空穴中,局部DFA在短距离内可能是精确的,并且不相互作用的准粒子的混合交换能对于交换空穴中长距离的真电子也是精确的。因此,LRC从短距离的DFA切换到长距离的混合交换,通常使用erf(wr_{12})作为配分函数。对于LRC泛函,距离分离参数w的选择,是自LRC功能成立以来,一直是大量活动的主题。一些作者主张通过对化学系统的测试集进行优化来确定静态范围分离参数。然而,一种更具物理动机且通常更准确的方法是“间隙拟合”或“最佳调整”或简单的“调整”。最流行的调整LRC方法是IP拟合,在LRC的模拟之中,其中w一直变化,直到Koopman's IP (与HOMO能量相反)和true IP (N-1的电子能量和N的电子能量的区别)相匹配。这些保证了交换势的渐进性。

        对于络合物,基于Lennard-Jones势的,色散校正的KS-DFT可以得到非常准确的结果。比如DFT-D2, DFT-D3。

PSI4输入:

molecule {
He
}

set basis sto-3g

energy('b3lyp')

#使用D2h的对称性,STO-3G的基组, 1.0E-6能量和密度的收敛标准, DF ERI算法, 对称对角化, DIIS加速收敛,
# a core Hamiltonian guass用于单原子

自选和对称化:

         Restricted Kohn–Sham (RKS)[默认的]:仅适用于闭壳单线态系统,但效率是其他的两倍,因为α和β密度被限制为相同。

        Unrestricted Kohn–Sham (UKS):适用于大多数开壳系统,并且相当容易收敛。α轨道和β轨道的空间部分彼此完全独立,这使得波函数具有相当大的灵活性。然而,这种灵活性是以自旋对称为代价的;所得波函数可能不是\hat{S}^{2}算符。然而,与UHF相比,UKS的自旋污染问题通常较小,因为非相互作用准粒子的自旋污染通常是对真实电子的自旋污染的严重高估。

功能选择:

        PSI4包括, LSDA, GGA, Meta, Hybrid, LRC, 和 -D 函数。对于混合泛函,精确交换的分数由DFT_ALPHA选项控制。对于LRC泛函,长程Hartree–Fock和短程DFA的分数由DFT_OMEGA选项控制。更改这些将覆盖所请求功能的默认行为。

        All Functionals

        GGA Functionals

        Meta Functionals

        Hybrid Functionals

        LRC Functionals

        Double-Hybrid Functionals

        -D Functionals

网格的选择:

        PSI4使用了standard Lebedev-Laikov球面象限以及许多径向象限和atomic partitioning schemes。PSI4中的默认网格是Lebedev-Treutler (75,302),具有原子量的Treutler partition。

        球形网格都是非常有效的Lebedev-Laikov类型。球面网格由DFT_SPHERICAL_POINTS选项控制,该选项可以采用以下值之一:

        根据SG1实现过程中开发的一组通用规则,球形网格是旋转的。目前,四面体、八面体和二十面体系统的规则并不完整,因此这些系统的网格方向可能存在一些模糊性。

        径向网格的类型由DFT_RADIAL_SCHEME选项控制,该选项目前可以是TREUTLER或BECKE,而径向点的数量由DFT_RADIAL_POINTS选项控制,该值可以是任何正整数(通常为50-100)。如文献所述,径向网格以每个原子的Bragg-Slater半径为“中心”。如果在具有阴离子或非常扩散基函数的系统中怀疑积分不准确,则DFT_BS_RADIUS_ALPHA选项可以从1.0增加到更大的值,以迫使径向网格在空间中跨越更大的范围。

        原子的weighting scheme由DFT_NUCLEAR_SCHEME选项控制,该选项可以TREUTLER、BECKE、STRATMANN、NAIVE或SBECKE中的一个。最后是Laqua最近推出的BECKE scheme的一个更平滑的变体,它应该在弱相互作用下表现得更好。

        正交网格的修剪由DFT_PRUNING_SCHEME选项控制。ROBUST和TREUTLER选项根据每个原子的Bragg-Slater半径将网格划分为球形区域,并对其应用不同的阶数。ROBUST scheme是TREUTLER方法的一种攻击性较小的变体,适用于基准水平的质量(对于修剪网格与未修剪网格,具有PBE/aug-cc-pVTZ的S22,MAD<0.002 kcal/mol)。我们对TREUTLER scheme的实施显示,对于相同的基准,误差为0.02 kcal/mol。两者还将H和He原子的网格顺序减少了1,并避免了重原子的任何修剪(Z>=36)关键字文档中提到的其他方案(例如P_SLATER)是实验性的,仅应被视为专家。

        一旦建立了分子正交网格,就将点划分为空间上彼此接近的点块。我们对该过程使用an octree algorithm,该算法在每个块的空间紧凑性之间产生良好的平衡(由于基函数的指数衰减,这有助于实现线性缩放),以及在每个块中保留大量的点(这通过允许合理大量的BLAS3/BLAS2功来形成每个块中的密度和电势来帮助保持FLOP速率上升)。对于每个块,由基函数的每个外壳的截止半径确定一组统一的有效基函数。该截止半径的大小(以及密度/电位评估的准确性)可以通过设置DFT_BASIS_TOLETRANCE(默认值为1E-12)来改变。我们仍在探索octree algorithm和the basis cutoffs的优化,但很可能通过放宽the basis cutoff tolerance来实现显著的速度增益,而精度的降低可以忽略不计。

        小密度值可能会引入一些泛函的数值不稳定性,从而导致SCF收敛问题,甚至数值失效(NaNs)。如果LibXC库的默认设置不足,则可以通过设置DFT_DENSITY_TOLERANCE来请求自定义值。对于臭名昭著的案例,1E-10的值是合理的。

完全详细的网格的示例如下:

molecule {
H
H 1 0.7
}

set {
basis cc-pvdz
scf_type df
dft_spherical_points 590      # Often needed
dft_radial_points 99          # Often needed
dft_radial_scheme treutler    # Rarely needed
dft_nuclear_scheme treutler   # Rarely needed
dft_density_tolerance 1.0E-10 # Rarely needed
dft_basis_tolerance 1.0E-11   # Can speed things up, but benchmark the error
dft_pruning_scheme robust     # Generally safe and will speed things up
}

energy('b3lyp')

ERI 算法

        库仑和混合交换的ERI算法与Hartree–Fock的算法相同。然而,对于LRC泛函,Kohn–Sham矩阵的长程交换贡献仅在DF和DIRECT算法中实现。强烈建议KS-DFT使用DF,因为密度拟合近似(在适当的-JKFIT auxiliary basis)产生的误差比任何已知函数的精度都小几个数量级。

        PSI4中SCF模块支持的关键代表性方法详见表SCF Capabilities。请注意, SCF algorithm and convergence criteria defaults by calculation type 1,这些SCF级别的方法默认为密度拟合参考;使用SCF_TYPE 来选择替代算法。SCF级别的方法没有替代实现。

IP Fitting

        在与the Bredas group的合作下,我们开发了一种基于改进的Regula-Falsi方法的LRC泛函IP Fitting的自动程序。要执行IP Fitting,只需在设置标准LRC UKS计ip_fitting() Python模块。一个有代表性的例子是:

memory 512 MB

molecule h2o {
0 1  # must be neutral
O
H 1 1.0
H 1 1.0 2 104.5
# IP fitting runs in C1 symmetry
}

set {
reference uks  # UKS, as we need to do neutral/cation
basis cc-pvdz
scf_type df
}

# Optional arguments are minimum omega, maximum omega, molecule object
omega = ip_fitting('wb97', 0.4, 2.0, molecule=h2o)

这通过密度拟合对wB97/cc-pVDZ的水进行IP fitting。许多中性和阳离子single-point computations是在多种w值条件下运行的。尽管由于the DF tensors的重复使用,并且从前面的w的中性/阳离子轨道开始,后面的迭代要快得多。该过程还可以通过对边界w提供一个更加严密的猜测来得到帮助。一个小测试w为1.700,因此为0.4和2.0的边界适合较大的系统,特别是共轭系统,通常具有优化的w在0.1和0.5之间。

Fractional Particle Curves

电子能量和HOMO能量在fractional numbers of electrons的行为对于阐明各种功能技术的MSIE行为非常有用。PSI4具有高效的fractional-particleDFT代码,写入UKS自旋特化。由于DIIS的结合和在一系列fractional occupations重复使用积分/猜测轨道,该代码能够在粒子数N的大范围内为具有多达60个原子的系统执行fractional occupation curves.

frac_traverse() 用于研究中性点上方和下方一个电子内的分数占据行为.

molecule h2o {
0 1  # must be neutral
O
H 1 1.0
H 1 1.0 2 104.5
# FRAC jobs will be be run in C1 symmetry
}

set {
reference uks  # UKS, as we need to do all kinds of weird stuff
basis aug-cc-pvdz  # Augmented functions are very important on the anion side
scf_type df
}

# Argument is functional.
# Many optional arguments are available, see the python file
frac_traverse('wb97', molecule=h2o)

frac_nuke()  

# Argument is the functional.
# A useful optional argument is nmax, the total number of electrons to
# strip out of the molecule, in this case, 2.
# Many optional arguments are available, see the python file
frac.frac_nuke('wb97', molecule=h2o, nmax = 2)

建议:

         尽可能将DF 用于ERI算法

         SCF Convergence, 默认值都在里面,可以自行调节。

        读文献,最后确定哪一种方法适用。大多数使用没有 -D 的B3LYP于非共价相互作用。

memory 1 GB  # As much as you've got, the DF algorithm can use

molecule {
H
H 1 0.7
}

set {
basis cc-pvdz
scf_type df
guess sad
}

energy('b3lyp')

        

         

        

        

        

        

        

        

    

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小朱朱荣咿呀咿呀

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值