Sumo专题

Sumo高对称路径与K点准备

默认、SeeK-path、Pymatgen、Latimer路径,手动点列、拆分、授权输入目录及杂化权重。

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

下载完整算例、真实数据、绘图脚本和参考结果。解压后先进入附件目录;inputs/ 保存输入,reference/ 保存参考结果,bash run.sh 名称 将该项复制到 work/名称/ 并运行。重复运行会将旧结果移入 work/history/。这些是已有计算结果的准备与后处理操作,不会启动新的 DFT 计算。

module purge
module load amset/0.5.1
python -c "import importlib.metadata as m; print(m.version('sumo'))"

本次环境提供 Sumo 2.4.0.post1、Python 3.11.16、Pymatgen 2026.9.24、NumPy 1.26.4 和 Phonopy 4.8.1。Sumo 随当前 AMSET 环境提供;下面保持这一环境,避免混用另一个 Python。

1 先准备什么#

普通能带先完成结构优化与 SCF,再生成高对称路径,进行能带计算,最后绘图。sumo-kgen 负责路径文件,不代替 VASP 计算。输入至少需要 POSCAR;晶胞及元素顺序必须与后续计算一致。

本例使用实际 Si 原胞。自动路径的坐标定义随标准化约定变化;不能只凭 Γ、X 等标签,把不同约定的分数坐标相互拼接。

同一Si结构的三种路径约定:分数倒易坐标散点,不连接不连续路径

2 默认、SeeK-path 与 Pymatgen#

--density 20 是沿路径的倒易空间采样密度参数,由路径长度决定各段点数;不等于 VASPKIT 的 KPATH.in 第二行固定“20 点”,也不是总共20个点。生成后应查看 KPOINTS_band 的实际行数与坐标。

kgen-default#

bash run.sh kgen-default

这一步的原生命令(在生成的 work/kgen-default/ 内执行):

sumo-kgen --density 20

kgen-seekpath#

bash run.sh kgen-seekpath

这一步的原生命令(在生成的 work/kgen-seekpath/ 内执行):

sumo-kgen --density 20 --seekpath

kgen-pymatgen#

bash run.sh kgen-pymatgen

这一步的原生命令(在生成的 work/kgen-pymatgen/ 内执行):

sumo-kgen --density 20 --pymatgen

3 Latimer–Munro 与手动路径#

本环境的 Latimer 路径使用附件兼容入口;它只在自己的 Python 进程内适配 Pymatgen 路径类型名称,不修改公共安装文件。手动路径例子明确给出 Γ、X、L 的分数倒易坐标。

kgen-latimer-compatible#

bash run.sh kgen-latimer-compatible

这一步的原生命令(在生成的 work/kgen-latimer-compatible/ 内执行):

python ../../sumo_compat.py kgen --latimer-munro --density 20

kgen-custom#

bash run.sh kgen-custom

这一步的原生命令(在生成的 work/kgen-custom/ 内执行):

sumo-kgen --density 20 --kpoints '0 0 0,0.5 0 0.5,0.5 0.5 0.5' --labels G,X,L

4 拆分点列表与生成目录#

--split 40 演示 Sumo 按点数拆分文件的能力,适合已有工作脚本的用户。客户希望按 Γ→X、X→M、M→Γ 整段自动算时,请使用 yskit 的分段能带工作流;两者的分段规则不同,不能直接互换。

kgen-split#

bash run.sh kgen-split

这一步的原生命令(在生成的 work/kgen-split/ 内执行):

sumo-kgen --density 20 --seekpath --split 40

如果希望 Sumo 同时复制完整 VASP 输入目录,先从自己获得授权的 Si 算例复制 POTCAR 到 inputs/si-bands/,再运行下面这一项。附件不提供 POTCAR,也不要从其他元素的算例借用它。

kgen-folders#

bash run.sh kgen-folders

这一步的原生命令(在生成的 work/kgen-folders/ 内执行):

sumo-kgen --seekpath --folders --split 40 --density 20

本次生成3个 split 目录,分别检查 INCAR、POSCAR、POTCAR 与 KPOINTS 后再提交计算。生成目录本身没有求解能量。

5 杂化泛函路径:保留原 SCF 权重#

杂化能带通常需要把原有带正权重的 SCF 网格与零权重路径点放在同一列表。不能把所有点都改成0,也不能把归一化权重写入只接受整数的路径生成环节。

实际9×9×9 SCF网格的365个不可约点,追加13个零权重路径点

kgen-hybrid#

bash run.sh kgen-hybrid

这一步的原生命令(在生成的 work/kgen-hybrid/ 内执行):

sumo-kgen --hybrid --split 40 --kpoints '0 0 0,0.5 0 0' --labels Q0,Q1 --density 20

本例输入 IBZKPT 恢复自真实9×9×9网格的整数简并度:365个点、权重和729;生成378个点,其中13个新路径点权重为0。它演示输入准备,并未重新进行杂化泛函计算;换体系时应使用自己同一结构、同一网格产生的 IBZKPT。

6 CASTEP 声子路径#

本版本的 sumo-kgen --phonon 用在 CASTEP 分支,生成 band.cell。VASP 声子请按 Phonopy 位移—受力—力常数流程准备,再用本专题的声子绘图命令。

kgen-phonon-path#

bash run.sh kgen-phonon-path

这一步的原生命令(在生成的 work/kgen-phonon-path/ 内执行):

sumo-kgen --code castep -p Si2.cell --phonon --seekpath --density 20

参考:Sumo 官方 v2.4.0 源码。在线手册可能描述更新版本,本篇命令以集群所用版本和附件实际运行为准。

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

查看配图

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

100%查看原图 ↗