请选择 进入手机版 | 继续访问电脑版

分子模拟论坛 Molecular Simulation Forums

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 80|回复: 0

[HTMD] ACEMD之利用HTMD构建膜蛋白体系

[复制链接]

99

主题

117

帖子

434

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
434
发表于 2018-8-9 14:10:44 | 显示全部楼层 |阅读模式
简介:众多的分子动力学模拟软件中,ACEMD作为一款新的分子动力学软件,基于Python环境的HTMD能够使用户更便捷的构建膜蛋白体系并应用于HTMD和ACEMD软件进行分子动力学模拟。








随着近年来计算机软硬件技术的发展,利用分子动力学模拟研究膜蛋白体系越来越多。因此,如何构建膜蛋白体系就显得尤其重要。众多的分子动力学模拟软件中,ACEMD作为一款新的分子动力学软件,基于Python环境的HTMD能够使用户更便捷的构建膜蛋白体系并应用于HTMD和ACEMD软件进行分子动力学模拟。

building protein in membrane
#!/usr/bin/python3
# coding: utf-8
# In[1]:导入模块,开启可视化
from htmd.ui import *
config(viewer='ngl')

# In[2]:准备蛋白并可视化
Molecule('mor/4dkl.pdb').view()

# In[3]:清理蛋白结构
from htmd.util import opm
prot, thickness = opm('4dkl')
thickness

# In[4]:清理非蛋白结构
prot.filter('protein and noh and chain B or water within 5 of (chain B and protein)')
# In[5]:自动检测片段并重命名
prot = autoSegment(prot,'protein')

# In[6]:建立蛋白坐标和拓扑
topos  = charmm.defaultTopo() + ['mor/ff.rtf']
params = charmm.defaultParam() + ['mor/ff.prm']
prot = charmm.build(prot, topo=topos, param=params,
outdir='./03c_out_morbuild/prot/', ionize=False)

# In[7]:可视化设置
prot.reps.add(sel='segid P0', style='NewCartoon', color=1)
prot.reps.add(sel='segid P1', style='NewCartoon', color=2)
prot.view()

# In[8]:添加离子
sod = Molecule('mor/sod.pdb')
sod.set('segid','S1')
prot.append(sod)
prot.reps.add(sel='ions', style='VDW')
prot.view()

# In[9]:载入膜结构
memb=Molecule('mor/membrane80by80C36.pdb')

# In[10]:将膜至于蛋白中心
pcenter=np.mean(prot.get('coords','protein'),axis=0)
mcenter=np.mean(memb.get('coords'),axis=0)
memb.moveBy(pcenter-mcenter)

# In[11]:蛋白嵌入膜
mol = prot.copy()
mol.append(memb, collisions=True)
# mol = embed(prot,memb)

# In[12]:可视化膜蛋白系统
mol.reps.add(sel='protein', style='NewCartoon', color='Secondary Structure')
mol.reps.add(sel='ions', style='VDW')
mol.reps.add(sel='lipids', style='Lines')
mol.view()

# In[13]:向膜蛋白中加入配体
lig = Molecule('mor/QM-min.pdb')
lig.set('segid','L');
lcenter = np.mean(lig.get('coords'),axis=0)
newlcenter=[np.random.uniform(-10, 10), np.random.uniform(-10, 10),  43 ]
lig.rotateBy(uniformRandomRotation(), lcenter)
lig.moveBy(newlcenter-lcenter)
mol.append(lig)

# In[14]:添加水盒子
coo = mol.get('coords','noh and (lipids or protein)')
m = np.min(coo, axis=0) + [0, 0, -5]
M = np.max(coo, axis=0) + [0, 0, 20]
smol = solvate(mol, minmax=np.vstack((m,M)))

# In[15]:可视化
smol.reps.add(sel='segid L', style='Licorice')
smol.reps.add(sel='water', style='Lines')
smol.view()

# In[16]:建立蛋白的charmm力场坐标和拓扑
molbuilt = charmm.build(smol, topo=topos, param=params,
outdir='./build/',
saltconc=0.15)
# In[17]:建立后体系可视化
molbuilt.view()

参考资料
  • https://software.acellera.com/docs/latest/htmd/tutorials/system-building-protein-in-membrane.html
  • https://software.acellera.com/docs/latest/htmd/tutorials/protein-preparation.html
  • https://software.acellera.com/docs/latest/htmd/userguide/advancedbuilding.html
  • http://gainstrong.net/works/hudong/





来源:格致斯创(北京)科技有限公司
http://gainstrong.net/works/hudong/2018-02-09/98.html


回复

使用道具 举报

Archiver|手机版|小黑屋|分子模拟论坛  

GMT+8, 2018-10-23 03:21 , Processed in 0.086200 second(s), 26 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表