Wannier90铜的窗口与费米面
用真实铜矩阵操作内外窗口、DOS和费米面,说明能量零点和自旋态数。
阅读本篇目录
unzip wannier90-practical-wave256-*.zip
cd wannier90-wave256
bash run.sh
这一步读取已完成计算的真实数值,生成 analysis/ 和七张 figures/*.png,不启动DFT计算。要自己运行Wannier90,再按下面的命令操作。
1 先运行七轨道模型#
本页使用官方4.0.3 Cu04的QE数值矩阵,在集群上实际重新执行Wannier90。原始k网格4³、12条DFT带,构造7个Wannier轨道。
cat inputs/Cu7/copper.win
bash calculate.sh Cu7 mpi
num_bands = 12
num_wann = 7
num_iter = 200
dis_win_max = 38.0
dis_froz_max = 13.0
dis_num_iter = 60
begin projections
Cu:d
f=0.25,0.25,0.25:s
f=-0.25,-0.25,-0.25:s
end projections
5个d轨道加两个间隙s型试探投影,共7个。投影点不必都在原子上。外窗口提供可选带,内窗口冻结其中要准确保留的DFT态;每个k点的冻结态数不能超过7。
2 窗口不是改一个数就一定改变结果#
bash calculate.sh Cu7-window12
bash calculate.sh Cu7-window9
bash run.sh
本套只改变内窗口上界,外窗口、矩阵和投影不变。实际冻结态数:
| 内窗口上界 | 每个k点冻结态数 | 如何理解 |
|---|---|---|
| 13 eV | 5–6 | 基准 |
| 12 eV | 5–6,逐点与13 eV完全相同 | 12–13 eV间没有新增被冻结的态,本次结果相同 |
| 9 eV | 1–3 | 冻结子空间实际改变,不能只凭总展宽选窗口 |

比较模型时同时看目标能区的直接DFT误差、轨道特征、平滑性和展宽。训练点的冻结能量一致只是基本检查,外窗口内未被冻结的带不要求与全部DFT带一一相等。
3 生成DOS和费米面#
bash post.sh Cu7 mpi
ls work/Cu7-mpi-post
助手从刚生成的检查点另建后处理目录,先做格式导出/导入,再运行绘图和postw90。对应核心命令:
w90chk2chk.x -export copper
w90chk2chk.x -import copper
mpirun -np 4 wannier90.x copper
mpirun -np 4 postw90.x copper
后处理win可直接查看:
cat inputs/Cu7/copper.post.win
本例DOS采用12³网格、0.05 eV能量间隔、0.15 eV高斯展宽,积分范围−10至50 eV。

程序在这个非自旋7轨道模型中按二重自旋计数,DOS积分为 14.00000002 个态。14是模型全能区的态数,不是铜的价电子数,也不是积分到费米能的占据电子数。SOC自旋量子态模型不能照搬这个乘2规则。
4 费米能必须属于同一套DFT数据#
Cu04配套费米能为 12.2103 eV:
fermi_energy = 12.2103
fermi_surface_plot = true
fermi_surface_num_points = 24
不要从另一个Cu教程抄来12.9344 eV等值。即使材料同为Cu,不同计算的绝对零点也可能不同。
本例原生BXSF实际输出 25×25×25 网格:24个分段包含两端点,所以不是24³个输出点。文件可交给支持BXSF的可视化软件打开,随包脚本直接给出三张截面:

黑线为本套数据的费米等能线,颜色为能量相对费米能的差。这个粗网格实例用于掌握操作,精细费米面及输运计算还需要网格、窗口和插值的收敛检查。
原始模型说明见 官方Cu04教程。