7.3 GW 与 BSE:分阶段高级流程
本课输入均为未执行的教学示例,数值是待测试的起点;图为原创示意,不是实际计算结果。使用授权 VASP 和 PAW 数据,替换所有占位符,记录程序版本并自行检验收敛。
7.3.1 模型、单位与记录
能量用 eV,长度用 Å,力用 eV/Å;1 kbar = 0.1 GPa。明确每原子、每分子、每原胞或每计算胞的归一化。记录 PAW 名称、版本、ZVAL、ENMAX 及允许的哈希;不分发 POTCAR。SCF 收敛只验证所选电子问题,目标物性的收敛仍需单独检查。
原创示意图;曲线与空白数据区用于说明或填写真实结果,不代表已运行计算。
7.3.2 完整案例:步骤、解释与检验
目标与适用边界
准粒子能量描述加入或移去一个电子并允许其他电子响应的代价;光学激发则同时产生电子和空穴。GW 近似前者的电子自能,BSE 在选定核近似下描述后者的电子—空穴关联响应。因此,准粒子带隙与光学激发能是不同物理量,只有跃迁、动量及态归属一致时,两者之差才可合理解释为对应激子的结合能。
本节面向小型三维非磁性绝缘体,是高级流程地图,不是金属、二维层、分子、带电体系、强关联材料或任意 SOC 组合的万能输入。建议先完成官方金刚石、LiF 或硅训练案例,验证程序与后处理再扩大规模。官方 BSE 课程、硅分阶段练习
A:基态,B:空态
在规则网格上充分收敛静态基态,选择适合高能空态精度需求的 PAW,记录实际版本、价电子配置、半芯态选择和截断能。“GW”数据集标签本身不是精度证明。以较严格电子阈值保存 WAVECAR 和 CHGCAR。
B 阶段从已收敛基态出发,使用上方 ALGO=Exact 模板求足够空态。NELM=1 只因源哈密顿量已收敛才合理,不能从零开始如此计算基态。核对 WAVECAR 的实际带数;绝缘体分支的 LOPTICS 产生 WAVEDER,用于长波极限响应。不要混用不同结构、网格或带数生成的二进制文件。GW 准备、WAVEDER
C:GW 近似必须写清楚
现代版本的示例使用 ALGO=EVGW0、NELMGW=1 表示此算法路线的一次 G0W0 更新。NELMGW 从 6.3.0 起可用,6.2 及以前对应旧流程使用 NELM,VASP 5 的命名则用 GW0;必须按实际版本核对。增加迭代数改变近似层次,不只是把同一个 G0W0 数值“算得更准”。NELMGW、ALGO
从 OUTCAR 的准粒子表读取实际修正过的能量与带范围,不要把 DFT 的 EIGENVAL 图误称为 GW 能带。保存后续所需 WAVECAR 与屏蔽文件,注明起始泛函,以及是一次、仅本征值自洽还是更新轨道的流程。
D:BSE 与文件依赖
BSE 需要相容的轨道、导数和屏蔽核。WFULLxxxx.tmp 保存完整屏蔽信息,Wxxxx.tmp 的对角近似不是无差别替代。文档所述原子、分子与表面路线需要完整核;低标度 GW 还需相应输出设置。不要在 BSE 前把所有 .tmp 当无用临时文件删除。屏蔽文件
NBANDS 是底层轨道集合大小,NBANDSO、NBANDSV 是参与 BSE 的占据/空态范围,OMEGAMAX 在这里还可截断电子—空穴跃迁空间,并非只裁剪最终图的横轴。检查 OUTCAR 中实际纳入的带;从相应 vasprun.xml 读取激发及光谱,注意求解器对本征矢输出的影响。NBANDSO、NBANDSV、BSE 流程
收敛与高级限制
GW 应测试轨道基组、响应截断 ENCUTGW、空带、频率采样 NOMEGA 和 k 网格。它们互相关联;带隙稳定可能来自误差相消,绝对准粒子能量仍可能未收敛。严格基准需协调增加相关基组,不能只动一个参数。ENCUTGW、NOMEGA
BSE 还需收敛电子—空穴空间和屏蔽,弱束缚激子可能需要很密 k 网格。用相同准粒子能量的独立粒子谱对照 BSE,才容易分辨电子—空穴作用。模型屏蔽或剪刀修正近似要明确命名,不能称作完整 GW+BSE。是否采用 Tamm–Dancoff 近似也应写清楚;超越它须使用相应求解分支。ANTIRES
成功退出不保证方法正确,还要核对版本、硬件、执行程序、自旋及泛函支持。二维体系的镜像屏蔽、库仑处理、真空和片层光学量需要额外论证,不是简单加厚真空就万事大吉。起始点依赖、静态屏蔽、有限跃迁空间,以及未包含的声子、寿命、温度和强关联效应,都可能造成实验差异。
练习:建立各阶段文件来源清单,在小型验证体系上分别给出准粒子带隙、某个绝对准粒子能量、一个 BSE 特征的收敛图。未收敛就明确标注未收敛,不填写未经计算的“预期结果”。
7.3.3 未执行输入与分析框架
本课输入均为未执行的教学示例,数值是待测试的起点;图为原创示意,不是实际计算结果。使用授权 VASP 和 PAW 数据,替换所有占位符,记录程序版本并自行检验收敛。
7.3.3.1 输入片段 1
# Stage B only: exact diagonalization after an already converged SCF run
ALGO = Exact
NELM = 1
NSW = 0
ISMEAR = 0
SIGMA = 0.01
LOPTICS = .TRUE.
LWAVE = .TRUE.
# NBANDS = <large integer selected for the GW convergence study>
7.3.3.2 输入片段 2
# Stage C, VASP >= 6.3: explicit staged calculation
ALGO = EVGW0
NELMGW = 1
LWAVE = .TRUE.
ISMEAR = 0
SIGMA = 0.01
# NBANDS = <same prepared large band count>
# ENCUTGW = <tested response cutoff in eV>
# NOMEGA = <tested frequency-grid count>
7.3.3.3 输入片段 3
# Stage D: conventional BSE skeleton, not a universal complete input
ALGO = BSE
ISMEAR = 0
SIGMA = 0.01
# NBANDS = <same compatible band count as the GW files>
# NBANDSO = <number of occupied bands included in the BSE basis>
# NBANDSV = <number of virtual bands included in the BSE basis>
# OMEGAMAX = <tested electron-hole transition-energy cutoff in eV>
# CSHIFT = <stated optical broadening in eV>