GPUMD专题

GPUMD 冷热源与空间温度分布

冷热源与空间温度分布,包含终端命令、完整输入与集群实际算例。

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

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

本篇做什么#

将864原子长条硅按x方向划分12组,设置冷热源并统计温度剖面。

实际模型结构,坐标单位Å

1 准备算例#

python new-case.py 13-nemd
cd work/13-nemd
ls

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

2 查看和修改输入#

model.xyz中的group整数从0开始。heat_lan 300 100 30 0 6表示0组330 K、6组270 K;整个体系周期边界,热量向两个方向传递。

13-nemd / run.in

potential potential.txt
velocity 300
time_step 1
ensemble nvt_nhc 300 300 100
run 10000
ensemble heat_lan 300 100 30 0 6
compute 0 10 100 temperature
dump_thermo 1000
run 200000

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 查看结果和本次数据#

compute 0 10 100 temperature每1000步写一次组温度。本例只演示源汇和温度剖面,不直接拟合正式热导率。计算热导率还需要稳态热流、有效截面积及双向传热因子,拟合应排除温控区及界面跳温。

head -n 12 compute.out
本次集群算例 实际数值摘要
13-nemd 后半程平均温度 (K):296.526;后半程体积 (ų/atom):20.0239

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

   3.226108e+02   3.069849e+02   3.057420e+02   2.834704e+02   2.901117e+02   2.969841e+02   2.746348e+02   2.850474e+02   2.970239e+02   2.725073e+02   2.972725e+02   3.068520e+02  -9.459424e-01   2.917124e+00
   3.297999e+02   3.287006e+02   3.252494e+02   2.963825e+02   2.932359e+02   2.981749e+02   2.746558e+02   2.812148e+02   3.082713e+02   2.909326e+02   2.903190e+02   3.088894e+02  -4.281901e+00   3.007288e+00
   3.300258e+02   3.354469e+02   3.198728e+02   2.985698e+02   2.984440e+02   2.981774e+02   2.820820e+02   2.783341e+02   2.928662e+02   2.920186e+02   3.053018e+02   3.100746e+02  -5.687187e+00   4.877246e+00
   3.240613e+02   3.156084e+02   3.099687e+02   2.822396e+02   2.961440e+02   2.859947e+02   2.720798e+02   2.968008e+02   3.102333e+02   3.039124e+02   3.079925e+02   3.364618e+02  -9.142463e+00   7.606379e+00

工具选择与输入格式#

GPUMDkit提供gpumdkit.sh -plt nemd Auto 1 20 --save --save-data。但1.5.8按冷源组编号加1推断温度组数,本例有12个组、冷源为6,不能按它推断的7组读取14列compute.out。不要裁掉真实温度列或篡改冷源编号来迎合脚本;本篇使用附件plot.py读取全部12组,保留周期冷热源布局。

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

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

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

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

冷热源与空间温度分布:集群实际输出绘制

换成自己的体系时#

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

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

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

查看配图

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

100%查看原图 ↗