GPUMDkit 温度、结构、MSD与振动绘图
温度、结构、MSD与振动绘图:终端操作、输入输出、集群示例与适用条件。
阅读本篇目录
本篇以集群GPUMDkit 1.5.8为准。下载输入与参考结果,解压进入gpumdkit-examples。所有工具操作在自己的工作副本执行。
module load gpumdkit/1.5.8
gpumdkit.sh -doctor
按什么顺序操作#
在输出文件所在目录调用工具。无图形界面的SSH终端使用保存参数,随后下载PNG查看。thermo、thermo2、thermo3只是排版不同;比较时还要核对采样间隔、是否含平衡段、晶胞体积单位。rdf_pmf使用−kBT ln g(r),温度必须与轨迹一致;g(r)为0的位置不能解释为有限PMF。
本章功能与终端入口#
带“→”的是交互菜单:先运行gpumdkit.sh,再逐项输入编号;不是把箭头整行粘进终端。
| 功能 | 命令或菜单 | 输入、输出与关键条件 |
|---|---|---|
| 绘图 thermo | gpumdkit.sh -plt thermo save |
thermo.out;温度、能量、压力等 |
| 绘图 thermo2 | gpumdkit.sh -plt thermo2 save |
thermo.out,第二种版式 |
| 绘图 thermo3 | gpumdkit.sh -plt thermo3 save |
thermo.out,第三种版式 |
| 绘图 rdf | gpumdkit.sh -plt rdf save |
rdf.out;径向分布 |
| 绘图 rdf_pmf | gpumdkit.sh -plt rdf_pmf 300 2 save |
rdf.out,第2列、300 K;温度和列号按体系选择 |
| 绘图 vac | gpumdkit.sh -plt vac save |
sdc.out;速度自相关 |
| 绘图 cohesive | gpumdkit.sh -plt cohesive save |
cohesive.out;能量扫描 |
| 绘图 xrd | gpumdkit.sh -plt xrd xrd.out save |
413生成的xrd.out,第2列角度,第4列强度 |
| 绘图 xrd_comp | gpumdkit.sh -plt xrd_comp save |
各温度K/xrd.out;温度对照 |
| 绘图 plane-grid | gpumdkit.sh -plt plane-grid -i model.xyz -d displacements.dat -e Ti |
局域位移平面图,需要对应原子与ferrodispcalc |
| 绘图 msd | gpumdkit.sh -plt msd save |
四列MSD或原生七列MSD前四列 |
| 绘图 msd_conv | gpumdkit.sh -plt msd_conv save |
msd_step*.out;不同采样长度对照 |
| 绘图 msd_all | gpumdkit.sh -plt msd_all msd.out Li P S |
GPUMD all_groups输出,元素顺序须与group对应 |
| 绘图 sdc | gpumdkit.sh -plt sdc save |
单组七列msd.out的SDC列;不读取sdc.out |
| 绘图 msd_sdc | gpumdkit.sh -plt msd_sdc save |
单组七列msd.out;MSD与SDC合图 |
| 绘图 doas | gpumdkit.sh -plt doas doas.out Pb save |
404输出,指定元素;不是电子DOS |
| 绘图 pdos | gpumdkit.sh -plt pdos save |
model.xyz、run.in、dos.out及可选mvac.out;振动DOS |
| 绘图 phonon | gpumdkit.sh -plt phonon phonon_NEP.dat QPOINTS save |
414生成的数据;不能直接替换成原生omega2.out |
| 绘图 phonon_comp | gpumdkit.sh -plt phonon_comp phonon_DFT.dat phonon_NEP.dat save |
至少两组同路径、同采样、同支数数据;QPOINTS保持一致 |
声子与Excel导出的独立补充环境#
414需要phonopy;PDOS导出xlsx需要openpyxl。只在自己的虚拟环境补充,公共模块保持原样:
module load gpumdkit/1.5.8
python -m venv --system-site-packages ~/.venvs/gpumdkit-extra
~/.venvs/gpumdkit-extra/bin/pip install phonopy==4.8.3 openpyxl==3.1.5
export GPUMDKIT_EXTRA_PYTHON=~/.venvs/gpumdkit-extra/bin/python
下方带-extra的示例用这个解释器调用工具自带脚本。
实际操作:plt-thermo#
从附件根目录新建这个示例:
python new-case.py plt-thermo
cd work/plt-thermo
执行以下命令:
gpumdkit.sh -plt thermo save
本次生成的参考文件:thermo.png、thermo.out。自己的输出会写在当前work/plt-thermo目录。

下一例开始前执行cd ../..回到附件根目录;不要把两个例子的输出放在同一目录。
实际操作:plt-thermo2#
从附件根目录新建这个示例:
python new-case.py plt-thermo2
cd work/plt-thermo2
执行以下命令:
gpumdkit.sh -plt thermo2 save
本次生成的参考文件:thermo.png、thermo.out。自己的输出会写在当前work/plt-thermo2目录。

下一例开始前执行cd ../..回到附件根目录;不要把两个例子的输出放在同一目录。
实际操作:plt-thermo3#
从附件根目录新建这个示例:
python new-case.py plt-thermo3
cd work/plt-thermo3
执行以下命令:
gpumdkit.sh -plt thermo3 save
本次生成的参考文件:thermo.png、thermo.out。自己的输出会写在当前work/plt-thermo3目录。

下一例开始前执行cd ../..回到附件根目录;不要把两个例子的输出放在同一目录。
实际操作:plt-rdf#
从附件根目录新建这个示例:
python new-case.py plt-rdf
cd work/plt-rdf
执行以下命令:
gpumdkit.sh -plt rdf save
本次生成的参考文件:rdf.out、thermo.out、rdf.png、adf.out。自己的输出会写在当前work/plt-rdf目录。

下一例开始前执行cd ../..回到附件根目录;不要把两个例子的输出放在同一目录。
实际操作:plt-vac#
从附件根目录新建这个示例:
python new-case.py plt-vac
cd work/plt-vac
执行以下命令:
gpumdkit.sh -plt vac save
本次生成的参考文件:sdc.out、msd.out、thermo.out、viscosity.out、vac.png。自己的输出会写在当前work/plt-vac目录。

下一例开始前执行cd ../..回到附件根目录;不要把两个例子的输出放在同一目录。
实际操作:plt-msd#
从附件根目录新建这个示例:
python new-case.py plt-msd
cd work/plt-msd
执行以下命令:
gpumdkit.sh -plt msd save
本次生成的参考文件:sdc.out、msd.out、thermo.out、viscosity.out、msd.png。自己的输出会写在当前work/plt-msd目录。

下一例开始前执行cd ../..回到附件根目录;不要把两个例子的输出放在同一目录。
实际操作:plt-sdc#
从附件根目录新建这个示例:
python new-case.py plt-sdc
cd work/plt-sdc
执行以下命令:
gpumdkit.sh -plt sdc save
本次生成的参考文件:sdc.out、msd.out、thermo.out、viscosity.out、sdc.png。自己的输出会写在当前work/plt-sdc目录。

下一例开始前执行cd ../..回到附件根目录;不要把两个例子的输出放在同一目录。
实际操作:plt-msd_sdc#
从附件根目录新建这个示例:
python new-case.py plt-msd_sdc
cd work/plt-msd_sdc
执行以下命令:
gpumdkit.sh -plt msd_sdc save
本次生成的参考文件:sdc.out、msd.out、thermo.out、msd_sdc.png、viscosity.out。自己的输出会写在当前work/plt-msd_sdc目录。

下一例开始前执行cd ../..回到附件根目录;不要把两个例子的输出放在同一目录。
实际操作:plt-cohesive#
从附件根目录新建这个示例:
python new-case.py plt-cohesive
cd work/plt-cohesive
执行以下命令:
gpumdkit.sh -plt cohesive save
本次生成的参考文件:cohesive.png、cohesive.out。自己的输出会写在当前work/plt-cohesive目录。

下一例开始前执行cd ../..回到附件根目录;不要把两个例子的输出放在同一目录。
实际操作:rdf-pmf-correct#
从附件根目录新建这个示例:
python new-case.py rdf-pmf-correct
cd work/rdf-pmf-correct
执行以下命令:
gpumdkit.sh -plt rdf_pmf 300 2 save
本次生成的参考文件:rdf.out、thermo.out、rdf_pmf.png、adf.out。自己的输出会写在当前work/rdf-pmf-correct目录。

下一例开始前执行cd ../..回到附件根目录;不要把两个例子的输出放在同一目录。
实际操作:pdos-extra#
从附件根目录新建这个示例:
python new-case.py pdos-extra
cd work/pdos-extra
执行以下命令:
"$GPUMDKIT_EXTRA_PYTHON" "$GPUMDkit_path/Scripts/plt_scripts/plt_pdos.py" save
本次生成的参考文件:dos.out、thermo.out、heat_capacity.png、mvac.out、vac_pdos.png。自己的输出会写在当前work/pdos-extra目录。


下一例开始前执行cd ../..回到附件根目录;不要把两个例子的输出放在同一目录。