209

ProDy:蛋白结构动力学分析工具

ProDy 擅长蛋白结构与柔性分析(弹性网络模型、PCA),用于研究构象变化与功能运动。这篇讲清 ENM 与 PCA 的用法及其在药物设计中的价值。

ProDy 是专注蛋白结构动力学的 Python 库。它的独特之处不在于跑模拟,而在于用远低于 MD 的成本估计蛋白的集体运动模式——弹性网络模型(ENM)只需一个结构、几秒钟计算,就能给出蛋白最可能的大尺度运动方向。

安装

pip install ProDy
# 可选:进一步分析与可视化
pip install nglview matplotlib

弹性网络模型:秒级估计蛋白运动

from prody import *
import numpy as np

structure = parsePDB("1ake")
calphas = structure.select("calpha")

# 各向异性网络模型(ANM):给出三维运动方向
anm = ANM("AK ANM")
anm.buildHessian(calphas, cutoff=15.0, gamma=1.0)
anm.calcModes(n_modes=20)

print(anm.getEigvals()[:5])            # 频率,越低越是大尺度运动
writeNMD("anm_modes.nmd", anm[:5], calphas)   # 可在 VMD/NMWiz 里播放

# 高斯网络模型(GNM):只算涨落幅度,更简单
gnm = GNM("AK GNM")
gnm.buildKirchhoff(calphas, cutoff=7.3)
gnm.calcModes(n_modes=20)
fluct = calcSqFlucts(gnm[:10])         # 逐残基涨落,可与实验 B-factor 比对

ENM 的核心假设很简单:把蛋白看成弹簧连接的珠子网络,形状本身就决定了它能怎么动。这个近似粗糙,但在预测大尺度铰链运动、结构域开合上意外地有效,而且成本比 MD 低几个数量级。

用多个结构做 PCA

ensemble = parsePDB(["1ake", "4ake"], subset="calpha")
ens = buildPDBEnsemble(ensemble)
ens.iterpose()                          # 叠合

pca = PCA("AK ensemble")
pca.buildCovariance(ens)
pca.calcModes(n_modes=5)
print(calcFractVariance(pca[:3]).sum()) # 前 3 个主成分解释的方差比例

# ENM 预测的运动与实验观测到的构象变化是否一致
print(calcOverlap(pca[0], anm[0]))      # 重叠度,接近 1 说明预测准确

calcOverlap 是很有说服力的一步:如果 ENM 的第一模式与晶体结构间实际观测到的构象变化高度重叠,说明这个粗粒化模型确实抓住了蛋白的功能运动。腺苷酸激酶(AK)是经典教科书例子。

在药物设计中的三个用途

  • 识别柔性口袋与隐蔽位点:沿低频模式扰动结构,能让原本关闭的口袋打开,用于发现 cryptic pocket——这是别构药物设计的常用起点。
  • 生成构象集合做集合对接:用 ENM 模式生成一系列构象,对接时覆盖受体柔性,比只用单一晶体结构更贴近现实。
  • 别构通路分析:用 calcPerturbResponse 等做扰动响应扫描,识别哪些残基对远端位点影响大,帮助定位别构位点。
# 沿第一模式生成一系列构象,用于集合对接
ensemble_conf = traverseMode(anm[0], calphas, n_steps=10, rmsd=2.0)
writePDB("mode1_traverse.pdb", ensemble_conf)

局限

  • 只给方向,不给时间尺度:ENM 告诉你蛋白可能怎么动,不告诉你多快动、能垒多高。定量动力学仍需 MD 或增强采样。
  • 粗粒化到 Cα:侧链细节、氢键网络的变化完全看不到。
  • cutoff 参数敏感:ANM 常用 13~15 Å、GNM 常用 7~8 Å,取值影响结果,建议做敏感性检查。
  • 适用于球状蛋白:对内在无序蛋白、高度伸展的结构,弹簧网络假设不成立。

上手提示

  • ENM 用几秒钟估计蛋白大尺度运动,成本比 MD 低几个数量级;
  • calcOverlap 验证预测模式与实验构象变化是否一致,再决定要不要信;
  • 沿低频模式生成构象做集合对接,是覆盖受体柔性的实用做法;
  • 它只给运动方向,不给时间尺度与能垒,定量问题仍需 MD。

延伸资源