LAMMPS 专题

LAMMPS 拉伸的横向控压设置

在相同Ni初态、速率和温度下比较固定横向尺寸与横向零压目标,查看横向收缩及应力。

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

沿 y 拉伸时,x、z 是保持长度,还是允许横向收缩,会直接改变测到的应力。本篇与镍拉伸实操共用同一下载包和计算结果。

下载本系列共用的完整算例和真实数据包。

1. 两种边界条件怎样选#

做法 x、z 的处理 y 的处理 适合先观察什么
fixed 长度固定,NVT 温控 指定工程应变率 受横向约束时的响应
transverse 分别以 0 bar 为目标控压,NPT 温控/压控 指定工程应变率 允许横向收缩时的响应

两种做法都使用周期胞,没有自由侧表面。它们在每个 GPU、速率和种子下从相同预热末态出发;改变的是加载阶段的横向处理,不是另外换一个势或初始结构。

2. 输入怎么改#

固定横向尺寸版本在预热后使用:

fix bath all nvt temp 100 100 0.1
fix load all deform 0 y erate 0.005 remap x units box

横向控压版本则是:

fix bath all npt temp 100 100 0.1 x 0 0 0.5 z 0 0 0.5 couple none
fix load all deform 0 y erate 0.005 remap x units box

x 0 0 0.5 与 z 0 0 0.5 分别给出起止压力目标 0 bar、压控阻尼 0.5 ps;couple none 允许 x、z 独立调节。不要再在同一方向叠加另一份 NPT、deform 或其他晶胞控制。本例 NPT 只控制 x、z,y 仍由应变率控制。

NPT 中的 0 是目标压力,不是要求每一帧的横向压力都恰好为零。500 原子、100 K、4 ps 的瞬时应力会有波动,也尚不足以证明压控或材料性质收敛。

3. 实际运行与检查#

在前篇完成 bash run.sh 后,横向控压结果已经位于 work/transverse/,无需再次提交:

head -n 4 tables/p100-npt-rate0.015-seed56001.csv
head -n 18 work/transverse/p100-npt-rate0.015-seed56001/final.data
cat work/transverse/p100-npt-rate0.015-seed56001/in.lmp

横向应力与晶胞长度变化的实际数据

上排是 σxx、σzz;下排是 x、z 相对 17.6 Å 的长度变化。左侧固定横向尺寸,所以长度变化为零;右侧允许收缩,横向应力围绕目标波动。图中是 P100、seed56001 的两种速率。

在速率 0.015 ps⁻¹、末帧 6% 应变时,相同初态的结果为:

量 固定横向尺寸 横向控压
Lx /Å 17.600000 17.306822
Lz /Å 17.600000 17.249274
总 Cauchy σyy /GPa 11.345214 7.394665
总 σxx /GPa 6.702386 −0.005811
总 σzz /GPa 6.682005 −0.121885

这是同一小模型在不同横向约束下的响应,不能把两列差异解释为 GPU 性能差异。也不要在未说明边界条件时,把任意一列直接称为镍的实验拉伸强度。

4. 温度和能量一起看#

拉伸中的瞬时温度和每原子势能变化

虚线为 100 K 目标,温度会围绕它波动。势能在外部加载时变化是正常的:温控器还会与体系交换能量,所以不能把这类控温拉伸当作 NVE 能量守恒测试。

本例是操作起点。用于研究时,先使初始晶格和压力适合目标条件,再系统检查尺寸、时间步、预热长度、应变率、种子和势函数适用范围;从 CSV 中比较相同应变下的数据,并对稳态区间做统计。

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

查看配图

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

100%查看原图 ↗