PAW 赝势 SCF 收敛问题的诊断与修复

May 19, 2026
Published in 计算物理

Abstract

将赝势从 norm-conserving(psp8,ta015)切换到 PAW(xml,PseudoDojo pbe/paw-sr-11,ta031)后,所有 COHP 计算的 SCF 迭代出现严重的收敛困难。能量在前几步快速下降后开始振荡上升,残差(vres2)在 $\sim1\times10^{-2}$ 处停滞不前。本文记录该问题的诊断与修复过程。

Keywords: ABINIT, PAW, 赝势, SCF收敛, DFT

问题描述

al28c1s-ta015-1co 为例,7 步 SCF 迭代的收敛行为:

步数总能量 (Ha)$\Delta E$ (Ha)vres2
1$-64.3226$$-6.43\times10^{1}$$3.37\times10^{1}$
2$-64.4953$$-1.73\times10^{-1}$$4.79\times10^{0}$
3$-64.4869$$+8.42\times10^{-3}$$1.15\times10^{0}$
4$-64.4856$$+1.25\times10^{-3}$$3.92\times10^{-2}$
5$-64.4860$$-3.61\times10^{-4}$$1.45\times10^{-2}$
6$-64.4863$$-3.56\times10^{-4}$$1.24\times10^{-2}$
7$-64.4866$$-3.10\times10^{-4}$$8.78\times10^{-3}$

特征: 步数 3 起能量反升($\Delta E > 0$),步数 5--7 的 vres2 下降极慢($1.45\times10^{-2} \to 8.78\times10^{-3}$),每步耗时约 1 小时 43 分钟。

作为对比,ta015 中相同体系使用 norm-conserving 赝势的收敛行为:

步数总能量 (Ha)$\Delta E$ (Ha)vres2
1$-70.6873$$-7.07\times10^{1}$$1.34\times10^{1}$
4$-70.6904$$-2.27\times10^{-3}$$1.53\times10^{-1}$
7$-70.6936$$-3.08\times10^{-5}$$9.57\times10^{-5}$
12$-70.6936$$-9.38\times10^{-9}$$2.93\times10^{-10}$
16$-70.6936$$-2.93\times10^{-10}$$2.88\times10^{-13}$

16 步即达到 toldfe 1.0d-9 收敛,vres2 单调下降,无振荡。

注:ta015 与 ta031 的总能量差约 6 Ha,这是赝势参考能不同造成的(PAW 通常排除更多芯电子),属于正常现象。

原因分析

主要原因:iprcel 45 与 PAW 不兼容

iprcel 45 使用基于模型介电函数的 RPA 预条件化方法。该方法在倒空间中对密度混合进行预条件化处理,仅作用于平面波(smooth)部分的电荷密度

在 norm-conserving 赝势下,全部电荷密度都在平面波空间中表示,预条件化完整有效。但 PAW 方法引入了额外的 on-site augmentation 贡献(球内补偿电荷 $\hat{\rho}_{ij}$),这部分电荷密度不经过平面波展开,因此 iprcel 的预条件化矩阵无法覆盖。

结果是:球外(smooth)部分的密度被高效混合,而球内(on-site)部分的密度仍以原始步长混合,两者不协调,导致 SCF 振荡和停滞。

ABINIT 文档的官方说明更接近:iprcel 的模型介电预条件化在 PAW 框架下"未经充分测试 / 不推荐"。因此,PAW 计算不应使用 iprcel

次要原因

  • diemac 1000.0 对 slab 体系偏高: 此值适合体相金属(如 bulk Al),但本体系包含大量真空层($c$ 方向 ~44 Å),有效介电常数远低于 1000。过高的 diemac 导致真空区域的密度变化被过度抑制(欠混合)。
  • dielng 5.0 这是 iprcel 的配套参数(模型介电函数的屏蔽长度),移除 iprcel 后该参数不再起作用。
  • toldfe 1.0d-10 过于严格: 比 ta015 使用的 1.0d-9 还严一个量级。对于 COHP/LOBSTER 分析(主要依赖波函数质量而非极端能量精度),1.0d-6 已足够。

修复方案

对全部 24 个 cohp.in 文件执行了以下修改:

 # --- SCF ---
 nstep 100
 iscf 17
-iprcel 45
-diemix 0.5
-diemac 1000.0
-dielng 5.0
+diemix 0.3
+diemac 8.0
 npulayit 7
-toldfe 1.0d-10
+toldfe 1.0d-6

修改说明

参数修改前修改后理由
iprcel45删除PAW 下不推荐使用模型介电预条件化
dielng5.0删除iprcel 的配套参数,不再需要
diemix0.50.3更保守的混合比例,避免 PAW 下振荡
diemac1000.08.0适配 slab+vacuum 体系的有效介电常数
toldfe1.0d-101.0d-6COHP 分析不需要极端能量精度

修改后的 SCF 方案为 iscf 17(Pulay 密度混合)+ npulayit 7,移除了 RPA 模型介电预条件化。

补充说明: iscf 17 是 Pulay 密度混合,但 diemac 在没有 iprcel 时仍参与简单的对角预条件化(ABINIT 默认走 iprcel 0,即简单对角预条件,仍读取 diemac)。因此并非完全"无预条件化",只是未使用 RPA 模型介电函数那一套。

操作记录

  1. 通过 scancel 取消了全部 24 个已提交的 SLURM 作业(Job ID 25035587--25035610)
  2. 使用 sed 批量修改了 24 个 cohp.in 文件
  3. 验证所有文件中已不再包含 iprceldielngdiemix 0.5diemac 1000toldfe 1.0d-10

参数优化讨论与后续建议

diemac 取值

diemac 8.0 对含金属 slab 的体系可能偏低——8 是半导体/绝缘体的典型量级。对 $\mathrm{Al}(111)$ slab + 吸附物体系,常见经验值在几十到一百多之间(金属层仍提供较强屏蔽,真空只是稀释了平均屏蔽)。如果新一轮 SCF 偏慢,建议优先往上调到 20--50 试试,而非进一步降低 diemix

toldfe 与波函数收敛

放宽到 1.0d-6 Ha 对 LOBSTER 投影本身够用,但需要注意:LOBSTER 对波函数质量敏感,而 toldfe 只约束能量。更稳妥的做法是用 tolwfr(例如 $1.0\times10^{-10}$$1.0\times10^{-12}$)作为收敛判据,因为这直接约束波函数残差。能量收敛到 $10^{-6}$ 时波函数可能还没收敛到 LOBSTER 投影所需精度(charge spilling 会偏高)。建议至少在一个测试算例上对比 toldfe 1.0d-6tolwfr 1.0d-10 的 LOBSTER spilling 值。

一般性建议

  • 若修改后收敛仍偏慢,可进一步将 diemix 降至 0.2
  • 若需更快收敛,可尝试 iscf 7(简单 Pulay,无预条件化)作为对照
  • 确认收敛正常后,如需更高精度可将 toldfe 收紧至 1.0d-8
  • 强烈建议: 在批量重投 24 个作业前,先单独跑 1 个最小体系(如 al28h1)验证新参数确实收敛,再扩展到全部

References

  1. Gonze, X., et al. "The ABINIT project: Impact, environment and recent developments." Computer Physics Communications, vol. 248, 2020, p. 107042. link

  2. Jollet, F., M. Torrent, and N. Holzwarth. "Generation of Projector Augmented-Wave atomic data: A 71-element validated table in the PseudoDojo." Computer Physics Communications, vol. 185, no. 4, 2014, pp. 1246--1254. link