GROMACS 聚类轨迹提取与轴束几何
从真实泛素轨迹输出每个聚类的独立XTC,再用两段螺旋演示bundle的端点分组和固定Z参考。
阅读本篇目录
下载输入、真实结果与绘图资料包,解压进入资料包目录。inputs 可修改,reference 是集群已计算的参考结果;脚本每次在 work 下建立独立目录。计算在分配好的资源内执行,可用 sbatch run.sbatch 跑整组,结果路径写入 LAST-RUN.txt。
数据与入口#
本例继续使用 1231 原子的纯泛素轨迹,0–100 ps、51 帧,做两个独立后处理:提取聚类成员轨迹,以及分析两段轴的几何。
bash run.sh tools
该入口也运行同包其他短工具。单独操作时复制 inputs/cluster 或 inputs/bundle 到新目录,加载 GROMACS 2026.4 普通模块。
1. 聚类时保留帧索引#
printf '3\n3\n' | gmx cluster -s protein.tpr -f protein.xtc -method gromos -cutoff 0.06 -clndx cluster-frames.ndx -g clusters.log -o rmsd.xpm -sz cluster-sizes.xvg
gmx extract-cluster -s protein.tpr -f protein.xtc -clusters cluster-frames.ndx -select all -o cluster.xtc
本例原子组 3 为 Cα;实际操作先核对菜单,再选择用于 RMSD 拟合和比较的组。0.06 nm 阈值仅对应本例短轨迹,换蛋白后要研究阈值敏感性。-clndx 保存的是每类的帧编号,与普通原子索引不同。
结果为 12 类,成员数依次为 16、10、7、5、3、2、2、2、1、1、1、1,合计 51 帧。extract-cluster 输出如 cluster_Cluster_0001.xtc;实际读取这些文件,原子几何与对应原轨迹帧一致。
head cluster-frames.ndx
gmx check -f cluster_Cluster_0001.xtc
2. 定义两段轴的端点#
bundle 可以分析多条轴。这里将同一段泛素螺旋拆成两个短轴,演示分组,不把它称为真正的多螺旋束体系:
[ AxisTop ]
355 374 451 473
[ AxisBottom ]
419 441 521 543
每组四个 Cα,按顺序分成两段。第一轴是 23/24 残基端点质心到 27/28 端点质心;第二轴是 29/30 到 33/34。
printf '0\n1\n' | gmx bundle -s protein.tpr -f protein.xtc -n axis.ndx -na 2 -z -ol length.xvg -od distance.xvg -oz z-shift.xvg -ot tilt.xvg -otr tilt-radial.xvg -otl tilt-lateral.xvg -oa axes.pdb
本例显式使用 -z,以固定实验室 Z 轴为参考;倾角不是自动对平均轴拟合后的倾角。需要其他参考方向时,应先进行可核对的刚性旋转,并检查长度等几何不变量。

两条轴的平均长度约 0.618976 和 0.641388 nm,独立端点质心计算与原生文本最大差小于 1.1e-6 nm。这不是螺旋全长;它取决于选定端点。
51 帧只能演示轨迹操作和局部变化,不适合声称已经识别了全部蛋白亚稳态。见 extract-cluster、bundle。