ACEMD之利用HTMD進行配體結合分析
序
ACEMD是一款專門針對NVIDIA圖形處理器(GPU)運行而優化的分子動力學軟體,是世界上最快的分子動力學引擎之一。
HTMD是一個HTMD基於Python的分子可編程環境,用於準備、處理、模擬、可視化和分析分子系統。用戶使用HTMD可以在幾行代碼內完成非常複雜的協,且HTMD是開源的,所以你可以添加你自己的應用程序
由於其基於Python,其可視化及分析作圖是其非常大的優勢,可以很好地利用Python的作圖功能進行動力學數據的分析作圖,本文主要介紹小分子配體的結合分析。
Ligand binding 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(MetricDistance("protein and name CA", "resname MOL and noh", 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]:獲取5ns
model.markovModel(5, 5, units="ns")
# In[13]:繪製自由能面
model.plotFES(0, 1, temperature=298)
# In[14]:繪製自由能面
model.plotFES(0, 1, temperature=298, states=True)
# In[15]:可視化
from htmd.config import config
config(viewer="ngl")
model.viewStates(ligand="resname MOL and noh")
# In[16]:計算動力學,定量化
kin = Kinetics(model, temperature=298, concentration=0.0037)
# In[17]:計算與源速率差值
r = kin.getRates()
print(r)
# In[18]:繪製所有狀態的自由能和平均值圖形
kin.plotRates()
# In[19]:繪製FluxPathways
kin.plotFluxPathways()
參考資料
https://software.acellera.com/docs/latest/htmd/userguide/introduction.html
https://software.acellera.com/docs/latest/htmd/userguide/building.html
https://software.acellera.com/docs/latest/htmd/userguide/running.html
https://software.acellera.com/docs/latest/htmd/userguide/analysing.html
http://gainstrong.net/works/hudong/
TAG:格致斯創 |