Gaussian 专题

Gaussian ONIOM整体与局部优化

完整展示全原子优化和只优化O、H两个原子的输入,区分正频率极小值与受约束结构。

更新于 2026-11-05约 6 分钟阅读按任务与环境选择适用配置
阅读本篇目录

下载完整输入、选定原生数据与绘图脚本,解压到新目录:

unzip gaussian-oniom-practical*.zip -d oniom-example
cd oniom-example
bash run.sh

这会用随附的实际计算结果生成 analysis/energies.csv、analysis/finite-difference.csv 和 figures/ 下的5张图。脚本需要NumPy和Matplotlib,集群默认使用ASE的Python环境;其他电脑可用 PYTHON=python3 bash run.sh 指定自己的环境。

本组采用个人有权使用的 Gaussian16 C.01 AVX CPU程序,单例1核心、1GB;资料包不包含Gaussian程序。完成自己的Gaussian环境初始化、申请CPU资源后检查入口:

command -v g16
command -v formchk

需要全部重算时,在新解压目录执行 bash run.sh compute,顺序运行23个很小的计算;已有 work/ 同名目录时会拒绝覆盖。该命令不负责申请队列资源,应在已分配的CPU任务中执行。

1. 全原子优化并计算频率#

从同一个乙醇构型开始,使用下面的完整输入:

%nprocshared=1
%mem=1GB
%chk=result.chk
#p ONIOM(HF/STO-3G:UFF) Opt Freq Geom=Connectivity NoSymm SCF=Tight

Small layered-model oniom-all-optfreq

0 1 0 1 0 1
C-C_3-0.00000000 0 1.171592164149 -0.403050689766 -0.000000000006 L
C-C_3-0.00000000 0 -0.006726532503 0.556916685590 -0.000000000006 L H-H_-0.0 3
O-O_3-0.00000000 0 -1.201076743568 -0.221755587510 -0.000000000001 H
H-H_-0.00000000 0 -1.953062098208 0.389286604240 0.000000000014 H
H-H_-0.00000000 0 0.039662126550 1.209262019623 0.887716250593 L
H-H_-0.00000000 0 0.039662126550 1.209262019623 -0.887716250593 L
H-H_-0.00000000 0 2.118986840378 0.147543167958 0.000000000001 L
H-H_-0.00000000 0 1.140320061155 -1.044590109792 0.886956786043 L
H-H_-0.00000000 0 1.140320061155 -1.044590109792 -0.886956786043 L

1 2 1.0 7 1.0 8 1.0 9 1.0
2 3 1.0 5 1.0 6 1.0
3 4 1.0
4
5
6
7
8
9
bash compute.sh oniom-all-optfreq
grep 'Optimization completed' work/oniom-all-optfreq/output.log
grep 'Frequencies --' work/oniom-all-optfreq/output.log
tail -n 3 work/oniom-all-optfreq/output.log

全原子优化得到能量 -74.963329022884 Hartree;9个非线性分子的振动模式为 3N-6=21 个,本例全部为正,最小值约 251.0943cm⁻¹。零点能约 0.084403Hartree。这些是HF/STO-3G:UFF混合模型的结果,不是高精度全量子乙醇频率。

2. 只允许高层O3和H4优化#

需要保持其余环境原子不动时,本例使用 Opt=(NoMicro,ReadOpt),在连接表后写 noatoms atoms=3-4:先清空活动列表,再只选3、4号原子。这里展示的是实际可运行的完整输入。

%nprocshared=1
%mem=1GB
%chk=result.chk
#p ONIOM(HF/STO-3G:UFF) Opt=(NoMicro,ReadOpt) Geom=Connectivity NoSymm SCF=Tight

Small layered-model oniom-frozen-low-opt

0 1 0 1 0 1
C-C_3-0.00000000 0 1.171592164149 -0.403050689766 -0.000000000006 L
C-C_3-0.00000000 0 -0.006726532503 0.556916685590 -0.000000000006 L H-H_-0.0 3
O-O_3-0.00000000 0 -1.201076743568 -0.221755587510 -0.000000000001 H
H-H_-0.00000000 0 -1.953062098208 0.389286604240 0.000000000014 H
H-H_-0.00000000 0 0.039662126550 1.209262019623 0.887716250593 L
H-H_-0.00000000 0 0.039662126550 1.209262019623 -0.887716250593 L
H-H_-0.00000000 0 2.118986840378 0.147543167958 0.000000000001 L
H-H_-0.00000000 0 1.140320061155 -1.044590109792 0.886956786043 L
H-H_-0.00000000 0 1.140320061155 -1.044590109792 -0.886956786043 L

1 2 1.0 7 1.0 8 1.0 9 1.0
2 3 1.0 5 1.0 6 1.0
3 4 1.0
4
5
6
7
8
9

noatoms atoms=3-4
bash compute.sh oniom-active-oh-opt
grep 'Optimization completed' work/oniom-active-oh-opt/output.log
grep -A 6 'Cartesian Gradient' work/oniom-active-oh-opt/result.fchk

相对初始位置,O3移动约 0.047926Å,H4移动约 0.155156Å,其余7个原子的坐标保持不变。最终能量 **-74.962651072955 Hartree,比起始结构低。

整体优化、局部位移与实际振动频率

3. 正确检查你要的优化目标#

全原子优化要检查所有自由度是否达到阈值,再用频率判断局部极小值。局部优化只要求被允许活动的自由度收敛;固定原子的剩余受力可以不为零。本例局部优化未请求频率,不能据此声称找到了完整体系的无虚频极小值。

head -n 8 analysis/energies.csv
ls figures/04-optimization-and-constraints.png

若改了原子顺序,也必须同步修改活动原子列表、link atom连接编号和连接表。NoMicro关闭微迭代、ReadOpt读取活动原子选择的含义参见Gaussian优化手册。

需要根据你的体系选择资源?联系讨论计算需求。实际可用软件与权限,以当前账户和运行环境为准。

查看配图

放大后可滚动查看细节,按 Esc 关闭。

100%查看原图 ↗