由于其基于Python,其可视化及分析作图是其非常大的优势,可以很好地利用Python的作图功能进行动力学数据的分析作图,前面几篇文件主要介绍了其准备结构、构建体系和运动动力学。本文主要介绍蛋白折叠的动力学结果分析。
序
HTMD是一个HTMD基于Python的分子可编程环境,用于准备、处理、模拟、可视化和分析分子系统。用户使用HTMD可以在几行代码内完成非常复杂的协,且HTMD是开源的,所以你可以添加你自己的应用程序 由于其基于Python,其可视化及分析作图是其非常大的优势,可以很好地利用Python的作图功能进行动力学数据的分析作图,前面几篇文件主要介绍了其准备结构、构建体系和运动动力学。本文主要介绍蛋白折叠的动力学结果分析。 Protein folding analysis #!/usr/bin/python3 # coding: utf-8 # In[1]:导入模块,开启视图 from htmd.ui import * %pylab inline # In[2]:过滤轨迹 sets = glob('datasets/*/') sims = [] for s in sets: fsims = simlist(glob(s + '/filtered/*/'), 'datasets/1/filtered/filtered.pdb') sims = simmerge(sims, fsims) # In[3]:计算metrics metr = Metric(sims) metr.set(MetricSelfDistance('protein and name CA', metric='contacts')) data = metr.project() # In[4]:设置时间步长 data.fstep = 0.1 # In[5]:绘制轨迹长度 data.plotTrajSizes() # In[6]:删除不合适轨迹 data.dropTraj() # In[7]:用TICA方法聚类轨迹 tica = TICA(data, 2, units='ns') dataTica = tica.project(3) # In[8]:Bootstrapping dataBoot = dataTica.bootstrap(0.8) # In[9]:聚类构象 dataBoot.cluster(MiniBatchKMeans(n_clusters=1000)) # In[10]:建立马尔科夫模型 model = Model(dataBoot) # In[11]:绘制马尔科夫图形 model.plotTimescales() # In[12]:获取25ns稳定轨迹 model.markovModel(25, 4, units='ns') # In[13]:可视化每个状态的平衡属性 model.eqDistribution() # In[14]:绘制自由能面 model.plotFES(0, 1, temperature=360) # In[15]:绘制自由能面 model.plotFES(0, 1, temperature=360, states=True) # In[16]:可视化轨迹 from htmd.config import config config(viewer='ngl') model.viewStates(protein=True) # In[17]:计算动力学并定量化 kin = Kinetics(model, temperature=360) print(kin.source) print(kin.sink) # In[18]:计算与源速率差值 r = kin.getRates() print(r) # In[19]:绘制所有状态的自由能和平均值图形 kin.plotRates() # In[20]:绘制FluxPathways kin.plotFluxPathways()
参考资料 1.https://software.acellera.com/docs/latest/htmd/userguide/introduction.html 2.https://software.acellera.com/docs/latest/htmd/userguide/building.html 3.https://software.acellera.com/docs/latest/htmd/userguide/running.html 4.https://software.acellera.com/docs/latest/htmd/userguide/analysing.html 5.http://gainstrong.net/works/hudong/