CP2K电子重启与磁态结果检查
实际检查SCF、电子检查点、U投影、局域矩与负U修正的适用边界。
阅读本篇目录
下载六个物理条件、完整输入、参考结果与四张高清图。在已分配CPU资源内执行 bash run.sh,新结果在 work/cases、表格在 work/analysis、图片在 figures。电子检查点由自己的前一步产生,附件不分发WFN。
1 从SCF收敛继续往下检查#
磁性与DFT+U给出完整输入。完成一个磁性计算后,应按顺序检查:SCF阈值、+U投影与参数、最终局域自旋、总电子数和总能量的可比性。
grep 'SCF run converged' work/cases/lowdin-afm-u3/output.log
grep 'DFT+U|' work/cases/lowdin-afm-u3/output.log
grep 'DFT+U energy:' work/cases/lowdin-afm-u3/output.log
grep -A10 'Mulliken Population Analysis' work/cases/lowdin-afm-u3/output.log
grep 'ENERGY|' work/cases/lowdin-afm-u3/output.log
最终结果统一用 EPS_SCF 1E-6;阶段性初猜不能代替它。
2 电子检查点和MD续算不是同一类文件#
*-RESTART.wfn保存电子初猜。相同PROJECT的下一阶段在同目录使用:
SCF_GUESS RESTART
它不会恢复MD的位置、速度和温压器状态。MD完整续算另见CP2K续算与轨迹分析,那里读取文本restart中的动力学状态。
复制到新目录时,使用自己前一步生成且结构、基组、自旋通道相容的电子文件;保持PROJECT/检查点名称对应,或者明确指定波函数文件名。
3 两阶段怎样保证最终精度#
附件的U0准备阶段为1E−5,最终为1E−6;Löwdin U3/U5 AFM准备阶段为1E−4,最终同样为1E−6。准备阶段从ATOMIC出发,最终读它生成的电子初猜。两个阶段都要检查真正收敛。
mkdir my-u0
cp inputs/u0-afm-seed/prepare.inp inputs/u0-afm-seed/input.inp my-u0/
cd my-u0
mpirun -np 4 cp2k.psmp -i prepare.inp -o prepare.log
grep 'SCF run converged' prepare.log
mpirun -np 4 cp2k.psmp -i input.inp -o output.log
grep 'SCF run converged' output.log
第一阶段生成电子检查点后,第二阶段才有可读的WFN。没有检查点时只改成RESTART,不会凭空获得已经收敛的电子态。
4 同一个U数字,投影不同会怎样#
附件实际计算了U3下Löwdin与Mulliken两种+U投影,保持其他主要输入相同。最终局域自旋仍从同一类Mulliken人口表读取:
| 电子方法与初猜 | Ni1局域自旋/e | Ni2局域自旋/e |
|---|---|---|
| Löwdin U3 AFM初猜 | +0.829009 | -0.829005 |
| Mulliken U3 AFM初猜 | +1.118171 | -1.118173 |
| Löwdin U3 FM初猜 | +1.412060 | +1.418069 |
| Mulliken U3 FM初猜 | +1.611892 | +1.418296 |

改变投影会改变+U定义和对应电子态。不能把这种差别叫作GPU误差,也不能跨方法仅按绝对总能量选择更“稳定”的磁态。真实材料应说明投影、基组和U参数来源。
5 为什么要读DFT+U修正项#
对本例正的Ueff,常见Dudarev形式的修正包含 Ueff/2 × Σ n(1−n)。如果投影占据超出适当范围,数值上可能出现负的修正;这时要检查投影占据和电子解,不能把总能量更低直接当成更稳定的磁态。
附件另保留两个U5 Mulliken诊断例:它们的SCF都达到1E−6,但最终+U修正分别约−0.012332187与−0.063132053Hartree。它们用于说明投影检查,不用于物理磁态能量排名。本篇主工作流的Löwdin U3/U5和Mulliken U3对照均核对了正的最终修正。

grep 'DFT+U energy:' reference/diagnostics/mulliken-u5-continued/output.log
grep 'DFT+U energy:' reference/diagnostics/mulliken-u5-fresh-cg/output.log
这也不表示所有Mulliken计算都不能使用;应该结合实际参数、占据和最终电子态判断,而不是只换个关键词就认定结果可靠。
6 用工具统一提取再画图#
module load ase/3.29.0
python -B analyze.py work
python -B plot_results.py
cat work/analysis/magnetism.csv
CSV列出Ueff、总能量、最终+U修正、两个Ni的Mulliken局域自旋以及总α−β;JSON保留实际SCF步数和准备阶段信息。
7 换成自己的磁性体系#
尝试合理的初始局域矩和磁超胞,确认最终矩与预期磁序相符;同一物理方法下比较多个已收敛电子解。金属或小带隙体系可能需要对角化、额外空带和展宽;改变展宽温度后,还要区分带电子熵的量与零温能量。