PLUMED周期边界:整分子与离子重建
用32帧跨盒几何演示WHOLEMOLECULES、WRAPAROUND、CELL与坐标导出,给出三步结构图。
阅读本篇目录
周期边界下,一整个分子可能在文件里被切成几块,离子也可能出现在盒子的另一侧。恢复整分子与把离子移到参考分子附近是两步操作,本例分别演示。
1. 下载并看三步效果#
下载完整输入、原生结果、数据和绘图脚本,保存为example.zip:
python3 -m zipfile -e example.zip .
cd plumed-alignment-periodic-images
module load ase/3.29.0
bash read.sh
bash plot.sh
默认读取包内参考结果,在analysis-read/和figures/生成数据与图片。新的原生运行使用work-new/独立目录。

1–4号是一个几何模型分子,5号模拟附近离子。32帧是人工几何,盒长2 nm,体积8 nm³;示意图中的连线用于说明连续性,不代表真实化学键模型。
2. 完整操作输入#
UNITS LENGTH=nm ENERGY=kj/mol TIME=ps
DUMPATOMS ATOMS=1-5 FILE=before.xyz UNITS=nm PRECISION=14
WHOLEMOLECULES ENTITY0=1-4
DUMPATOMS ATOMS=1-5 FILE=whole.xyz UNITS=nm PRECISION=14
WRAPAROUND ATOMS=5 AROUND=1-4
DUMPATOMS ATOMS=1-5 FILE=after.xyz UNITS=nm PRECISION=14
c: CELL
v: VOLUME
p: POSITION ATOM=5 NOPBC
PRINT ARG=c.*,v,p.x,p.y,p.z FILE=COLVAR STRIDE=1 FMT=%.14e
WHOLEMOLECULES ENTITY0=1-4按指定有序原子链寻找最近周期映像,使整个实体连续。需要按分子拓扑给原子顺序,不能把无关溶剂全写成一个长实体。
WRAPAROUND ATOMS=5 AROUND=1-4再将5号移动到参考1–4号中最近粒子的最近周期映像。它不是强行把全部原子放回0到L区间。恢复后的分子或离子坐标可以大于盒长,这本身没有问题。官方说明给出了这一最近映像规则。
3. 终端操作#
bash run.sh
bash read.sh work-new analysis-new
bash plot.sh analysis-new figures-new work-new
head -7 work-new/pbc/before.xyz
head -7 work-new/pbc/whole.xyz
head -7 work-new/pbc/after.xyz
head -3 work-new/pbc/COLVAR
三个XYZ分别是变换前、整分子重建后、离子重包裹后。CELL给盒子矩阵分量,VOLUME给体积;本例三个对角分量2 nm,其他分量0,体积8 nm³。
4. 得到什么,如何换成自己的数据#
附件PLUMED-whole-wrap-periodic-images.csv逐帧记录离子原始x、参考分子x、重建后离子x和最近距离。32帧的完整坐标都与独立最近映像计算一致,坐标误差小于10⁻¹⁰ nm。
更换自己的轨迹时,修改实体原子列表、参考与被移动粒子、真实盒子及长度单位,并用几帧可视化确认。XYZ本身通常没有可靠盒信息,driver的--box 2,2,2是本例明确提供的盒子,不能原样套用到不同尺寸或三斜晶胞。
这两个动作修改其后动作读取的坐标,所以上面的三个DUMPATOMS需要按相同顺序摆放。若随后计算绝对POSITION,参考的周期映像会影响数值;只看最小镜像距离则可能看不出重建前后的区别。