CP2K全电子GAPW核磁:H₂基组对照
同一个H₂实际运行3-21G*、6-31G**和6-311G**,用原生数据说明基态收敛和基组收敛的区别。
阅读本篇目录
基态SCF和响应方程都收敛,仍不能保证NMR屏蔽已经对基组收敛。本篇用同一个H₂结构,在CP2K原生GAPW全电子路径下改变基组,直接观察结果变化。
1. 下载与看对照#
下载完整输入、原生结果和绘图包,保存为example.zip:
python3 -m zipfile -e example.zip .
cd cp2k-linear-response-nmr
bash results.sh
bash read.sh
bash plot.sh
这些命令直接读取随包实算结果;reference-results/存原生输出,data/存CSV,figures/存图片。read.sh和plot.sh默认使用集群ASE环境的Python,无需重新计算。自己的Python须安装NumPy、ASE和Matplotlib,可用YS_ANALYSIS_PYTHON指定解释器。

2. 完整输入#
两H位于z=±0.373334 Å,键长0.746668 Å;5 Å周期盒、BLYP、POTENTIAL ALL。以6-311G**为例:
cat inputs/H2-GAPW-6311Gpp/input.inp
&GLOBAL
PREFERRED_DIAG_LIBRARY SL
PRINT_LEVEL LOW
PROJECT h2-gapw-1
RUN_TYPE LINEAR_RESPONSE
&END GLOBAL
&FORCE_EVAL
&DFT
BASIS_SET_FILE_NAME EMSL_BASIS_SETS
POTENTIAL_FILE_NAME POTENTIAL
&MGRID
CUTOFF 100
&END MGRID
&QS
METHOD GAPW
&END QS
&SCF
EPS_SCF 1E-6
MAX_SCF 100
&END SCF
&XC
&XC_FUNCTIONAL BLYP
&END XC_FUNCTIONAL
&END XC
&END DFT
&PROPERTIES
&LINRES
EPS 1E-6
MAX_ITER 100
PRECONDITIONER FULL_ALL
&CURRENT
ORBITAL_CENTER COMMON
&END CURRENT
&LOCALIZE
MAX_ITER 100
&END LOCALIZE
&NMR
&END NMR
&END LINRES
&END PROPERTIES
&SUBSYS
&CELL
ABC 5.0 5.0 5.0
&END CELL
&COORD
H 0.000000 0.000000 0.373334
H 0.000000 0.000000 -0.373334
&END COORD
&KIND H
BASIS_SET 6-311G**
HARD_EXP_RADIUS 0.8
LEBEDEV_GRID 10
POTENTIAL ALL
RADIAL_GRID 20
&END KIND
&END SUBSYS
&END FORCE_EVAL
QS/METHOD GAPW和KIND/POTENTIAL ALL选择本例全电子计算,EMSL_BASIS_SETS提供相应Gaussian基组。HARD_EXP_RADIUS、RADIAL_GRID与LEBEDEV_GRID控制本例核区处理。这里径向20、角网格10和100 Ry截断只用于短教学任务,不能作为精确NMR设置推荐。
3. 提交并比较三个基组#
本例使用cp2k/2026.2-8173m CPU版,Intel oneAPI2024.2/Intel MPI构建。新计算通过Slurm提交:
sbatch run.slurm
脚本申请56核整节点,实际2个MPI进程、每进程1线程,顺序运行5个小条件;不要直接在登录节点进行这些电子结构计算。结束后:
bash read.sh work analysis-new
bash plot.sh analysis-new figures-new work
grep 'BASIS_SET ' inputs/H2-GAPW*/input.inp
grep 'SCF run converged' reference-results/H2-GAPW*/native.log
cat data/CP2K-NMR-isotropy-anisotropy.csv
| H基组 | 实际σiso/ppm | SCF步数 |
|---|---|---|
| 3-21G* | 7.5097 | 10 |
| 6-31G** | 21.4424 | 9 |
| 6-311G** | 23.6219 | 9 |
同一计算中两个H的张量在输出精度内相同,x/y方向等价;三个条件的基态和响应都收敛。
4. 为什么3-21G*的值差这么大#
这里3-21G*对H没有极化函数;对于沿z放置的H₂,本次输出σzz为0,σxx和σyy非零。它是观察基组限制的对照,不能因程序正常完成就拿来解释真实H₂的精确屏蔽。
6-31G**和6-311G**包含H的极化函数,结果明显改变。三套结果尚未构成完整基组、网格和周期尺寸收敛序列,也没有计算实验参照化学位移;不把23.6219 ppm称作收敛极限。
5. 自己的体系怎么改#
先选择与元素相符的全电子基组和可用赝势/全电子方法,再逐项增大基组与核区网格,固定几何和其他参数比较同一原子的屏蔽。不要同时改变结构、泛函、盒子和基组后把全部差别归因于基组。
head data/CP2K-NMR-shielding-tensors.csv
head data/CP2K-NMR-linear-solver-residuals.csv
一个CSV保留全部张量分量,另一个保留每次实际响应求解的末步残差。来源为CP2K官方GAPW NMR例子,本例更改收敛参数并增加两套基组。