LAMMPS 专题

LAMMPS 热输运工作流怎么选

把GK、直接NEMD、反向NEMD、界面与尺寸检查串起来,按目标选择实际操作例子。

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

下载完整输入、原生温度剖面、热浴功与绘图脚本,保存为 example.zip:

python3 -m zipfile -e example.zip .
cd lammps-direct-thermal-examples
bash results.sh
bash plot.sh

环境为LAMMPS 30Sep2026、Kokkos 5.2.1双精度、C++20 / CUDA 12.8构建,MPI与模块说明见版本环境。本批纯Si在P100、Si/Ge在V100 16G实际运行,每例一张GPU、一个MPI进程。下面的下载脚本可按自己的资源选择一种GPU入口。

reference-results是实际结果,inputs是可继续使用的输入,reference-data是提取后的CSV。查看与作图不启动新的MD。

先按问题选择#

目标 主要操作 实际教程
平衡态热流相关 准备平衡轨迹,计算热流、自相关和运行积分 Green–Kubo
给定温差看传热 冷热热浴,提取能量斜率和温度梯度 Si直接NEMD
通过交换动能形成梯度 累计交换能量、分层温度、两路周期热流 反向NEMD统计
界面热阻 材料分区、界面两侧外推、正确分配热流 Si/Ge界面
判断有限尺寸与统计 改变长度、采样窗口和独立种子 尺寸/采样比较

每种方法都有一套真实输入和输出。GK与反向NEMD的已有LJ例子保留约化单位;本次Si/Ge直接NEMD采用metal单位。不能把LJ表格中的数字直接标为W/(m·K)。

推荐操作顺序#

先跑一个小模型检查势、原子数、时间步与输出,再确认温度和能量行为;随后确定统计窗口,提取热流、梯度或相关积分,最后才讨论长度和时间是否够用。

本包的完整计算链是10 ps平衡、50 ps短采样、从末态追加200 ps,再在终端提取:

sbatch p100.slurm

等待整批结束:

module load ase/3.29.0
python3 collect.py --root work --output results
bash plot.sh --data-dir results

V100 16G使用对应 v100.slurm,按自己的权限选一个入口。具体物理输入与每个文件的作用见对应教程;本页只把顺序串起来。

三类常见归一化#

量 本例中的关键约定
直接/反向NEMD周期热流 区分总能量传输率与每一条路径;本对称布局有因子2
温度梯度 fraction坐标先乘盒长,K/Å再换K/m
GK积分 按所用热流是否已除体积选择前因子,避免体积除两次

多体势、约束分子或不同应力定义的GK热流需要单独核查。本次Si/Ge直接NEMD从外部热浴能量累计得到热流,不依赖把原子LJ示例的热流构造直接移植过来。

先看这些已有数据#

head -n 9 reference-data/short-Thermal-summary.csv
head -n 9 reference-data/extended-Thermal-summary.csv

短采样与追加采样并列保留,既能看计算怎么运行,也能看统计窗口改变时结果怎样变化。完成程序运行、获得一个数值和得到可发表的收敛材料参数,是需要分别判断的几步。

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

查看配图

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

100%查看原图 ↗