CP2K专题

CP2K续算、RDF与MSD实操

250+250步续算对照完整500步,读取真实轨迹并解释短晶体样例的范围。

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

下载完整输入、实际输出、续算文件和五张高清图。在已分配CPU资源内,新解压目录执行 bash run.sh,计算写入 work/cases,分析写入 work/analysis,图片在 work/figures。

1 MD续算需要完整动力学状态#

本例把相同NVE轨迹分成250步加250步,和完整500步逐步比较。文本restart包含对应动力学状态;仅复制最后一帧坐标会丢失速度等信息,不能视为原轨迹的连续续算。

bash run.sh
ls work/cases/ar-half/*restart
cat inputs/ar-resume/input.inp

续算输入中的关键段:

&EXT_RESTART
 RESTART_FILE_NAME ../ar-half/ar-half-1.restart
 RESTART_DEFAULT .TRUE.
&END EXT_RESTART

同时保持相同力场、结构、边界、时间步和NVE设置。这里MD段的 STEPS 250再执行250步,原step250之后得到step251至500,最终时间1000fs;项目名改为ar-resume,使输出单独保存。

2 用实际数据检查连续性#

head work/cases/ar-resume/ar-resume-1.ener
cat work/analysis/RESULTS.json

完整500步有501行物理记录,第一段有251行,续算段有250行。拼接时不重复step250。时间、动能、温度、势能和守恒量的逐步对照完全一致;壁钟耗时不属于物理轨迹,不用于这种比较。

完整运行与续算对照,以及NPT体积响应

换成自己的任务时,先确认restart对应正确模型与步数;恒温/恒压任务还需保留相应扩展状态。电子波函数重启和MD状态重启用途不同,不能互相替代。

3 先看轨迹与晶胞#

module load ase/3.29.0
ase gui -t -g i work/cases/ar-nve-2fs/ar-nve-2fs-pos-1.xyz
head work/cases/ar-npt/ar-npt-1.cell

XYZ保存坐标,NPT晶胞随时间变化,应与同一步的CELL记录配套。本例每10步保存坐标,即2fs轨迹每20fs一帧;NVE得到51个快照,所有帧均为108原子。

4 RDF:距离分布要有正确归一#

附件分析程序读取实际周期晶胞,使用最小镜像距离和球壳体积计算g(r):

module load ase/3.29.0
python work/analyze.py
python work/plot_results.py
head work/analysis/rdf.csv

本例r范围0–7Å、步长0.05Å,小于半盒长。归一使用有限N的 N(N−1)/V,并与ASE默认 N²/V约定按108/107因子对照。比较不同工具的RDF前,先统一这种归一约定。

短Ar晶体轨迹的RDF与MSD

这里保留明显的晶体近邻峰。它是FCC初始结构的短时间动力学,不以这条曲线代替平衡液体的RDF。

5 MSD:先展开周期轨迹#

周期包裹坐标会在边界产生跳变。脚本先对相邻快照使用最小镜像位移,再累积成连续坐标,计算相对初始帧的平均平方位移。

head work/analysis/msd.csv

末态MSD为 0.0268372Ų,曲线主要反映晶体振动。没有从这段1ps短晶体轨迹拟合液体扩散系数。真正研究扩散时,需要合适的相态、足够长的扩散区间、采样间隔和统计误差;NPT还要明确如何处理整体晶胞形变。

所有原始输出、分析脚本和图都随顶部资料包提供,可在自己的结果上保留同样的文件检查顺序:完成计算 → 确认步数和时间 → 对齐轨迹与晶胞 → 工具提取 → 作图与解释。

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

查看配图

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

100%查看原图 ↗