Gaussian ADMP动力学与能量实操
完整运行密度矩阵传播与FullSCF对照,分清原子核动能、虚拟电子动能及扩展总能量。
阅读本篇目录
下载21份完整输入、实际轨迹、CSV与6张图的绘图脚本。在新目录只放本次下载的一个ZIP,然后:
unzip gaussian-dynamics-pbc-practical*.zip -d gaussian-dynamics
cd gaussian-dynamics
bash run.sh
文件名末尾可带下载版本和哈希,星号同时兼容这类文件名。默认入口使用随附实际数值生成 analysis/ 与 figures/,不启动量子化学计算。Python环境需要NumPy、Matplotlib、ASE;集群默认使用ASE 3.29.0的环境,其他电脑可设置 PYTHON=python3 bash run.sh。
重新计算前,先完成个人有权使用的Gaussian环境初始化:
yskit gaussian-init
按Gaussian输入与CPU提交申请CPU资源,加载个人环境后检查入口。下面的计算命令均应在已分配的CPU资源内执行:
command -v g16
command -v formchk
本例使用个人Gaussian16 C.01 AVX厂商预编译CPU程序,每例1核心、1GB,没有公共Gaussian module或自行编译的MPI版本。bash run.sh compute 会顺序重算全部21例;单例可用 bash compute.sh 案例名。它不会替你申请队列资源,已有同名work目录时会拒绝覆盖。
1. ADMP传播什么#
ADMP在原子运动之外传播电子密度矩阵,属于扩展拉格朗日动力学。本例仍用同一个HF/STO-3G水分子、相同初始速度和1fs时长,以便与BOMD比较。小体系基础示例不代表ADMP在所有问题上都更快或更准确。
完整输入:
%nprocshared=1
%mem=1GB
%chk=result.chk
#p HF/STO-3G ADMP=(MaxPoints=20,StepSize=500,ReadVelocity) SCF=Tight NoSymm
Small native dynamics or periodic teaching probe
0 1
O 0.000000000000 0.000000000000 0.000000000000
H 0.000000000000 0.757000000000 0.586000000000
H 0.000000000000 -0.757000000000 0.586000000000
0.000000000000e+00 0.000000000000e+00 -2.520363643572e+12
0.000000000000e+00 1.000000000000e+13 2.000000000000e+13
0.000000000000e+00 -1.000000000000e+13 2.000000000000e+13
这里 StepSize=500 对应0.05fs;MaxPoints=20 是20个传播步,加上初始点共21帧,实际到1fs。ReadVelocity 后直接给三行速度;本例ADMP输入没有BOMD使用的解离路径数0。
bash compute.sh water-admp-dt50
grep -m 2 -A 10 'Summary information for step' work/water-admp-dt50/output.log
grep -A 24 '^ Trajectory summary$' work/water-admp-dt50/output.log
2. 这几个能量字段不能混读#
| 字段 | 本例含义 |
|---|---|
| EKinC | 原子核动能 |
| EKinPA、EKinPB | 两个自旋密度的虚拟动能 |
| EKin | 三项动能之和 |
| EPot | 势能 |
| ETot | EKin+EPot,扩展总能量 |
| ETot-EKinP | 核动能+势能 |
原生最终Trajectory summary里的Kinetic也是扩展动能,不能只把它当作原子核动能。配套脚本用实际质量加权速度独立重建核动能,并同时导出两种总能量。

0.05fs本例扩展总能量的最大变化约 7×10⁻⁷Hartree;核动能加势能的末端变化约 -2.3857×10⁻⁴Hartree,密度虚拟动能同时增加。不能用“扩展能量近似守恒”替代对电子绝热性、虚拟质量和目标物理量的检查。
3. FullSCF对照#
下面保持几何、初始速度和步长,只增加 FullSCF,每个点使用收敛SCF:
%nprocshared=1
%mem=1GB
%chk=result.chk
#p HF/STO-3G ADMP=(MaxPoints=20,StepSize=500,ReadVelocity,FullSCF) SCF=Tight NoSymm
Small native dynamics or periodic teaching probe
0 1
O 0.000000000000 0.000000000000 0.000000000000
H 0.000000000000 0.757000000000 0.586000000000
H 0.000000000000 -0.757000000000 0.586000000000
0.000000000000e+00 0.000000000000e+00 -2.520363643572e+12
0.000000000000e+00 1.000000000000e+13 2.000000000000e+13
0.000000000000e+00 -1.000000000000e+13 2.000000000000e+13
bash compute.sh water-admp-fullscf-dt50
grep 'SCF Done' work/water-admp-fullscf-dt50/output.log
head -n 8 analysis/trajectories.csv
本组FullSCF ADMP与梯度BOMD的同一时刻O—H距离最大差约2.3×10⁻¹³Å,说明这两个给定设置的核轨迹一致;这不是所有积分器和参数组合都等价的结论。FullSCF不使用的传播诊断应与常规SCF输出区分,电子数以实际alpha/beta计数及正常电荷分析核对。
输入和适用范围参见Gaussian ADMP手册。