GPUMD专题

GPUMD 弹性应变幅度对照

弹性应变幅度对照,包含终端命令、完整输入与集群实际算例。

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

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

本篇做什么#

对Si、Ge和Cu分别用0.2%、0.5%、1%的应变计算弹性矩阵。

1 准备算例#

python new-case.py si-elastic-0.002
cd work/si-elastic-0.002
ls

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

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

目录 用途或变化
si-elastic-0.002 目录名标明温度、尺寸、随机种子或应变;完整输入见下方与附件
si-elastic-0.005 目录名标明温度、尺寸、随机种子或应变;完整输入见下方与附件
si-elastic-0.01 目录名标明温度、尺寸、随机种子或应变;完整输入见下方与附件
ge-elastic-0.002 目录名标明温度、尺寸、随机种子或应变;完整输入见下方与附件
ge-elastic-0.005 目录名标明温度、尺寸、随机种子或应变;完整输入见下方与附件
ge-elastic-0.01 目录名标明温度、尺寸、随机种子或应变;完整输入见下方与附件
cu-elastic-0.002 目录名标明温度、尺寸、随机种子或应变;完整输入见下方与附件
cu-elastic-0.005 目录名标明温度、尺寸、随机种子或应变;完整输入见下方与附件
cu-elastic-0.01 目录名标明温度、尺寸、随机种子或应变;完整输入见下方与附件

2 查看和修改输入#

先优化各自晶胞,再改变compute_elastic的应变幅度。三个材料使用不同的势,不把它们解释为统一理论精度。

si-elastic-0.002 / run.in

potential potential.txt
minimize fire 0.00001 5000 1 1
compute_elastic 0.002
展开其余实例的完整控制输入

si-elastic-0.005 / run.in

potential potential.txt
minimize fire 0.00001 5000 1 1
compute_elastic 0.005

si-elastic-0.01 / run.in

potential potential.txt
minimize fire 0.00001 5000 1 1
compute_elastic 0.01

ge-elastic-0.002 / run.in

potential potential.txt
minimize fire 0.00001 5000 1 1
compute_elastic 0.002

ge-elastic-0.005 / run.in

potential potential.txt
minimize fire 0.00001 5000 1 1
compute_elastic 0.005

ge-elastic-0.01 / run.in

potential potential.txt
minimize fire 0.00001 5000 1 1
compute_elastic 0.01

cu-elastic-0.002 / run.in

potential potential.txt
minimize fire 0.00001 5000 1 1
compute_elastic 0.002

cu-elastic-0.005 / run.in

potential potential.txt
minimize fire 0.00001 5000 1 1
compute_elastic 0.005

cu-elastic-0.01 / run.in

potential potential.txt
minimize fire 0.00001 5000 1 1
compute_elastic 0.01

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

观察C11、C12、C44对幅度的敏感性。幅度过小容易受数值噪声影响,过大则可能进入非线性区。这里的静态矩阵不能替代有限温度应力涨落弹性常数。

head -n 12 elastic.out
本次集群算例 实际数值摘要
si-elastic-0.002 C11 (GPa):148.653;C12 (GPa):65.515;C44 (GPa):74.992
si-elastic-0.005 C11 (GPa):148.647;C12 (GPa):65.526;C44 (GPa):74.986
si-elastic-0.01 C11 (GPa):148.623;C12 (GPa):65.562;C44 (GPa):74.962
ge-elastic-0.002 C11 (GPa):138.513;C12 (GPa):44.391;C44 (GPa):66.824
ge-elastic-0.005 C11 (GPa):138.498;C12 (GPa):44.412;C44 (GPa):66.818
ge-elastic-0.01 C11 (GPa):138.441;C12 (GPa):44.485;C44 (GPa):66.794
cu-elastic-0.002 C11 (GPa):169.33;C12 (GPa):123.809;C44 (GPa):75.114
cu-elastic-0.005 C11 (GPa):170.797;C12 (GPa):122.968;C44 (GPa):76.106
cu-elastic-0.01 C11 (GPa):170.826;C12 (GPa):122.8;C44 (GPa):76.136

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

 148.653    65.515    65.515     0.000     0.000     0.000  
  65.515   148.653    65.515     0.000     0.000     0.000  
  65.515    65.515   148.653     0.000     0.000     0.000  
   0.000     0.000     0.000    74.992     0.000     0.000  

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

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

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

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

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

弹性应变幅度对照:集群实际输出绘制

换成自己的体系时#

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

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

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

查看配图

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

100%查看原图 ↗