CP2K专题

CP2K副本交换结果按温度整理

实际调用i-pi-remdsort,区分walker文件与固定温度文件,读取重排后的能量、坐标和力并画图。

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

副本交换完成后,某个物理walker会先后属于不同温度。直接把它整条轨迹平均,就混合了多个系综。正确的后处理是保留原始文件,按交换历史把每一个时刻的数据归入对应温度,再计算所需统计量。

1 准备已完成的轨迹#

下载CP2K与i-PI温度交换完整操作包,保存为cp2k-replica-exchange.zip。普通作业可解压后用sbatch job.slurm提交;下面短命令用于已经通过Slurm分配的CPU计算环境。

CPU分区按56核整节点申请与计费。包内job.slurm已设置单节点、1个Slurm任务、每任务56核;案例脚本在该分配中按各自所需的少量核心运行,每个CP2K进程仍为1线程。

python3 -m zipfile -e cp2k-replica-exchange.zip .
cd cp2k-replica-exchange
bash setup.sh
bash run.sh
bash verify.sh
bash plot.sh

脚本依次启动一个i-PI服务进程和两个CP2K力计算进程,运行4000步,关闭本地连接后调用原生i-pi-remdsort,再提取数据画图。每个进程用一个物理核心,CP2K为1个MPI进程、1线程。结果在results/,本次运行的图在plots/;reference-plots/复现的是操作包内实际参考算例的图片。

CP2K为cp2k/2026.2-8173m,Intel ifx2024.2.1、IntelMPI2021.13、MKL2024.2。操作包携带原版i-PI3.3.1纯Python程序及许可证,setup.sh仅在当前工作目录展开,NumPy使用集群已有环境。

2 先认清原始文件#

results/中有以下数据:

文件 含义
replica-0_remd.out、replica-1_remd.out 两个walker的步数、时间、势能、动能、瞬时温度与目标温度
replica-*_remd.pos_0.xyz 相应walker的坐标,Å
replica-*_remd.force_0.xyz 相应walker的原子力,原子单位
remd.exchange.dat 原生工具记录的已接受交换及系综排列
input.xml 该次计算的实际输入,含输出定义和初始温度对应关系

每条完整输出含初态第0步,至4000步共4001行/帧。普通MD时间步长是0.5 fs;交换日志中的步号按i-PI内部步序记录,整理时应交给匹配版本的工具处理,避免自己移动一行后错配。

3 调用原生排序工具#

在工作目录执行:

bash sort.sh
bash verify.sh
head -n 10 results/SRT_replica-0_remd.out
head -n 10 results/SRT_replica-1_remd.out

sort.sh读取已有结果,调用原生i-pi-remdsort input.xml,再检查能量、坐标和力的重排。该操作产生SRT_文件。脚本内实际工具调用为:

cd results
$YS_PY ../vendor/ipi-3.3.1.data/scripts/i-pi-remdsort input.xml

在此例中,初始系综0对应300 K、系综1对应600 K,因此SRT_replica-0_remd.out是300 K,另一个是600 K。判断时始终查看输入中的初始系综顺序和输出的ensemble_temperature列,不能只凭文件名猜温度。

4 怎么阅读结果#

属性文件各列依次为:步数、时间fs、势能Ha、经典MD动能Ha、瞬时温度K、目标温度K、守恒量Ha。目标温度应在排序后的单个文件中保持300或600 K;瞬时温度会有热涨落。

原生排序后的固定温度能量、实际能量分布、坐标分布和时间分块统计

图中采用实际2 ps轨迹,分布图略去前0.5 ps。这个三维谐振模型的经典势能分布可与已知解析分布对照,平均势能期望为3kBT/2。不同时间块仍有起伏,曲线展示采样结果的尺度,正式统计应使用更长时间和独立轨迹。

5 整理自己的任务#

保留同一任务的实际input.xml、完整交换日志、各walker属性和结构文件。先确认它们来自同一次运行、步数完整、输出频率一致,再运行排序工具。不要把不同任务的交换日志拼接后直接套给另一组结构文件。更换温度数、输出频率或文件前缀后,也应按实际输入重新组织后处理。

操作包同时提供plots/中的本次复跑图片和reference-plots/中的实际参考算例图片;并行随机调用会使两次新轨迹的细节不同。它们都应分别检查完整物理结果和重排对应关系。

相关教程:温度副本交换输入与启动、原生PIMD珠数、路径积分完整续算。

参考:原生i-pi-remdsort实现、i-PI输出说明。

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

查看配图

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

100%查看原图 ↗