|
本帖最后由 casea 于 2022-12-5 14:25 编辑
****2022/09/05 更新****
- 经过优化和调整后,257个原子200帧算了1min,同时出图和Bio3D的一致
- 目前计算速度卡在了轨迹读取(耗时20 s)以及位移矢量的点积(耗时28 s)
- 轨迹读取的代码是我之前结合libxtc和pandas写的,速度太慢,之后可能会重写
- numpy数组的点积目前没有更好的办法进行优化,欢迎提出建议
**********************
前言:Dynamical Cross-Correlation Matrix,即DCCM,通过DCCM可以看出在模拟期间不同残基之间的共同进化关系。
目前,绘制DCCM可以通过gromacs计算covar然后使用脚本生成DCCM 脚本地址,与此同时,也有很多其他的工具可以绘制出DCCM,如:MD-TASK,Bio3d
相对而言,Bio3D绘制DCCM图是最为广泛以及出图最精致的选择。Bio3D是R语言程序包,gromacs跑出来的轨迹需要先使用VMD等工具转化为DCD格式,在传入到Bio3D中进行计算。因为个人比较懒所以就想用python写一个脚本一键生成DCCM图。 附件即为脚本
DCCM.py
(8.03 KB, 下载次数 Times of downloads: 146)
使用方法:
python DCCM.py md.gro md.xtc
注意事项:
xtc轨迹最好不要超过200帧
我测试的体系:257个原子200帧算了3min
DCCM.py默认选择CA原子进行计算,如果想计算其他的原子可以打开文件在ressele处修改
所需包
pandas
matplotlib
numpy
sys
mdanalysis
效果图:
脚本流程:
- 读入gro和xtc文件
- 通过选择语法选择所有的CA原子,即CA原子代表了整个残基
- 通过点云算法将所有帧的结构叠合到第一帧
- 计算交叉相关系数
附: 交叉相关系数计算公式引用链接:
|
评分 Rate
-
查看全部评分 View all ratings
|