前言 概念密度泛函理论(Conceptual density functional theory,CDFT),是波函数分析的重要组成部分。专门用来预测和解释反应活性和反应位点等问题。概念密度泛函理论提出了非常多的指数,主要分为全局指数、局部指数以及实空间函数。全局指数顾名思义就是直接考察整个体系的指标;局部指数是考察每一个原子的指标;而实空间函数是一个三维的空间函数。通过密度泛函理论中的亲电指数、亲核指数可以定量的考察有机化学中提到的亲核反应、亲电反应的难易程度。本文将选取常见的有机化合物(如图所示),分别计算它们的全局亲核指数、全局亲电指数、局部亲核指数以及局部亲电指数,来考察它们发生亲核、亲电反应的规律。
以上提到的所有分子都是通过 Gaussian Linux 在 B3LYP/6-311G* 级别下优化的。本文主要参考了 Sob 老师《使用Multiwfn超级方便地计算出概念密度泛函理论中定义的各种量》 一文。
前期准备 首先将 A1、A2、A3、A4、B1、B2、B3 以及 B4 做优化后生成的 chk 文件转化为 fchk 文件,这里可以直接使用脚本转化。
1 2 3 4 5 # !/bin/bash for inf in *.chk do formchk ${inf} done
启动 Multiwfn,依次输入 A1、A2、A3、A4、B1、B2、B3 以及 B4 的 fchk 文件。
1 2 3 4 22 // 计算 CDFT 里定义的各种量1 // 产生波函数文件[Enter] // 这一步让你输入 gjf 文件里对应的计算单点任务的关键词。 [Enter] // 这一步让你输入计算 N、N+1 和 N-1 态用的电荷和自旋多重度。
Multiwfn 会在当前目录下生成 N.gjf、N+1.gjf 和 N-1.gjf,这些是用于产生 .wfn 文件的单点任务的 Gaussian 输入文件。把这些 gjf 文件都用 Linux 下的 Gaussian 执行后,就会产生 N.wfn、N+1.wfn 和 N-1.wfn 文件。如果你当前机子里已经装了 Gaussian,而且之前 Multiwfn 的 settings.ini 里的 gaupath 已经被你设为了实际的Gaussian 可执行文件路径,那么建议此时直接在 Multiwfn 窗口里输入 y,这样 Multiwfn 就会自动调用 Gaussian 计算这个三个 gjf 文件,并在当前目录下产生相应的三个 wfn 文件。
注:让 Multiwfn 顺利调用 Windows 版 Gaussian 需要做额外的设置,见 Multiwfn 手册 Appendix 1。
计算指数 现在当前目录下已经有了 N.wfn、N+1.wfn 和 N-1.wfn,可以开始算了。在当前模块里选择 2 Calculate various quantitative indices
,然后程序就会依次载入 wfn 文件,读取其中的能量信息和波函数信息,自动计算 Hirshfeld 电荷,最后给出各种指数。例如 A1-CDFT.txt 中的内容如下,local electrophilicity/nucleophilicity index
就是局部亲核、亲电指数。最下面的 Electrophilicity index
和 Nucleophilicity index
就是全局亲核、亲电指数了。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 Note: the E(HOMO) of TCE used for evaluating nucleophilicity index is the value evaluated at B3LYP/6-31G* level Hirshfeld charges, condensed Fukui functions and condensed dual descriptors Units used below are "e" (elementary charge) Atom q(N) q(N+1) q(N-1) f- f+ f0 CDD 1(C ) 0.1453 -0.1642 0.3092 0.1639 0.3095 0.2367 0.1456 2(O ) -0.2356 -0.5132 0.1582 0.3939 0.2775 0.3357 -0.1163 3(H ) 0.0310 -0.0906 0.1839 0.1529 0.1216 0.1372 -0.0312 4(C ) -0.0845 -0.1560 0.0107 0.0952 0.0715 0.0834 -0.0237 5(H ) 0.0467 -0.0053 0.1010 0.0543 0.0520 0.0532 -0.0023 6(H ) 0.0485 -0.0354 0.1185 0.0700 0.0839 0.0769 0.0139 7(H ) 0.0485 -0.0353 0.1185 0.0700 0.0839 0.0769 0.0139 Condensed local electrophilicity/nucleophilicity index (e*eV) Atom Electrophilicity Nucleophilicity 1(C ) 0.17956 0.35804 2(O ) 0.16101 0.86043 3(H ) 0.07056 0.33394 4(C ) 0.04149 0.20792 5(H ) 0.03018 0.11861 6(H ) 0.04868 0.15283 7(H ) 0.04866 0.15282 Condensed local softnesses (Hartree*e) and relative electrophilicity/nucleophilicity (dimensionless) Atom s- s+ s0 s+/s- s-/s+ 1(C ) 0.3590 0.6780 0.5185 1.8884 0.5295 2(O ) 0.8628 0.6080 0.7354 0.7046 1.4191 3(H ) 0.3349 0.2664 0.3007 0.7957 1.2568 4(C ) 0.2085 0.1567 0.1826 0.7515 1.3307 5(H ) 0.1189 0.1140 0.1164 0.9581 1.0437 6(H ) 0.1533 0.1838 0.1685 1.1993 0.8338 7(H ) 0.1532 0.1837 0.1685 1.1990 0.8341 E(N): -153.830019 Hartree E(N+1): -153.741290 Hartree E(N-1): -153.462261 Hartree E_HOMO(N): -0.254917 Hartree, -6.9366 eV E_HOMO(N+1): 0.197387 Hartree, 5.3712 eV E_HOMO(N-1): -0.637846 Hartree, -17.3567 eV Vertical IP: 0.367758 Hartree, 10.0072 eV Vertical EA: -0.088729 Hartree, -2.4144 eV Mulliken electronegativity: 0.139514 Hartree, 3.7964 eV Chemical potential: -0.139514 Hartree, -3.7964 eV Hardness (=fundamental gap): 0.456486 Hartree, 12.4216 eV Softness: 2.190646 Hartree^-1, 0.0805 eV^-1 Electrophilicity index: 0.021320 Hartree, 0.5801 eV Nucleophilicity index: 0.080281 Hartree, 2.1846 eV
批量执行 由于一次性计算这么多结构的 CDFT 非常麻烦,因此笔者开发了一款全自动批量使用 Multiwfn 做 CDFT 分析的脚本程序 EasyCDFT,有关 EasyCDFT 的更多信息请浏览主页:https://github.com/kimariyb/easy-cdft
EasyCDFT 有两种版本,一种是 Go 语言编译好的版本,这一版本只能在 Linux 系统中使用。另一种版本是 Python 脚本实现的版本,在 Windows 和 Linux 都可以使用。EasyCDFT 使用也很简单,直接看主页就可以了。