GPUMD专题

GPUMD 热导率的尺寸与温度对照

热导率的尺寸与温度对照,包含终端命令、完整输入与集群实际算例。

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

本文使用鸢算科技集群GPUMD 5.9.1实际运行结果。先下载全部实例与绘图脚本并解压,进入gpumd-examples目录。参考结果在cases,新运行放在work;不要在参考目录重复运行,让输出不断追加。

本篇做什么#

对512、1728、4096原子硅,在300、600、900 K各运行两组1 ns的HNEMD轨迹。

1 准备算例#

python new-case.py si-hnemd-n4-t300-s41
cd work/si-hnemd-n4-t300-s41
ls

附件中已包含结构与势文件,不需要自己输入几百行坐标。若要从自己的结构开始,请先阅读建模与输入文件。

本篇对应以下算例,每个都可以用python new-case.py 目录名单独建立工作副本。

目录 用途或变化
si-hnemd-n4-t300-s41 名称中的n为各方向晶胞重复数,t为K、s为随机种子
si-hnemd-n4-t300-s42 名称中的n为各方向晶胞重复数,t为K、s为随机种子
si-hnemd-n4-t600-s41 名称中的n为各方向晶胞重复数,t为K、s为随机种子
si-hnemd-n4-t600-s42 名称中的n为各方向晶胞重复数,t为K、s为随机种子
si-hnemd-n4-t900-s41 名称中的n为各方向晶胞重复数,t为K、s为随机种子
si-hnemd-n4-t900-s42 名称中的n为各方向晶胞重复数,t为K、s为随机种子
si-hnemd-n6-t300-s41 名称中的n为各方向晶胞重复数,t为K、s为随机种子
si-hnemd-n6-t300-s42 名称中的n为各方向晶胞重复数,t为K、s为随机种子
si-hnemd-n6-t600-s41 名称中的n为各方向晶胞重复数,t为K、s为随机种子
si-hnemd-n6-t600-s42 名称中的n为各方向晶胞重复数,t为K、s为随机种子
si-hnemd-n6-t900-s41 名称中的n为各方向晶胞重复数,t为K、s为随机种子
si-hnemd-n6-t900-s42 名称中的n为各方向晶胞重复数,t为K、s为随机种子
si-hnemd-n8-t300-s41 名称中的n为各方向晶胞重复数,t为K、s为随机种子
si-hnemd-n8-t300-s42 名称中的n为各方向晶胞重复数,t为K、s为随机种子
si-hnemd-n8-t600-s41 名称中的n为各方向晶胞重复数,t为K、s为随机种子
si-hnemd-n8-t600-s42 名称中的n为各方向晶胞重复数,t为K、s为随机种子
si-hnemd-n8-t900-s41 名称中的n为各方向晶胞重复数,t为K、s为随机种子
si-hnemd-n8-t900-s42 名称中的n为各方向晶胞重复数,t为K、s为随机种子

2 查看和修改输入#

所有组保持相同步长、驱动力、势函数和输出间隔。改变温度时先独立平衡;比较大小盒子时用每组相同统计长度,避免把采样长短当成尺寸效应。

si-hnemd-n4-t300-s41 / run.in

potential potential.txt
velocity 300 seed 41
time_step 1
ensemble nvt_nhc 300 300 100
run 20000
ensemble nvt_nhc 300 300 100
compute_hnemd 1000 0.00001 0 0
dump_thermo 1000
run 1000000
展开其余实例的完整控制输入

si-hnemd-n4-t300-s42 / run.in

potential potential.txt
velocity 300 seed 42
time_step 1
ensemble nvt_nhc 300 300 100
run 20000
ensemble nvt_nhc 300 300 100
compute_hnemd 1000 0.00001 0 0
dump_thermo 1000
run 1000000

si-hnemd-n4-t600-s41 / run.in

potential potential.txt
velocity 600 seed 41
time_step 1
ensemble nvt_nhc 600 600 100
run 20000
ensemble nvt_nhc 600 600 100
compute_hnemd 1000 0.00001 0 0
dump_thermo 1000
run 1000000

si-hnemd-n4-t600-s42 / run.in

potential potential.txt
velocity 600 seed 42
time_step 1
ensemble nvt_nhc 600 600 100
run 20000
ensemble nvt_nhc 600 600 100
compute_hnemd 1000 0.00001 0 0
dump_thermo 1000
run 1000000

si-hnemd-n4-t900-s41 / run.in

potential potential.txt
velocity 900 seed 41
time_step 1
ensemble nvt_nhc 900 900 100
run 20000
ensemble nvt_nhc 900 900 100
compute_hnemd 1000 0.00001 0 0
dump_thermo 1000
run 1000000

si-hnemd-n4-t900-s42 / run.in

potential potential.txt
velocity 900 seed 42
time_step 1
ensemble nvt_nhc 900 900 100
run 20000
ensemble nvt_nhc 900 900 100
compute_hnemd 1000 0.00001 0 0
dump_thermo 1000
run 1000000

si-hnemd-n6-t300-s41 / run.in

potential potential.txt
velocity 300 seed 41
time_step 1
ensemble nvt_nhc 300 300 100
run 20000
ensemble nvt_nhc 300 300 100
compute_hnemd 1000 0.00001 0 0
dump_thermo 1000
run 1000000

si-hnemd-n6-t300-s42 / run.in

potential potential.txt
velocity 300 seed 42
time_step 1
ensemble nvt_nhc 300 300 100
run 20000
ensemble nvt_nhc 300 300 100
compute_hnemd 1000 0.00001 0 0
dump_thermo 1000
run 1000000

si-hnemd-n6-t600-s41 / run.in

potential potential.txt
velocity 600 seed 41
time_step 1
ensemble nvt_nhc 600 600 100
run 20000
ensemble nvt_nhc 600 600 100
compute_hnemd 1000 0.00001 0 0
dump_thermo 1000
run 1000000

si-hnemd-n6-t600-s42 / run.in

potential potential.txt
velocity 600 seed 42
time_step 1
ensemble nvt_nhc 600 600 100
run 20000
ensemble nvt_nhc 600 600 100
compute_hnemd 1000 0.00001 0 0
dump_thermo 1000
run 1000000

si-hnemd-n6-t900-s41 / run.in

potential potential.txt
velocity 900 seed 41
time_step 1
ensemble nvt_nhc 900 900 100
run 20000
ensemble nvt_nhc 900 900 100
compute_hnemd 1000 0.00001 0 0
dump_thermo 1000
run 1000000

si-hnemd-n6-t900-s42 / run.in

potential potential.txt
velocity 900 seed 42
time_step 1
ensemble nvt_nhc 900 900 100
run 20000
ensemble nvt_nhc 900 900 100
compute_hnemd 1000 0.00001 0 0
dump_thermo 1000
run 1000000

si-hnemd-n8-t300-s41 / run.in

potential potential.txt
velocity 300 seed 41
time_step 1
ensemble nvt_nhc 300 300 100
run 20000
ensemble nvt_nhc 300 300 100
compute_hnemd 1000 0.00001 0 0
dump_thermo 1000
run 1000000

si-hnemd-n8-t300-s42 / run.in

potential potential.txt
velocity 300 seed 42
time_step 1
ensemble nvt_nhc 300 300 100
run 20000
ensemble nvt_nhc 300 300 100
compute_hnemd 1000 0.00001 0 0
dump_thermo 1000
run 1000000

si-hnemd-n8-t600-s41 / run.in

potential potential.txt
velocity 600 seed 41
time_step 1
ensemble nvt_nhc 600 600 100
run 20000
ensemble nvt_nhc 600 600 100
compute_hnemd 1000 0.00001 0 0
dump_thermo 1000
run 1000000

si-hnemd-n8-t600-s42 / run.in

potential potential.txt
velocity 600 seed 42
time_step 1
ensemble nvt_nhc 600 600 100
run 20000
ensemble nvt_nhc 600 600 100
compute_hnemd 1000 0.00001 0 0
dump_thermo 1000
run 1000000

si-hnemd-n8-t900-s41 / run.in

potential potential.txt
velocity 900 seed 41
time_step 1
ensemble nvt_nhc 900 900 100
run 20000
ensemble nvt_nhc 900 900 100
compute_hnemd 1000 0.00001 0 0
dump_thermo 1000
run 1000000

si-hnemd-n8-t900-s42 / run.in

potential potential.txt
velocity 900 seed 42
time_step 1
ensemble nvt_nhc 900 900 100
run 20000
ensemble nvt_nhc 900 900 100
compute_hnemd 1000 0.00001 0 0
dump_thermo 1000
run 1000000

3 提交并检查进度#

sbatch run.sh
squeue -u "$USER"
tail -n 20 run.log

默认脚本用于V100核时队列。P100或套餐用户先运行yskit,选择复制Slurm脚本及匹配的用户类型、GPUMD版本、GPU型号。单进程启动,不要再套mpirun启动多个相同实例。

本例在计算节点执行的命令为:

gpumd > run.log 2>&1

这条命令已经在提交脚本内,平时只需sbatch run.sh。等待任务结束、查看日志,再读取结果。

4 查看结果和本次数据#

本组弱驱动力、有限时间的结果仍有明显统计波动,部分均值为负;目前不能据此得出热导率的尺寸或温度趋势。 本例保留这些数据,演示为什么要增加独立重复、延长采样,并在保持线性响应的前提下检查驱动力。

图中逐条显示末半程均值,并保留两个独立重复的差异。只有两组重复不足以建立可靠置信区间;1 ns也不自动意味着收敛。本图用于学习如何安排尺寸/温度对照,不能直接当成材料定值。

head -n 12 kappa.out
本次集群算例 实际数值摘要
si-hnemd-n4-t300-s41 后半程平均温度 (K):300.217;后半程体积 (ų/atom):20.0239;后半程κx (W/mK):-148.397
si-hnemd-n4-t300-s42 后半程平均温度 (K):299.724;后半程体积 (ų/atom):20.0239;后半程κx (W/mK):-124.11
si-hnemd-n4-t600-s41 后半程平均温度 (K):601.468;后半程体积 (ų/atom):20.0239;后半程κx (W/mK):441.641
si-hnemd-n4-t600-s42 后半程平均温度 (K):600.138;后半程体积 (ų/atom):20.0239;后半程κx (W/mK):-84.1772
si-hnemd-n4-t900-s41 后半程平均温度 (K):899.179;后半程体积 (ų/atom):20.0239;后半程κx (W/mK):-96.2098
si-hnemd-n4-t900-s42 后半程平均温度 (K):899.727;后半程体积 (ų/atom):20.0239;后半程κx (W/mK):214.887
si-hnemd-n6-t300-s41 后半程平均温度 (K):299.918;后半程体积 (ų/atom):20.0239;后半程κx (W/mK):156.628
si-hnemd-n6-t300-s42 后半程平均温度 (K):299.676;后半程体积 (ų/atom):20.0239;后半程κx (W/mK):71.5254
si-hnemd-n6-t600-s41 后半程平均温度 (K):599.169;后半程体积 (ų/atom):20.0239;后半程κx (W/mK):48.8645
si-hnemd-n6-t600-s42 后半程平均温度 (K):599.684;后半程体积 (ų/atom):20.0239;后半程κx (W/mK):-1.10492
si-hnemd-n6-t900-s41 后半程平均温度 (K):901;后半程体积 (ų/atom):20.0239;后半程κx (W/mK):49.3909
si-hnemd-n6-t900-s42 后半程平均温度 (K):900.362;后半程体积 (ų/atom):20.0239;后半程κx (W/mK):-36.9327
si-hnemd-n8-t300-s41 后半程平均温度 (K):299.842;后半程体积 (ų/atom):20.0239;后半程κx (W/mK):189.566
si-hnemd-n8-t300-s42 后半程平均温度 (K):299.826;后半程体积 (ų/atom):20.0239;后半程κx (W/mK):102.436
si-hnemd-n8-t600-s41 后半程平均温度 (K):600.108;后半程体积 (ų/atom):20.0239;后半程κx (W/mK):98.5721
si-hnemd-n8-t600-s42 后半程平均温度 (K):599.909;后半程体积 (ų/atom):20.0239;后半程κx (W/mK):46.7242
si-hnemd-n8-t900-s41 后半程平均温度 (K):901.135;后半程体积 (ų/atom):20.0239;后半程κx (W/mK):38.0832
si-hnemd-n8-t900-s42 后半程平均温度 (K):899.086;后半程体积 (ų/atom):20.0239;后半程κx (W/mK):-91.3559

本次kappa.out开头的数据(完整文件在附件中):

     -307.801327848509459      -38.182399642824507     -612.114821189521535      763.799548629168271     1803.567896624835385
      -67.714134612919267     -480.992716785962045     -969.804501402535720      488.840148739061249     1698.249020346251200
     -419.051181741503399     -216.105658729372692     -692.580900890828275      968.686394154072104     1609.711436873081311
      -91.215218433778091     -542.790774976087505      194.851255215265411      285.746641424434699     1672.478685781814420

5 用自己的输出重新画图#

回到附件根目录,加载绘图环境:

cd ../..
module load ase/3.29.0
python plot.py --chapter thermal-size --root work

本篇包含多个目录,需先完成上表全部算例,才能画完整对照图。

如果想先查看附件里的参考数据,执行python plot.py --chapter thermal-size。生成的图片在相应根目录的figures中,脚本只读取数据,不修改结果。

热导率的尺寸与温度对照:集群实际输出绘制

换成自己的体系时#

先确认结构、元素和势函数适用范围,再确定温度、边界条件、时间步长与统计长度。随机初速度会使短程数值不同;复现时先比较数量级、趋势、能量稳定性和输出维度。正式研究应做势函数可靠性、尺寸与时间收敛检查。

返回专题导航 · GPUMD官方输入说明

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

查看配图

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

100%查看原图 ↗