ORCA专题

ORCA DLPNO与PNO阈值实操

真实比较NormalPNO、TightPNO、自定义TCutPNO和(T1),分清局域近似与参考处理。

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

下载完整输入、25个实际计算输出与绘图脚本,解压后进入资料包目录:

bash analyze.sh

已有结果重画在 reference/figures,CSV与完整数值在 reference/analysis。想重新计算,在新解压目录执行:

sbatch submit.slurm

重新计算写入 work,随后自动提取与画图。此小体系模板分配P100主机1个CPU核心和1个GPU配额,ORCA只用CPU,GPU不参与计算;计费按所选GPU分区规则。常规生产请用 yskit 复制CPU模板,并使 %pal 与实际分配匹配;资源状态以门户为准。ORCA6.1.1使用官方CPU预编译发行包,配套OpenMPI4.1.8由GNU13.3编译;本例串行单线程、每进程 %maxcore 500 MB,不能据此判断多核效率。分析使用ASE3.29.0环境中的Python、NumPy/SciPy与Matplotlib。

1 DLPNO输入从哪里开始#

DLPNO通过局域相关空间降低大分子计算成本。这里用水分子学习控制变量与输出读取;水太小,不能用它宣传大体系加速比或推荐所有体系统一阈值。

先取实际TightPNO输入,在已分配资源中运行:

mkdir pno-tight
cp inputs/water-dlpno-tightpno/case.inp pno-tight/
cd pno-tight
module purge
module load orca/6.1.1
export OMP_NUM_THREADS=1 OPENBLAS_NUM_THREADS=1 MKL_NUM_THREADS=1
"$ORCA_ROOT/orca" case.inp > case.out

完整输入如下:

! DLPNO-CCSD(T) def2-SVP def2-SVP/C def2/J RIJCOSX DefGrid3 VeryTightSCF FrozenCore TightPNO
%pal nprocs 1 end
%maxcore 500

* xyz 0 1
O 0.0000000000 0.0000000000 0.1192620000
H 0.0000000000 0.7632390000 -0.4770470000
H 0.0000000000 -0.7632390000 -0.4770470000
*

def2-SVP/C 用于相关拟合,def2/J 与RIJCOSX用于参考SCF;它们与轨道基组的职责不同。输入第一行的 TightPNO 是一整组阈值预设,不能只看其中一个数就描述全部局域近似。

2 NormalPNO、TightPNO与自定义参数#

本例三个(T)条件分别是:

条件 实际TCutPNO 操作
NormalPNO 3.33×10⁻⁷ 将TightPNO换成NormalPNO
TightPNO 1×10⁻⁷ 使用上面的完整输入
TightPNO + 自定义TCutPNO 1×10⁻⁸ 保留TightPNO,增加下方块
%mdci
 TCutPNO 1e-8
end

TCutPNO 控制保留的成对自然轨道;自定义条件仅在TightPNO基础上改这个值,其余阈值保留Tight预设。新建目录分别运行,不能在同一个目录覆盖旧输出。用实际输出确认生效参数:

grep -E 'TCutPNO:|TCutPairs:|TCutDO:|TCutMKN:|E\(0\)|strong-pairs|weak-pairs|corrected|Triples Correction|FINAL SINGLE POINT ENERGY' case.out

3 三重激发(T)与(T1)分别算#

第四个输入使用 DLPNO-CCSD(T1),其余保持TightPNO条件。实际文件:

head inputs/water-dlpno-t1-tight/case.inp

在资料包根目录查看上述命令;运行仍在独立目录用同一个ORCA终端入口。(T)与(T1)采用不同的三重激发处理,不能将其能量差全部解释成TCutPNO的影响。

条件 总能量 / Eh
DLPNO-CCSD(T) NormalPNO -76.174792874327
DLPNO-CCSD(T) TightPNO -76.174804858001
DLPNO-CCSD(T) Tight + 1e−8 -76.174807193027
DLPNO-CCSD(T1) TightPNO -76.174913454545

PNO阈值、三重激发及参考能分别比较

本例所有PNO条件的HF参考一致;但该RIJCOSX参考比 常规CC示例 的NoRI参考低0.000108197 Eh,约2.944 meV。因此跨这两组比较最终总能量时,差值同时包含参考处理差异,不能称为纯PNO截断误差。若要研究PNO近似,先匹配参考处理、基组、冻结核、积分网格及三重激发方法。

4 输出分项与自己的精度检查#

强对与弱对相关能相加得到相应校正相关部分,再计入三重激发,最后与参考能合成总能。资料包脚本同时读取这些分项和实际阈值:

bash analyze.sh work
head work/analysis/energies.csv

本例采用有限def2-SVP基组,只证明四个具体条件之间的数值差异,不代表PNO误差随参数必定单调,也不代表达到化学精度。生产中应比较关心的反应/相对能,而非仅对单分子总能作结论。方法定义和阈值选项见 ORCA MDCI官方说明。

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

查看配图

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

100%查看原图 ↗