FourPhonon专题

FourPhonon温度网格与求解选项

对比300/600 K及3至5网格,实际运行同位素、完整迭代和抽样分支。

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

下载Si真实结构、受力、力常数、8张图和终端脚本,保存为 si-fourphonon.zip。所有本系列文章使用同一个包:

python3 -m zipfile -e si-fourphonon.zip .
cd fourthorder-fourphonon-silicon-wave288
bash preview.sh
ls preview/figures

包中 reference/ 保存本次实算参考;work/ 是您重新生成的文件,results/data/ 是提取后的CSV。受力来自真实VASP计算;下载包不含POTCAR、波函数、完整电子输出或第三方程序。

1 先看温度和q网格#

本例同一套力常数,热导单位均为W/(m·K):

q网格 300 K 三声子 300 K 三+四声子 600 K 三声子 600 K 三+四声子
3³ 26.17719 24.06041 13.31482 11.10168
4³ 31.30840 29.51893 15.55604 13.63978
5³ 46.81802 44.13535 22.92591 20.09586

300和600K的实际网格变化

3³到5³的变化仍大,这些结果未达到q网格收敛。只在3³网格比较温度,不能据此预测材料真实温度曲线。更细网格需逐级增加,比较相邻网格热导与关键散射率;不能只比较运行是否正常结束。四声子任务随网格增长很快,先做小网格核对输入,再安排长任务。

2 修改参数时用新目录#

在一个已经准备好的输运目录基础上:

mkdir my-qmesh
cp work/transport/CPU-q3-T300-3plus4ph/{CONTROL,FORCE_CONSTANTS_2ND,FORCE_CONSTANTS_3RD,FORCE_CONSTANTS_4TH} my-qmesh/
cd my-qmesh
${EDITOR:-vi} CONTROL
# 在CONTROL中修改ngrid或T,保存后通过CPU作业脚本运行
cat CONTROL

实际生产应只复制 CONTROL 与三份力常数至干净目录,避免把旧输出误认为新结果。

关键行如 ngrid(:)=4 4 4、T=600。scalebroad=1控制能量守恒的自适应展宽尺度;它也应检查,不能通过随意增大展宽只为得到平滑曲线。本系列小例没有宣布展宽或q网格收敛。

3 同位素散射#

将 isotopes=.true.,并指定质量方差因子;本例保持动力学质量28.085u不变,只对比额外同位素散射。使用Si自然丰度0.92223/0.04685/0.03092及相应同位素质量,计算 g=Σc(1−m/平均质量)²=0.00020070044882143897。

# 在CONTROL中使用
gfactors(1)=0.00020070044882143897
# flags
isotopes=.true., autoisotopes=.false.

300 K、3³网格、三加四声子RTA热导由24.06041降到 23.12866 W/(m·K)。这不是更换原胞平均质量后得到的完整同位素替换预测。

4 完整迭代与RTA#

CPU例将 convergence=.true.、four_phonon_iteration=.true.,eps=1E-6、maxiter=200。本例最终在第9次迭代收敛,热导为 18.81389 W/(m·K);RTA初值仍为24.06041。

cat work/transport/CPU-q3-T300-3plus4ph-iteration/T300K/BTE.kappa_tensor
tail -n 20 work/transport/CPU-q3-T300-3plus4ph-iteration/native.log

查看最后两步的变化,同时确认没有只因达到maxiter而退出。RTA与迭代的差别是输运近似,不能把后者称为“四声子修正百分比”而忽略求解方法变化。

5 抽样选项#

CPU版示例将 num_sample_process_3ph=10000、num_sample_process_4ph=10000,其余相空间抽样参数保持−1。本次这一组得到约 24.03656 W/(m·K)。它只演示抽样入口,不证明10000足够;程序当前用 random_seed() 初始化,没有本教程可设置的固定种子入口,因此独立复跑会有变化。

做定量抽样研究,应增加样本数、做多次独立重复并报告离散度;不要把一次很接近全枚举的数字当成统计误差。当前GPU入口不支持这组抽样或完整迭代配置,使用CPU模块。

同一实际模型的RTA、同位素、迭代和抽样

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

查看配图

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

100%查看原图 ↗