GPUMD 体积扫描与能量最低点
体积扫描与能量最低点,包含终端命令、完整输入与集群实际算例。
阅读本篇目录
本文使用鸢算科技集群GPUMD 5.9.1实际运行结果。先下载全部实例与绘图脚本并解压,进入gpumd-examples目录。参考结果在cases,新运行放在work;不要在参考目录重复运行,让输出不断追加。
本篇做什么#
对512原子硅将晶胞长度从0.96倍扫描到1.04倍,得到能量—体积曲线。
1 准备算例#
python new-case.py 04-cohesive
cd work/04-cohesive
ls
附件中已包含结构与势文件,不需要自己输入几百行坐标。若要从自己的结构开始,请先阅读建模与输入文件。
2 查看和修改输入#
compute_cohesive的最后一位6表示xyz同时缩放;步长0.001为线性尺寸缩放步长。体积按缩放系数的三次方改变,而不是线性改变。本例在每个缩放点进行固定晶胞的内部原子松弛(程序内部SD最小化),不在该点重新优化晶胞体积。
04-cohesive / run.in
potential potential.txt
compute_cohesive 0.96 1.04 6
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 查看结果和本次数据#
cohesive.out第1列为长度缩放系数,第2列为整个体系势能。除以512才得到eV/atom。此处是该经验势的静态能量曲线;不能将其绝对能量与不同势函数或DFT能量直接比较。
head -n 12 cohesive.out
| 本次集群算例 | 实际数值摘要 |
|---|---|
04-cohesive |
最低能长度系数:1;最低能 (eV/atom):-4.62962 |
本次cohesive.out开头的数据(完整文件在附件中):
9.6000000e-01 -2.3199508e+03
9.6100000e-01 -2.3225780e+03
9.6200000e-01 -2.3251264e+03
9.6300000e-01 -2.3275968e+03
优先使用GPUMDkit工具#
任务完成后,在本篇算例输出目录执行:
module load gpumdkit/1.5.8
gpumdkit.sh -plt cohesive save
读取cohesive.out并生成能量曲线;坐标和每原子能量定义按本篇实际输出理解。
工具的其他用法见GPUMDkit专题。本篇自带plot.py用于结构图、统一版式和多个算例对照,保留原始数据与符号。
5 用自己的输出重新画图#
回到附件根目录,加载绘图环境:
cd ../..
module load ase/3.29.0
python plot.py --chapter cohesive --root work
如果想先查看附件里的参考数据,执行python plot.py --chapter cohesive。生成的图片在相应根目录的figures中,脚本只读取数据,不修改结果。

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