MDAnalysis 分析模块全览与实例导航
把安装版32个分析命名空间对应到真实轨迹或结构的操作教程,并说明旧接口和可选依赖。
阅读本篇目录
下载真实轨迹、模块导航与结果合并示例,保存为 example.zip:
python3 -m zipfile -e example.zip .
cd mdanalysis-analysis-guide
bash results.sh
bash plot.sh
使用集群MDAnalysis 2.9.0 / Python 3.11环境。MDAnalysis本身以Python及其编译扩展安装;本例不编译或启动GROMACS,而是分析已经完成的泛素轨迹。下载包包含PDB_CONECT、同序拓扑元数据及1001帧XTC;每20帧取一帧,得到51帧、0—100 ps的分析输入。
当前MDAnalysis不能解析这份原始TPR138,所以这里按既有真实模型的原子顺序读取PDB_CONECT与质量,再处理周期边界。不是删去原子或另外编造了一份轨迹。
先按数据和目标选教程#
| 数据或目标 | 建议起点 |
|---|---|
| 轨迹读取、周期边界和RMSD | 输入与PBC |
| 蛋白构象、二级结构、接触和网络 | 二级结构 → 网络/PCA |
| 水、氢键、驻留与输运 | RDF/HBA/MSD → 水桥 |
| 核酸或膜 | 核酸对应原子 / 膜叶 |
| 孔道 | HOLE → 多构象与表面 |
| 构象集合与降维 | 集合相似性 → PCA/聚类 |
| 自定义分析、结果合并与并行 | 自定义分析 → 结果合并 |
32个安装命名空间如何对应#
表中既有分析算法,也有基础设施、辅助数据和旧兼容入口。它们不是32种新的模拟方法;点击对应教程可查看实际输入、命令、结构与数据。
| 安装版analysis模块 | 用途与实际教程 |
|---|---|
align |
平均结构与迭代对齐 |
atomicdistances |
指定原子对距离 |
backends |
serial/multiprocessing/局部Dask的实际对照 |
base |
自定义AnalysisFromFunction和分析生命周期 |
bat |
键角二面角内坐标 |
contacts |
原生接触分数 |
data |
HOLE等分析使用的辅助数据;不是独立模拟算法 |
density |
三维水密度网格;并行例见相关教程 |
dielectric |
偶极涨落与介电响应的有限采样例 |
diffusionmap |
距离/Markov矩阵;原生特征向量限制和独立替代明确 |
dihedrals |
Ramachandran/Janin与二面角 |
distances |
距离矩阵/接触/几何选区和PBC |
dssp |
原生DSSP二级结构 |
encore |
HES/CES/DRES、协方差、聚类/嵌入和重采样;多篇配套 |
gnm |
GNM及近接触网络 |
hbonds |
旧兼容命名空间;新代码使用hydrogenbonds |
helix_analysis |
HELANAL螺旋几何 |
hole2 |
已有HOLE4原生孔径、构象集合和表面导出 |
hydrogenbonds |
HBA、水桥;自相关见water-correlations |
leaflet |
膜叶连通分量与阈值 |
legacy |
legacy.x3dna需单独外部引擎;当前未安装、未运行 |
lineardensity |
固定体积轨迹的质量/电荷密度剖面 |
msd |
均方位移与轨迹连续性 |
nucleicacids |
核酸对应原子与成对距离 |
nuclinfo |
核酸骨架/糖环/翻转几何 |
pca |
PCA、构象聚类与投影 |
polymer |
骨架排序、链构象和持久长度 |
psa |
Hausdorff/Fréchet路径距离 |
rdf |
RDF及指定原子对RDF |
results |
真实51帧的Results/ResultsGroup合并 |
rms |
RMSD/RMSF、对齐与PBC |
waterdynamics |
WOR/角分布、MSD和停留概率 |
hydrogenbonds包括HBA、氢键自相关和水桥;encore的协方差、HES/CES/DRES、聚类、嵌入与重采样分散在几篇教程中,不必在一篇长文中查全部内容。
通用的终端操作方式#
MDAnalysis主要通过Python调用。确认环境后,通常依次创建Universe、选择原子、运行分析,再读取 results。可以查看本包的实际分析脚本:
head -n 45 run_analysis.py
head -n 12 reference-data/MDAnalysis-analysis-guide.csv
本包里的短分析只读取既有轨迹,不启动新MD。在新的解压目录执行:
bash run.sh
cat results/DATA-VALIDATION.json
程序写入新建 results;已有目录时拒绝覆盖。自己的大型轨迹、多个分析进程应放在已分配的CPU资源中运行。
旧接口和依赖条件#
legacy.x3dna是已不再维护的旧包装,需要单独安装X3DNA外部程序;当前没有该引擎,本专题不提供其螺旋参数实算结果。不能用核酸距离或糖环几何替代同名的X3DNA结果。相关条件见 MDAnalysis 2.9旧接口说明。
HOLE、膜叶图算法、Dask等也有各自依赖,对应教程给出实际使用的版本及局部环境步骤。Dask或多进程不会自动让所有分析类都能并行;先确认该类的支持范围。扩散映射等已发现的原生数值问题在教程中保留,并明确标注替代计算,不能把原生失败结果当作正确图线。
以上按安装版的主要公共模块与工作流组织,不等同于所有类方法、可选包或任意外来轨迹都已适用。官方入口见 MDAnalysis分析模块文档。