TB2J 交换参数的网格与积分
区分DFT与插值网格、CFR阶数、电子展宽和原生保留带空间。
阅读本篇目录
下载Fe2完整输入、原生矩阵、7组TB2J结果、自旋波与离线依赖。解压进入附件根目录,先看已有结果:
bash analyze.sh
首次运行会创建本目录的 venv,使用已固定的离线依赖,不修改公共环境。4张高清图在 reference/figures,数据和表在 reference/analysis。如果希望从DFT开始完整复跑,在新解压目录提交:
sbatch submit.slurm
模板依次完成2个Fe2铁磁SCF、7个交换参数条件、自旋波、数据提取与画图。新的输出在 work;已有 work 时请新解压。DFT使用ABACUS3.10.1-p100、GNU13.3/HPC-X2.50(OpenMPI5.0.10rc2)/CUDA12.8/ELPA GPU,1进程、1线程、GPU双精度。不要在登录节点直接运行DFT。
后处理为TB2J0.9.22、HamiltonIO0.3.8、Python3.11、sisl0.16.4、SciPy1.16.3及NumPy2.3.5环境,1个CPU进程/线程;它不等于ABACUS的GPU加速性能测试。两阶段按脚本切换环境,避免混用依赖。
1 两种k网格各管什么#
DFT的3³/5³网格改变自洽势与H/S;TB2J的3³/5³/7³网格则对既有矩阵做布里渊区积分。只增加后者,不能补做更密的DFT自洽。当前接口会把偶数交换网格转成相邻奇数,建议直接写明确的奇数并检查实际输出。
直接提取7组汇总表:
venv/bin/python -B extract.py reference
得到 reference/analysis/exchange-summary.csv。下面是实际第一、第二近邻的平均J,单位meV:
| DFT电子网格 | TB2J网格 | CFR阶数 | 最近邻J | 次近邻J |
|---|---|---|---|---|
| 3³ | 3³ | 24 | 10.214792 | 7.926803 |
| 3³ | 5³ | 24 | 22.335194 | 6.749393 |
| 3³ | 7³ | 24 | 23.686564 | 10.578865 |
| 5³ | 5³ | 24 | 17.278154 | 5.902068 |
| 5³ | 7³ | 24 | 20.085003 | 10.002147 |
| 5³ | 7³ | 48 | 20.083053 | 10.002135 |
| 5³ | 7³ | 80 | 20.083047 | 10.002151 |

表中采用同一近邻壳层的平均值。粗网格下等价键仍有数值分裂,例如第一组最近邻约10.213558–10.216026 meV,次近邻约7.883069–8.013499 meV;不要把单根键的小数位当成精确材料常数。
CFR从48到80时本组数值已较稳定,但DFT与交换k网格之间的变化仍明显,4 Å范围也尚未检验到充分大。不能因为积分阶数稳定,就把20.083047 meV称为收敛的铁材料常数。
2 这一版实际使用什么积分#
本例0.9.22 ABACUS接口实际使用CFR,默认电子展宽为600 K,对应约0.0517 eV;nz控制CFR近似阶数,实际能量取样数为nz+1。600 K是这个电子积分设置,不是DFT离子温度,也不是自旋动力学温度。
DFT本身使用的Gaussian宽度0.015 Ry约0.2041 eV。两种占据设置不同,TB2J由模型计算的投影电荷/磁矩可能与DFT输出略有差别,不要要求它们在所有网格上严格等于整数电子数。
日志中的下限调整提示不能直接解释成CFR只积分某个有限实能区间。更换工具版本或展宽时,要核对实际传入的设置;本教程使用接口真正生效的默认值,没有把未传入的命令行选项当作已改变参数。
3 保留的带空间也要明确#
这版程序会按EF+5.1 eV附近出现过的最高带序号裁剪高能未占据带。本例实际保留每个自旋20条带,而原始H/S是54维;这不是把 nbands 32 原样用于所有下游计算。
独立核对必须使用同样的带空间。本附件先独立求解广义本征问题,再从完整矩阵格林函数中显式减去原生未保留的带,重建CFR求和,与原生J吻合。结果JSON另保留了完整54态直接求逆的诊断值,它是不同且未做充分收敛检查的模型,不作为表中J或自旋波输入。
这也是为什么不能只看到某个H/S矩阵可读,就断言所有下游参数都已经收敛。换轨道基组、选带范围、电子积分设置和相互作用距离,都应重新比较。
4 怎样继续自己的收敛测试#
先固定几何、磁态、赝势与基组,分别加密DFT网格和TB2J网格;随后比较CFR阶数、实际选带空间、电子展宽与更大的相互作用距离。保持原始结果,不把不同设置的J混合求平均。这里的轨道分解和短程模型用于理解流程,不给出居里温度或实验精度结论。