VTST谐振动修正与速率曲线
从真实NH3稳定态和过渡态内部模式,运行dymeffbar和dymrate,比较电子势垒、零点能和谐振动速率。
阅读本篇目录
电子能垒相同,加入零点能和振动配分函数后,近似速率曲线会发生变化。本篇使用鸢算科技集群实际完成的NH₃稳定态与翻转鞍点数据,学习原生VTST后处理;它是固定分子框架的内部振动模型,不包含完整气相转动、平动标准态与再穿越。
1. 下载与数据来源#
下载完整输入、原生输出、CSV与绘图脚本,保存为example.zip:
python3 -m zipfile -e example.zip .
cd vtst-harmonic-rates-spectra
module load ase/3.29.0
bash read.sh
bash plot.sh
这一步读取本包保存的数据,在analysis-read/生成结果表、在figures/生成图片。新运行后处理时使用bash run.sh,输出写入新建的work-new/;它不运行VASP,也不提交新作业。
原DFT条件和整体运动投影见VTST振动与前因子。稳定构型保留6个内部实模,鞍点有1个内部虚模、5个内部实模;电子能垒为0.20550705 eV。
附件中的minimum-eigs.dat与saddle-eigs.dat是已按VTST单位转换的质量缩放本征值,单位对应eV/(Ų·amu)。不要把VASP XML中带THz²标记的数值原样当成此输入,也不要把cm⁻¹频率直接交给要求本征值平方的命令。
2. 运行有效势垒工具#
module load vtstscripts/1040
mkdir effective-copy
cp inputs/minimum-eigs.dat inputs/saddle-eigs.dat effective-copy/
cd effective-copy
dymeffbar.pl 300 900 0.20550705 minimum-eigs.dat saddle-eigs.dat
head eff_ea.dat
温度范围是300–900 K。原生程序生成100个点,等间隔的是1/T,不是T。输出依次是T、1000/T、电子势垒、零点能修正势垒、振动配分函数对应的有效势垒。
本例按该脚本常数计算的零点能差约−0.03471794 eV,零点能修正后约0.17078911 eV。它和只取电子能量差是两种不同层次的近似。
3. 得到速率与隧穿近似#
继续在分析副本中:
dymrate.pl 300 900 0.20550705 minimum-eigs.dat saddle-eigs.dat
head rate.dat
head eff_ea.dat
该工具会重新写eff_ea.dat,并生成rate.dat。速率表前两列为T与1000/T,其后四列是经典、零点能修正、振动配分函数修正及抛物势垒隧穿近似,单位s⁻¹。
鞍点负本征值必须放在首行,这个旧程序的隧穿部分直接使用第一项作为不稳定模式。文件中应只有一个与目标反应对应的内部虚模。

4. 怎么解读这些数字#
本例Vineyard前因子约2.85951×10¹³ s⁻¹。在300 K,四个速率约为:
| 近似 | 速率 / s⁻¹ |
|---|---|
| 经典势垒与振动前因子 | 1.00913×10¹⁰ |
| 仅加零点能差 | 3.86526×10¹⁰ |
| 振动配分函数 | 8.38649×10⁹ |
| 再加抛物势垒隧穿近似 | 1.66496×10¹⁰ |
这些曲线说明同一组输入如何传递到各类近似,不是NH₃实验翻转速率的完整预测。不同脚本采用的历史常数会使末位与现代常数计算略有差别。
5. 温度与方法范围#
该虚频对应的抛物势垒交叉温度约180.19 K。本篇使用其上的300–900 K。把同一旧程序直接用于100–150 K时,隧穿列会出现Inf,不能把它当成非常大的有效物理速率,也不能用这条公式继续外推。
自己的体系应先确认稳定态无内部虚模、鞍点只有一个目标内部虚模,再选择合适的温度、标准态与动力学方法。
cd ..
head analysis-read/VTST-NH3-harmonic-effective-barriers-rates.csv
bash plot.sh