VASPBERRY专题

VASPBERRY缓存复用与有限温度

从已保存能带对改变扫描设置,显式处理数值简并,保留能量变化和原始区域响应。

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

本篇使用同一套MoS₂实例包,接INI完整流程。改变μ、温度和区域通常只需重做积分,不需要重跑VASP,也不必重新导出全部能带对。 改变波函数、网格或能带维度则必须重新核对输入。本页展示完整作业已执行的阶段;若已经运行上一页的完整作业,直接查看输出,不要在原目录重复启动这些计算命令。

1 复用已经完成的运行#

附件calculate.sh完成零温流程后,会把41点扫描改为21点,保留原始能量零点、波函数、网格和能带对:

source env.sh
cat rescan.ini
vaspberry-post run rescan.ini --reuse numerical-gap0K

执行这个命令需要前一个运行已经完整结束;选一个新的输出目录。不要删除仍需使用的pairs.npz/json。绘图不需要重新积分:

vaspberry-post plot numerical-gap0K --output-dir figures-new

已经生成默认图目录时,另选图目录,例如在命令后加--output-dir figures-new。这些操作只作用于自己的例子目录。

2 为什么有限温度要处理简并#

本例SOC波函数在时间反演点存在简并或极小数值分裂。1.6.3默认严格模式要求未分辨能带对的占据完全相同;有限温度下,极小能量差也可能产生不同占据。不要把分母直接设成小常数、删除这些态或修改原始本征值。

本包使用原生coalesce模式:在原有1E-7eV阈值内,把数值简并组用于积分的能量取均值,记录变化,原始pairs保持不变。这是一种明确的后处理近似,不是提高了源DFT精度,也不适合任意真正近简并能带。

source env.sh
python finite_t.py

脚本实际调用vaspberry-kubo pair-hall,指定已有numerical-gap0K/pairs、0/300K、61个扫描点以及:

--degeneracy-policy coalesce
--degeneracy-threshold-eV 1e-7
--difference PminusQ:patchP:patchQ

新计算输出finiteT-coalesced/。本次21组数值能量被合并,最大变化约4.83159×10⁻⁸eV;完整记录保存在conductivity.json的degeneracy字段中。

实际区域温度曲线与显式数值简并能量变化

3 结果列如何使用#

head -n 8 finiteT-coalesced/conductivity.csv
cat finiteT-coalesced/conductivity.json
bash results.sh
bash plot.sh

sigma_e2_over_h为二维片响应,sigma_S是对应S单位;delta_sigma为相对参考μ的变化。区域total、patchP、patchQ、rest及差值通道要分别选取,不能把total与各区域再次一起求和。

附件参考CSV包含全部实际扫描点,不把原始总响应强制归零。改变空带数可使用对应的pair_band_max参数,但要保留完整简并组,并单独检查中间态求和收敛;增加μ采样点不能补回缺失的速度算符项。

这是正则动量近似的电荷响应,不是常规自旋流Hall电导。正式材料结论需要更密k网格、足够空带、源本征态精度和适合所研究性质的算符路线。参见本版本Kubo与算符说明。

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

查看配图

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

100%查看原图 ↗