GPUMD专题

GPUMD 应力相关与黏度

应力相关与黏度,包含终端命令、完整输入与集群实际算例。

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

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

本篇做什么#

复用4000 K目标温度的扩散态硅轨迹,以应力自相关积分展示黏度计算。

1 准备算例#

python new-case.py liquid-si-4000-s51
cd work/liquid-si-4000-s51
ls

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

2 查看和修改输入#

compute_viscosity 10 1000每10步取样、1000个相关步。相关窗口和整条生产轨迹不是同一个概念;仅延长轨迹不能弥补过短的相关窗口。

liquid-si-4000-s51 / run.in

potential potential.txt
velocity 4000 seed 51
time_step 1
ensemble nvt_nhc 4000 4000 100
run 50000
ensemble nve
compute_msd 10 1000
compute_sdc 10 1000
compute_viscosity 10 1000
compute_rdf 8 160 500
dump_thermo 1000
dump_xyz 100000 trajectory.xyz
run 300000

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

观察黏度积分曲线是否出现稳定平台,再谈统计平均。当前短程例子展示输出与作图,不宣称收敛的材料黏度;正式计算需要独立重复、体积与相关窗口对照。

head -n 12 viscosity.out
本次集群算例 实际数值摘要
liquid-si-4000-s51 后半程平均温度 (K):4088.62;后半程体积 (ų/atom):20.0239;MSD后半窗口拟合D (Ų/ps):2.57585

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

    0.000000000000000e+00    9.155472090576592e+03    9.330033248997252e+03    9.286334272677143e+03    2.915958980598470e+03    2.874276734886125e+03    2.904430962521877e+03    2.915958980598470e+03    2.874276734886125e+03    2.904430962521877e+03    0.000000000000000e+00    0.000000000000000e+00    0.000000000000000e+00    0.000000000000000e+00    0.000000000000000e+00    0.000000000000000e+00    0.000000000000000e+00    0.000000000000000e+00    0.000000000000000e+00
    1.000000000000000e-02    6.832621144149430e+03    6.985696698870383e+03    6.921868363954664e+03    1.896022682302860e+03    1.874751813161591e+03    1.878959301520907e+03    1.896022682302861e+03    1.874751813161591e+03    1.878959301520907e+03    1.855642783657656e-03    1.893669626100758e-03    1.881189571336786e-03    5.584980595723201e-04    5.511914663737545e-04    5.551796261489207e-04    5.584980595723201e-04    5.511914663737545e-04    5.551796261489207e-04
    2.000000000000000e-02    4.519375099600703e+03    4.635696876380862e+03    4.568536704597803e+03    7.048908334758900e+02    7.385173858592739e+02    6.919845842814747e+02    7.048908334758900e+02    7.385173858592739e+02    6.919845842814747e+02    3.173201394341148e-03    3.242495580975793e-03    3.214812470185744e-03    8.603706046979433e-04    8.544980620836957e-04    8.535737747717171e-04    8.603706046979433e-04    8.544980620836957e-04    8.535737747717171e-04
    3.000000000000000e-02    2.906958324831946e+03    2.984078139822540e+03    2.883194808601122e+03   -4.575679887754661e+01    3.811974001862149e+01   -4.482034645056376e+01   -4.575679887754661e+01    3.811974001862151e+01   -4.482034645056375e+01    4.035131696208082e-03    4.126877496587949e-03    4.079690576987633e-03    9.368723674040157e-04    9.446377089445076e-04    9.286862744388993e-04    9.368723674040157e-04    9.446377089445076e-04    9.286862744388993e-04

优先使用GPUMDkit工具#

任务完成后,在本篇算例输出目录执行:

module load gpumdkit/1.5.8
gpumdkit.sh -plt viscosity save

读取viscosity.out。先看积分是否出现稳定平台,不把最后一个点直接当黏度定值。

工具的其他用法见GPUMDkit专题。本篇自带plot.py用于结构图、统一版式和多个算例对照,保留原始数据与符号。

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

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

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

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

应力相关与黏度:集群实际输出绘制

换成自己的体系时#

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

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

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

查看配图

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

100%查看原图 ↗