Phono3py专题

Phono3py 晶格热输运入门

从真实Si位移与ABACUS力到RTA、LBTE、寿命和谱函数,按操作顺序学习。

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

Phono3py通过二阶、三阶力常数计算声子间相互作用,可用于晶格热导率、散射率、寿命、平均自由程以及频率分辨谱函数。一个常见任务分为四步:生成位移结构 → 计算并收集原子力 → 建立力常数 → 求解输运与分析输出。

本例Si16超胞与位移方向

1. 先选适合自己的入口#

当前已有的数据 从哪里开始
只有结构 生成位移与准备DFT输入
位移结构和各自的DFT力 收集力与建立力常数
fc2.hdf5、fc3.hdf5和结构YAML RTA与LBTE
已有kappa HDF5 累计热导与绘图

2. 本例体系与环境#

本组实例采用Si金刚石结构,原胞2原子,2×2×2原胞超胞共16原子,晶格常数5.43 Å;位移0.03 Å,三阶模型截断3 Å。力来自此前在鸢算科技集群完成的39个ABACUS条件:平衡结构1个、位移结构38个。这里复用真实力数据开展Phono3py后处理,没有把力常数模型的数据写成新增DFT计算。

ABACUS采用LCAO/PBE、双精度、电子k网格2×2×2。本专题采用Phono3py 4.8.2独立Python 3.11.16环境,默认Rust后端,另有C后端对照;FC3由symfc建立,FC2采用traditional并作平移/置换对称化。Phono3py这一组计算走CPU路径,前面的DFT程序可以使用GPU。

module purge
module load phono3py/4.8.2
phono3py-load --version

一次只加载一个科学Python环境;不要同时加载另一个Phonopy/ASE环境来覆盖依赖。

3. 直接复现完整实例#

下载完整实例包,解压到自己的工作目录。包内含真实输入、已有力输出、28个计算条件、工具命令、结果CSV和绘图脚本。

只读已有数据并重新画图:

bash analyze.sh

生成 analysis-reference/thermal.csv、19份模分辨CSV、figures/中的9张高清图。首次运行后保留结果;若要重新执行,在另一份新解压目录运行,脚本会保护已存在的任务目录。

需要从位移生成、力收集到28个Phono3py条件全部重新计算时,在新解压目录提交:

sbatch submit.slurm

submit.slurm是CPU资源模板,是否可提交以当前队列为准。已经获得适合的计算资源后,也可以执行:

bash run-all.sh

这个入口重新生成位移,读取包内已有ABACUS力,拟合FC2/FC3,然后依次运行28个条件、13个工具命令并画图;不会自动启动新的ABACUS或VASP计算。不要在普通登录会话中直接开展自己的大规模生产计算。

4. 结果与学习顺序#

内容 教程
结构、超胞和位移清单 位移与DFT输入
力的顺序、漂移、截断和残差 力常数
热导张量与温度 RTA/LBTE
q网格与Gaussian展宽 数值参数与收敛
同位素、边界、寿命和MFP 散射分析
JDOS、自能和谱函数 频率分辨分析
累计热导、分布图、Grüneisen 后处理工具
六个命令入口、两后端和缓存 命令与环境

本例用于学习实际流程。16原子、3 Å三阶截断和短q网格仍会影响数值,不把示例热导率当作已收敛的块体Si预测。更换体系时,应重新检查结构稳定性、电子参数、超胞、位移幅度、相互作用范围和q网格。

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

查看配图

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

100%查看原图 ↗