波函数分析、可视化与动力学
数据库第 14 类收录 22 项(编号 143–157、221–223、234–236、253),都是“算完之后”的工具:从波函数或电子密度里读出电荷、化学键和弱相互作用;把轨道、密度和轨迹画出来;让原子核在多个电子态上运动,模拟光激发之后发生的事;以及把各家程序的输出和轨迹统一读进 Python。第 10 类的 Multiwfn、Avogadro 属于同一个工具箱,这里会顺带提到。贯穿例子是一个看似简单的问题:水分子里的氧原子带多少电荷?
原子电荷不是可观测量。量子力学给出的是整个分子的电子密度,把它切给各个原子有许多种切法,每种切法给出不同的数,也都有各自的道理。偶极矩、电子密度本身是可观测量,可以和实验比;原子电荷只能在同一种切法、同一个基组里互相比较。
一、贯穿例子:水里的氧带多少电荷
同一个水分子(实验几何:O–H 0.9572 Å,键角 104.52°),同一个泛函 B3LYP,只换基组,看三种电荷和偶极矩怎么变:
| 基组 | 基函数数 | Mulliken | Löwdin | IAO | 偶极矩(D) |
|---|---|---|---|---|---|
| STO-3G | 7 | −0.37 | −0.25 | −0.47 | 1.68 |
| def2-SVP | 24 | −0.29 | −0.14 | −0.68 | 1.98 |
| def2-TZVP | 43 | −0.63 | −0.30 | −0.72 | 2.07 |
| aug-cc-pVTZ | 92 | −0.35 | +1.04 | −0.739 | 1.853 |
| aug-cc-pVQZ | 172 | −0.58 | +1.59 | −0.738 | 1.853 |
本站用 PySCF 2.15 计算,复现脚本在本站仓库 tools/handbook-calcs.py。实验偶极矩(Stark 效应,振动基态)1.855 D(Clough 等 1973)。
三件事一眼可见。Mulliken 电荷随基组来回跳,没有收敛的迹象:它把两个原子之间的重叠电子对半分,基组越大、函数越弥散,“哪个函数属于哪个原子”就越没有意义。Löwdin 电荷在加入弥散函数之后变成了 正 一点几,氧原子“带正电”显然不是化学事实,而是对称正交化把弥散函数的电子分摊错了地方。IAO 电荷(内禀原子轨道,Knizia 2013)从三重 ζ 基组起就稳定在 −0.72 到 −0.74,因为它先把分子轨道投影到一个固定的极小基上再数电子,几乎不受基组大小影响。偶极矩在加了弥散函数的大基组下收敛到 1.853 D,和实验的 1.85 D 很接近,这才是可以拿去和实验比的量(B3LYP 本身也有误差,这里吻合得这么好有几分运气)。
二、电荷与成键分析:几种切法
| 方法 | 怎么切 | 基组依赖 | 常用工具 |
|---|---|---|---|
| Mulliken(1955) | 按基函数归属,重叠部分对半分 | 很强,只适合同一基组内比较趋势 | 几乎所有量化程序 |
| Löwdin(1950) | 先对称正交化基函数再数 | 强,有弥散函数时会失真 | 多数量化程序 |
| Hirshfeld(1977) | 按孤立原子密度的比例分配分子密度 | 弱;电荷数值偏小 | Multiwfn、critic2、多数程序 |
| QTAIM / Bader(1991) | 沿电子密度梯度的零通量面把空间切成原子盆 | 弱;只需要电子密度,固体也能用 | Bader 程序、critic2、Multiwfn |
| NPA / NBO(1985) | 构造自然原子轨道,再找最像 Lewis 结构的成键轨道 | 弱 | NBO 7,许多程序内置旧版 NBO |
| IAO / IBO(2013) | 把占据轨道投影到极小基上的内禀原子轨道 | 很弱 | IboView、PySCF |
实空间方法:critic2、Bader 与 ChemTools
Bader 的分子中的原子理论(QTAIM)只看电子密度:密度的梯度场把空间分成一个个“原子盆”,盆的边界上密度梯度的通量为零;两个原子之间的键临界点上的密度和拉普拉斯量,常用来区分共价键、离子键和弱相互作用。Henkelman 组的 Bader 程序(2006 年 Comput. Mater. Sci.)在格点上做这种划分,速度快,直接读 VASP 的 CHGCAR 和 cube 文件,是固体里算 Bader 电荷的常用工具;用 PAW 时要把芯电子密度加回去再划分,否则结果偏差大。critic2(2014 年 CPC)同样做 QTAIM,但分子和周期体系都能读,还能画 NCI 图、比较晶体结构。NCI 方法(Johnson 等 2010)用约化密度梯度在实空间里找出氢键、范德华作用和空间位阻,显示成彩色等值面。电子定域函数 ELF(Becke 与 Edgecombe 1990)衡量在某一点找到同自旋电子对的难易,常用来显示孤对电子和成键区域。ChemTools 是 Python 库,算 ELF、NCI 和概念密度泛函的描述符:Fukui 函数(Parr 与 Yang 1984)指出分子最容易接受或给出电子的位置,配合电负性、硬度等量(Geerlings 等 2003 综述)讨论反应性。
轨道方法:NBO 7、IboView 与 LOBSTER
NBO 把波函数改写成化学家熟悉的语言:一中心的孤对、二中心的键、空的反键,再用二阶微扰估计“给体轨道到受体反键”的超共轭稳定化能。NBO 7(2019 年 JCC)是商业程序;Gaussian 等程序里内置的是较旧的 NBO 3.1,功能少一些。IboView 计算并显示内禀成键轨道(IBO),它们由 IAO 定域化而来,好处是能沿着反应路径追踪“哪一对电子从哪里流到哪里”,用弯箭头描述机理有了量子化学的依据。固体用的是平面波,没有原子轨道可以分析,LOBSTER(2016、2020 年 JCC)把 VASP、Quantum ESPRESSO、ABINIT 的结果投影到局域基组上,算晶体轨道哈密顿布居(COHP,Dronskowski 与 Blöchl 1993):按能量分辨地看一对原子之间是成键还是反键,费米能级附近的反键态往往对应结构的不稳定性。
三、可视化
| 编号 | 工具 | 擅长 | 获取与许可 |
|---|---|---|---|
| 153 | Molden www.theochem.ru.nl/molden | 量化结果的经典查看器:轨道、密度、振动;Molden 格式已成为许多程序互通轨道的格式 | 学术免费 |
| 151 | IQmol www.iqmol.org | 建模和查看轨道、振动,也是 Q-Chem 的图形前端 | 免费,GPL-3.0 |
| 149 | Jmol jmol.sourceforge.net | 分子与晶体,轨道和表面;有网页版 JSmol | 免费,LGPL-2.1 |
| 150 | VMD www.ks.uiuc.edu/Research/vmd | 分子动力学轨迹和体数据,Tcl / Python 脚本 | 注册后免费(自有许可) |
| 152 | ChimeraX www.cgl.ucsf.edu/chimerax | 大分子结构、冷冻电镜密度,出版级图片 | 非商业用途免费 |
| 221 | 3Dmol.js 3dmol.csb.pitt.edu | 网页里的 WebGL 查看器,读 PDB、SDF、XYZ、cube;本站的 3D 查看器用它 | 免费,BSD-3-Clause |
| 222 | Mol* molstar.org | RCSB PDB、PDBe 官网用的大分子查看器,体积数据和大型结构 | 免费,MIT |
| 223 | Chemiscope chemiscope.org | 结构与性质的联动浏览:散点图上点一个点看对应结构 | 免费,BSD-3-Clause |
画轨道和密度,最通用的中间格式是 cube 文件(格点上的标量场),几乎所有量化程序都能写、所有查看器都能读;Molden 格式存的是基组和轨道系数,查看器自己在格点上计算,文件更小。画等值面时要说明取的等值是多少,同一个轨道取 0.02 和 0.05 看起来可以很不一样。Chemiscope 解决的是另一类问题:手上有几千个结构和它们的能量或描述符时,用散点图找出离群点,再点开看是哪个结构。
四、非绝热与量子动力学
Born–Oppenheimer 近似假设原子核只在一个电子态的势能面上运动。光激发之后,分子常常经过两个势能面靠得很近甚至相交的地方(锥形交叉),电子态之间的跃迁在飞秒尺度上发生,这时必须让核同时“感受”几个电子态。
| 编号 | 程序 | 方法 | 适合 | 获取与许可 |
|---|---|---|---|---|
| 154 | Newton-X newtonx.org | 面跳跃(核走经典轨迹),核系综法算吸收和发射谱 | 全维的有机分子光化学,可对接多种量化程序 | 免费,GPL-3.0 或以后版本 |
| 155 | SHARC sharc-md.org | 面跳跃,任意耦合(非绝热、自旋–轨道、激光场) | 系间窜越、三重态参与的光物理 | 免费,GPL-3.0 |
| 156 | MCTDH www.pci.uni-heidelberg.de/tc/usr/mctdh | 多组态含时 Hartree,核也做完整的量子力学处理 | 少数几十个模式的模型哈密顿量,振动光谱、隧穿 | 学术免费,向海德堡组申请 |
| 157 | Quantics www.chem.ucl.ac.uk/quantics | MCTDH、高斯波包 G-MCTDH 和直接动力学 | 想把量子核动力学和在线量化计算结合时 | 学术免费 |
| 253 | VOTCA www.votca.org | 粗粒化(CSG:迭代 Boltzmann 反演、力匹配等)和激发态电子结构与电荷输运(XTP:GW-BSE、QM/MM、动力学蒙特卡洛) | 从原子模拟到介观尺度:有机半导体薄膜里的电荷和激子怎么走 | 免费,Apache-2.0 |
VOTCA 处理的是另一种“多尺度”:一部分(CSG)把全原子的分子动力学系统地粗化成珠子模型,让模拟能到更大的尺寸和更长的时间;另一部分(XTP)在分子动力学得到的薄膜形貌上,用 GW-BSE 和 QM/MM 算每个分子的激发能和分子之间的电荷转移速率,再用动力学蒙特卡洛模拟电荷或激子在薄膜里的运动。前者见 Rühle 等 2009 年的 JCTC,后者见 Tirimbò 等 2020 年的 J. Chem. Phys.。
面跳跃(Tully 1990 年提出的“最少跳跃”算法)把核当作经典粒子,电子态的布居按含时薛定谔方程演化,每一步按概率决定是否跳到另一个面,跳的时候调整速度让能量守恒。它便宜,能做全维分子,但跳跃后的“退相干”需要额外修正,结果要用很多条轨迹取平均,通常几十到几百条。Newton-X(2022 年 JCTC 的平台综述)和 SHARC(2018 年 WIREs)都用这种方法,并且都把电子结构交给外部程序(如 OpenMolcas、ORCA、TURBOMOLE、Gaussian 或机器学习势)。MCTDH(Meyer、Manthe、Cederbaum 1990;Beck 等 2000 年 Phys. Rep. 综述)则把核波函数写成低维函数乘积的组合,让每个因子随时间变化,计算量随自由度增长得比直接格点慢得多,可以做几十个模式的完整量子动力学;代价是需要事先拟合好的势能面,通常是振动耦合模型。Quantics(2020 年 CPC)在 MCTDH 之外加入高斯波包方法,允许边传播边算电子结构。
五、读输出与轨迹:Python 库
| 编号 | 库 | 做什么 | 许可 |
|---|---|---|---|
| 234 | cclib | 读 Gaussian、ORCA、Psi4、Q-Chem 等十几种程序的输出,得到统一的能量、几何、轨道、频率 | BSD-3-Clause |
| 235 | MDAnalysis | 读几十种分子动力学轨迹格式,算 RMSD、氢键、径向分布函数 | LGPL-3.0 或以后版本 |
| 236 | MDTraj | 快速读写轨迹,RMSD、DSSP 二级结构、接触图,直接给 NumPy 数组 | LGPL-2.1 |
cclib(2008 年 JCC)的价值在于“换程序不换脚本”:同一段分析代码可以处理来自不同程序的输出,适合批量整理计算结果;本站开源代码台的输出解读借鉴了它的思路。MDAnalysis(2011 年 JCC)和 MDTraj(2015 年 Biophys. J.)都能读主流分子动力学程序的轨迹,前者功能更全,后者更轻更快,两者常一起用。
六、怎么选:一张速查表
| 你的问题 | 先用 | 注意 |
|---|---|---|
| 原子电荷的趋势(同一系列分子) | IAO、Hirshfeld 或 NPA | 别用 Mulliken 比较不同基组的结果 |
| 固体里的电荷转移 | Bader 程序、critic2 | PAW 计算要把芯电荷加回去;格点要够密 |
| 键的性质、超共轭 | NBO 7;或 IboView 看 IBO | NBO 的二阶稳定化能是解释工具,不是可测量 |
| 反应中电子怎么流动 | IboView 沿反应路径追踪 IBO | 沿路径各点要用同一种定域化 |
| 氢键、色散、空间位阻 | NCI 图(critic2、Multiwfn、ChemTools) | 等值面的阈值要写明 |
| 固体中的成键 / 反键 | LOBSTER(COHP) | 检查投影的“电荷溢出”是否够小 |
| 看轨道和振动 | Molden、IQmol、Jmol、Avogadro | 写明等值面取值 |
| 分子动力学轨迹 | VMD 看图,MDAnalysis / MDTraj 算数 | 先去掉周期性边界造成的“断裂” |
| 网页里嵌一个分子 | 3Dmol.js,大分子用 Mol* | 注意文件大小和格式 |
| 光激发后的动力学(全维) | Newton-X、SHARC | 轨迹数要够,电子结构方法要能描述交叉区域 |
| 小体系的精确量子核动力学 | MCTDH、Quantics | 先要有可靠的模型势能面 |
| 批量读计算输出 | cclib | 核对它读出的字段和程序版本 |
分析工具最容易出问题的地方不是算错,而是“把解释当成测量”。报告原子电荷时写明方法和基组;比较两个分子时只在同一种方法、同一个基组下比;需要和实验对照时,优先选偶极矩、电子密度、光谱这类真正可观测的量。非绝热动力学也一样:几十条面跳跃轨迹给出的量子产率有统计误差,文中要报告轨迹数和误差估计。
参考文献
- R. S. Mulliken,Electronic Population Analysis on LCAO–MO Molecular Wave Functions. I,J. Chem. Phys. 23, 1833 (1955),doi:10.1063/1.1740588;P.-O. Löwdin,J. Chem. Phys. 18, 365 (1950),doi:10.1063/1.1747632
- F. L. Hirshfeld,Bonded-atom fragments for describing molecular charge densities,Theor. Chim. Acta 44, 129 (1977),doi:10.1007/BF00549096;R. F. W. Bader,A quantum theory of molecular structure and its applications,Chem. Rev. 91, 893 (1991),doi:10.1021/cr00005a013
- A. E. Reed, R. B. Weinstock, F. Weinhold,Natural population analysis,J. Chem. Phys. 83, 735 (1985),doi:10.1063/1.449486;E. D. Glendening, C. R. Landis, F. Weinhold,NBO 7.0,J. Comput. Chem. 40, 2234 (2019),doi:10.1002/jcc.25873
- G. Knizia,Intrinsic Atomic Orbitals: An Unbiased Bridge between Quantum Theory and Chemical Concepts,J. Chem. Theory Comput. 9, 4834 (2013),doi:10.1021/ct400687b
- S. A. Clough 等,Dipole moment of water from Stark measurements of H2O, HDO, and D2O,J. Chem. Phys. 59, 2254 (1973),doi:10.1063/1.1680328
- G. Henkelman, A. Arnaldsson, H. Jónsson,A fast and robust algorithm for Bader decomposition of charge density,Comput. Mater. Sci. 36, 354 (2006),doi:10.1016/j.commatsci.2005.04.010;A. Otero-de-la-Roza, E. R. Johnson, V. Luaña,Critic2,Comput. Phys. Commun. 185, 1007 (2014),doi:10.1016/j.cpc.2013.10.026
- E. R. Johnson 等,Revealing Noncovalent Interactions,J. Am. Chem. Soc. 132, 6498 (2010),doi:10.1021/ja100936w;A. D. Becke, K. E. Edgecombe,A simple measure of electron localization in atomic and molecular systems,J. Chem. Phys. 92, 5397 (1990),doi:10.1063/1.458517
- R. G. Parr, W. Yang,Density functional approach to the frontier-electron theory of chemical reactivity,J. Am. Chem. Soc. 106, 4049 (1984),doi:10.1021/ja00326a036;P. Geerlings, F. De Proft, W. Langenaeker,Conceptual Density Functional Theory,Chem. Rev. 103, 1793 (2003),doi:10.1021/cr990029p
- R. Dronskowski, P. E. Blöchl,Crystal orbital Hamilton populations (COHP),J. Phys. Chem. 97, 8617 (1993),doi:10.1021/j100135a014;S. Maintz 等,LOBSTER,J. Comput. Chem. 37, 1030 (2016),doi:10.1002/jcc.24300;R. Nelson 等,J. Comput. Chem. 41, 1931 (2020),doi:10.1002/jcc.26353
- T. Lu, F. Chen,Multiwfn: A multifunctional wavefunction analyzer,J. Comput. Chem. 33, 580 (2012),doi:10.1002/jcc.22885;T. Lu,J. Chem. Phys. 161 (2024),doi:10.1063/5.0216272
- G. Schaftenaar, J. H. Noordik,Molden,J. Comput.-Aided Mol. Des. 14, 123 (2000),doi:10.1023/A:1008193805436;W. Humphrey, A. Dalke, K. Schulten,VMD: Visual molecular dynamics,J. Mol. Graph. 14, 33 (1996),doi:10.1016/0263-7855(96)00018-5;E. C. Meng 等,UCSF ChimeraX,Protein Sci. 32, e4792 (2023),doi:10.1002/pro.4792
- N. Rego, D. Koes,3Dmol.js,Bioinformatics 31, 1322 (2015),doi:10.1093/bioinformatics/btu829;D. Sehnal 等,Mol* Viewer,Nucleic Acids Res. 49, W431 (2021),doi:10.1093/nar/gkab314;G. Fraux, R. K. Cersonsky, M. Ceriotti,Chemiscope,J. Open Source Softw. 5, 2117 (2020),doi:10.21105/joss.02117
- J. C. Tully,Molecular dynamics with electronic transitions,J. Chem. Phys. 93, 1061 (1990),doi:10.1063/1.459170;M. Barbatti 等,Newton-X Platform,J. Chem. Theory Comput. 18, 6851 (2022),doi:10.1021/acs.jctc.2c00804;S. Mai, P. Marquetand, L. González,Nonadiabatic dynamics: The SHARC approach,WIREs Comput. Mol. Sci. 8, e1370 (2018),doi:10.1002/wcms.1370
- H.-D. Meyer, U. Manthe, L. S. Cederbaum,The multi-configurational time-dependent Hartree approach,Chem. Phys. Lett. 165, 73 (1990),doi:10.1016/0009-2614(90)87014-I;M. H. Beck 等,The MCTDH method,Phys. Rep. 324, 1 (2000),doi:10.1016/S0370-1573(99)00047-2;G. A. Worth,Quantics,Comput. Phys. Commun. 248, 107040 (2020),doi:10.1016/j.cpc.2019.107040
- N. M. O’Boyle, A. L. Tenderholt, K. M. Langner,cclib,J. Comput. Chem. 29, 839 (2008),doi:10.1002/jcc.20823;N. Michaud-Agrawal 等,MDAnalysis,J. Comput. Chem. 32, 2319 (2011),doi:10.1002/jcc.21787;R. T. McGibbon 等,MDTraj,Biophys. J. 109, 1528 (2015),doi:10.1016/j.bpj.2015.08.015
- V. Rühle 等,Versatile Object-Oriented Toolkit for Coarse-Graining Applications,J. Chem. Theory Comput. 5, 3211 (2009),doi:10.1021/ct900369w;G. Tirimbò 等,Excited-state electronic structure of molecules using many-body Green’s functions: Quasiparticles and electron–hole excitations with VOTCA-XTP,J. Chem. Phys. 152, 114103 (2020),doi:10.1063/1.5144277
文献在 OpenAlex 逐条核对过;开源项目的许可证按官方仓库里的许可文件核对,其他按官网说明,2026-11-10;VOTCA 2026-11-12 补充。示例数值由 PySCF 2.15.0 计算,复现脚本在本站仓库 tools/handbook-calcs.py。