Gaussian 半经验方法与受力实操
水分子AM1至PM7等实际输入与数据,区分模型生成热、价电子SCF能量和解析受力。
阅读本篇目录
本篇使用鸢算科技集群实际运行的 Gaussian 16 C.01 AVX CPU 结果。程序为厂商预编译版本,按用户独立初始化;每份参考输入1线程、1GB,不作为CPU节点性能基准。
下载29份完整输入、实算数值与6张图的绘图资料,在新目录操作:
unzip gaussian-keyword-methods-practical*.zip -d gaussian-example
cd gaussian-example
bash run.sh
默认从随附实算数值生成 analysis/energies.csv、analysis/selected-results.json 和 figures/,不调用Gaussian;使用已有ASE Python环境里的NumPy和Matplotlib。其他电脑可用 PYTHON=python3 bash run.sh 指定自己的环境。
重算前用 yskit gaussian-init 初始化自己的授权程序,按Gaussian提交示例申请CPU资源。在已分配的资源中执行 bash run.sh compute 顺序重算全部29例;单独一例用 bash compute.sh 案例名,已有完整work目录用 bash run.sh analyze 重新提取。脚本不自行申请资源,也不覆盖同名work目录。个人检查点和完整波函数只保留在自己的计算目录。
1. 从PM6水分子受力开始#
半经验方法有自己的模型参数和元素覆盖范围;通常直接写方法名,不再附加/6-31G(d)。先用小分子确认输入、价电子和结果定义,再考虑大体系。
bash compute.sh water-pm6
%nprocshared=1
%mem=1GB
%chk=result.chk
#p PM6 Force SCF=Tight NoSymm
Small actual Gaussian keyword-family example
0 1
O 0.000000000000 0.000000000000 0.000000000000
H 0.000000000000 0.757000000000 0.586000000000
H 0.000000000000 -0.757000000000 0.586000000000
Force请求当前位置的受力,不会优化几何。这里水坐标固定,所有模型都用同一几何,便于比较输入与输出的关系;这些数据不是各方法各自优化后的水分子生成热。
2. 九种热化学半经验模型#
| 方法 | 对应案例 | 模型能量 / Hartree | 换算模型生成热 / kcal/mol |
|---|---|---|---|
| AM1 | water-am1 |
-0.094332796033 | -59.1947 |
| PM3 | water-pm3 |
-0.084718828881 | -53.1619 |
| PM3MM | water-pm3mm |
-0.084718828881 | -53.1619 |
| PM6 | water-pm6 |
-0.086248368524 | -54.1217 |
| PM7 | water-pm7 |
-0.091966252267 | -57.7097 |
| PM7MOPAC | water-pm7mopac |
-0.091966252267 | -57.7097 |
| PDDG | water-pddg |
-0.084126213067 | -52.7900 |
| MNDO | water-mndo |
-0.096618020364 | -60.6287 |
| MINDO3 | water-mindo3 |
-0.085276884278 | -53.5121 |
这些热化学参数模型的程序能量采用模型生成热的Hartree表示,换算用1 Hartree ≈ 627.509474 kcal/mol;不是从头算电子总能量,也不是298K的Gibbs自由能。因此不要拿表中小数与RHF水分子的−76 Hartree直接相减。

本例PM3与PM3MM相同、PM7与PM7MOPAC相同,只说明这份固定水几何的结果;不能推广成这些选项对所有键型和分子都等价。
cat inputs/water-pm7/input.gjf
bash compute.sh water-pm7
grep 'SCF Done' work/water-pm7/output.log
MINDO3走另一种输出形式,最终能量行是Energy= ... NIter= ...,没有SCF Done并不等于它没算完;仍先看最终Normal termination。配套脚本已按不同输出读取。
3. CNDO、INDO和LSDA另看各自能量定义#
| 案例 | FCHK Total Energy / Hartree |
|---|---|
water-cndo |
-19.868121049503 |
water-indo |
-19.013678283174 |
water-lsda |
-76.039757251191 |
CNDO/INDO这里是价电子SCF模型能量,不放入上表生成热图;LSDA例子用SVWN/6-31G(d),属于另一套全电子DFT计算。PM6等价电子方法的有效O芯电荷为6,加2个H为8个显式电子;全电子水则有10个。不能只按原子序数和盲算8/10就断言体系丢电子。
cat inputs/water-cndo/input.gjf
cat inputs/water-lsda/input.gjf
4. 用有限差分自己核对受力#
资料包除原水几何外,另准备第二个原子H的z坐标±0.001Å两份PM6输入。
bash compute.sh water-pm6-fd-minus
bash compute.sh water-pm6-fd-plus
中心差分Fz ≈ -(Eplus-Eminus)/(2Δz);若与Gaussian的Hartree/Bohr受力比较,要把Δz从Å除以0.529177210903换成Bohr。这里原生解析受力为 −0.002877592920 Hartree/Bohr,差分为 −0.002877681402 Hartree/Bohr,绝对差约 8.85×10⁻⁸ Hartree/Bohr。

选择参数模型前核对元素、价态和目标性质覆盖;快速方法不自动等于可靠的反应能或金属配位化学预测。正式优化、频率和后续热化学按所选方法实际支持的任务准备,不给所有模型套同一万能route。