示例 04-2:用空原子 E 做水二聚体的 counterpoise(BSSE)修正¶
目的¶
- 学会在
Definition.of.Atomic.Species中用E赝势定义空原子(ghost atom); - 用 Boys–Bernardi counterpoise(CP)方法计算水二聚体的结合能,并给出基组重叠误差(BSSE)的大小。
对应教程:第4章 基组 PAO 与赝势 VPS 的选择(§8)。
文件说明¶
| 文件 | System.Name | 内容 | 对应能量 |
|---|---|---|---|
H2O_dimer.dat |
h2o_dimer |
完整二聚体 | \(E_{AB}^{AB}\) |
H2O_dimer_BSSE_ghost.dat |
h2o_A_ghostB |
水 A(原子 1–3)+ B 位置的空原子 | \(E_{A}^{AB}\) |
H2O_dimer_BSSE_ghost2.dat |
h2o_B_ghostA |
A 位置的空原子 + 水 B(原子 4–6) | \(E_{B}^{AB}\) |
H2O_monoA.dat |
h2o_monoA |
只有水 A | \(E_{A}^{A}\) |
H2O_monoB.dat |
h2o_monoB |
只有水 B | \(E_{B}^{B}\) |
run_bsse.sh |
— | 依次运行 5 个输入并计算 ΔE_raw、ΔE_CP、BSSE(kcal/mol) | — |
job.slurm |
— | Slurm 作业脚本 | — |
几何:两个刚性水分子(r(OH) = 0.9572 Å,∠HOH = 104.52°),供体的 O–H 指向受体 O,R(O···O) = 2.91 Å,受体分子平面垂直于供体平面。这是手工搭建的教学结构,不是 PBE 优化结构。所有输入共用 12 Å 立方盒子、250 Ry 截断能、Standard 基组(O6.0-s2p2d1、H6.0-s2p1)。
运行步骤¶
cd OpenMX/examples/04-bsse-ghost-h2o-dimer
sed -i "s#^DATA.PATH.*#DATA.PATH $HOME/openmx4.0/DFT_DATA19#" *.dat # once
MPI_RUN="mpirun -np 4" NT=1 bash run_bsse.sh # interactive
sbatch job.slurm run_bsse.sh # or on a Slurm cluster
bash run_bsse.sh collect # re-print the analysis later
预期结果 / 如何检查¶
run_bsse.sh 输出格式如下(示意输出,数值仅供参考):
E_AB(AB) = -34.xxxxxxxxxx Ha
E_A(AB) = -17.xxxxxxxxxx Ha E_A(A) = -17.xxxxxxxxxx Ha BSSE(A) = 0.xxx kcal/mol
E_B(AB) = -17.xxxxxxxxxx Ha E_B(B) = -17.xxxxxxxxxx Ha BSSE(B) = 0.xxx kcal/mol
dE_raw = -x.xxx kcal/mol (no counterpoise)
dE_CP = -x.xxx kcal/mol (counterpoise corrected)
BSSE = 0.xxx kcal/mol (dE_CP - dE_raw)
检查要点:
- 每个单体在二聚体基组中的能量应低于(或等于)在自身基组中的能量,即
BSSE(A)、BSSE(B)≥ 0; - ΔE_CP 的绝对值小于 ΔE_raw,BSSE 为正;Ozaki 的 OpenMX 实践讲义给出的经验是,数据库基组下分子体系的 BSSE 约为 0.5 kcal/mol 量级;
- 所有
.md文件中都是scf_conv=1; - 在
h2o_A_ghostB.out的 Mulliken 布居中,总电子数为 8,空原子上有少量布居,这是 A 借用 B 基函数的直接体现; - 量级参考:S22 基准(CCSD(T))给出的水二聚体结合能约 −5.0 kcal/mol。本例几何未优化,不要求逐位吻合。
注意事项¶
- 空原子的 PAO 必须与对应真实原子完全相同,初始电子数写
0.0 0.0。 H2O_monoA/B.dat中原子相对积分网格的位置与二聚体计算不同,会带来很小的网格误差。要做更精细的比较,可从标准输出h2o_dimer.std中找到Grid_Origin(grep Grid_Origin h2o_dimer.std),在其余输入中加入scf.fixed.grid x y z固定网格原点(第5章 §4.4)。CP 修正的三个计算原子位置完全相同,不受此影响。- 若要比较不同基组下 BSSE 的变化,记得同时修改空原子
EO、EH的 PAO。 - 盒子大小只需保证相邻镜像之间基函数不重叠(分子尺寸 + 2 × PAO 半径)。12 Å 对 6.0 bohr 的 PAO 足够。