Martini实例教程:使用VMD可视化Martini体系

类别:    标签: gmx martini   阅读次数:   版权: (CC) BY-NC-SA

VMD是一个分子可视化程序, 它采用三维图形技术以及内置脚本来对生物大分子体系进行展示, 动画制作和分析. VMD官方网站 http://www.ks.uiuc.edu/Research/vmd/.

在本模块中, 我们会介绍一些与粗粒化体系可视化相关的VMD命令. 此外, 我们还向读者提供一些有助于CG体系可视化的Tcl脚本. 这些脚本及其说明文档可从Martini网页的链接中下载 http://md.chem.rug.nl/cgmartini/index.php/tools2/visualization

另外, Bendix是VMD中用于展示粗粒化(Martini)结构的一个非常有用的工具. 以下链接提供了一个十分不错的Bendix教程: http://sbcb.bioch.ox.ac.uk/Bendix/.

【王河洛 注】 VMD 1.9.2 以及之后的版本自带了Bendix插件, 可在菜单Extansions | Visualization中找到, 无需重新下载安装.

一些基础知识

VMD的”表现理念”: 为展示和分析任意一组原子, 分子, 或蛋白质链等组成的对象, 我们首选需要通过一个”表示(representation)”来选择这个对象, 表示由与对象相关的关键词来定义(这种处理方式与GROMACS中的make_ndx相似). 例如, 对全原子体系, VMD可通过protein, chain, hydrogen以及solvent等关键词实现处理对象的选择. 一些更一般的关键词可用于展示非常规的体系(如粗粒化体系). 相关用法可参考VMD手册.

【王河洛 注】 这个概念个人感觉称之为”原子选择语法”更为合适, 就是指在程序的操作中如何选择自己需要的粒子或粒子团. 在CHARMM, AMBER与GROMACS软件的操作中都有相似的概念, 但语法各有不同.

下面是一些例子:

  1. 若体系中有POPC, 如果只选择体系中的脂质POPC则输入: resname POPC; 只选择每个脂质中的某一部分: resname POPC and name "C.*.A" "C.*.*.B" "D.*.A" "D.*.B"可以选择脂质中尾端原子(如C1AC1B原子), resname POPC and name NC3 PO4 "GL.*"则选择头基原子.
  2. 只选择蛋白质主链上的珠子: name BB(对老版本的FG-to-CG脚本使用BB.*BAS)
  3. 在极化水溶液中去除溶剂分子(水/盐珠子): not resname W WF ION or WP.
  4. 只显示带正电荷的残基(Martini力场): resname LYS ARG. (注: 这个语句并不是选择带正电荷的残基, 而是在Martini力场中LYS与ARG残基带正电荷. 一般情况下应使用charge>0)
  5. 显示特定的残基周围的水合壳层: within 7.0 of (index 531 to 538).
  6. 显示头部与相同的特定残基相互作用的所有脂质分子(DPPC除外): same resid as ((within 7.0 of (index 531 to 538)) and name NC3 PO4 "GL.*") and not resname DPPC.

正如上面这些例子所示, 所有这些关键词都可以与and, or, not等逻辑连接词一起使用, 达到选择所需对象的目的. 自己尝试下! 不过VMD运行时需要较多的内存. 节省VMD所用内存的一个小技巧是, 加载仅含有要分析珠子的结构或轨迹. 这可以通过使用GROMACS的trjconv程序对轨迹进行提取与预处理来实现. (【王河洛 注】 也可以使用VMD的catdcd程序). 当我们模拟越来越大的体系时, 包含的珠子也越来越多, 使用仅显示所需珠子这个技巧可以提高VMD的显示/处理轨迹的速度(例如, 只加载双层的头基). 记住, 你可以在任何需要的时候将当前的可视化状态保存为state.vmd文件. 这个文件由Tcl命令组成, 借助这些命令就可以重新获得当前的显示效果. 不过需要注意的是, 键的列表以及绘图(如圆柱)并不会被保存. 但你可以打开之前保存的.vmd文件, 在文件的最后手动添加用于创建它们的命令.

CG键/约束与弹性网络

当使用VMD打开一个CG结构/轨迹时, VMD会根据默认的距离条件和原子数据库中提供的键长数据(来自相同开发组使用的NAMD力场), 自动判断并生成成键网络. 对于CG珠子, 默认的平均键长为0.35 nm, 在VMD的自动算法中没有定义, 这样VMD最后不可避免地将体系显示为一堆散乱的点, 肉眼难以(或不可能?)正确辨识. 因此, 在Martini的网站上, 我们提供了一个Tcl脚本cg_bonds, 它可以读取CG体系.itp/.tpr文件中的键和约束信息, 并重写CG成键网络使其显示正常.

首先, 确保系统可以正常读取脚本文件:

source /路径/cg_bonds.tcl

之后, 这个脚本就可以在VMD的命令行窗口中调用:

cg_bonds -top system.top -topoltype "elastic"

上面的命令假定你只有一个.top文件, GROMACS程序无法使用. 如果你的机器上安装了GROMACS, 有可以使用.tpr文件来替代:

cg_bonds -gmx /路径/gmxdump -tpr dyn.tpr -net "elastic" -cutoff 12.0 -color "orange" -mat "AOChalky" -res 12 -rad 0.1

最后的命令会根据所给的选项(截断cutoff, 颜色color, 材质mat, 分辨率res和半径rad)绘制ElNeDyn网络, 其中珠子间成键信息来自dyn.tpr文件(这是为什么要需要gmxdump的原因). 注意: 你的GROMACS版本要与dyn.tpr文件兼容.

二级结构的可视化

可以显示CG力场的成键和约束后, 下一步就是观察蛋白质的二级结构. 我们目前正在开发一个用于绘制类VMD cartoon图形的图形化脚本. 这个脚本仍在开发中, 还需要一些改进. 对此, 我们十分期待你的建议.

在此, 我们先行提供cg_secondary_structure.tcl脚本供你使用, 其中包含cg_helixcg_sheet两个主要命令:

这两个命令的使用格式相同:

cg_whatever {list of terminig} [-graphical options]

我们来看个例子:

cg_helix { {5 48} {120 146} } -hlxmethod "cylinder" -hlxcolor "red" -hlxrad 2.5

这个命令将以0.25 nm半径的红色圆柱展示两个螺旋结构, 它们分别对应于蛋白质中序号为5到48, 120到146的残基. 如果需要了解脚本的所有选项及其默认值, 可以查看其帮助文档或网页. 命令选项中list of terminig(端基列表)的定义方式有两种: i) 自己提供列表(如上例所示), ii) 读取或解析由do_dssp程序生成的文件. 对第二个方式, 你不需要提供任何端基, 但命令行中的list of termini选项依然需要输入一个空列表{}以让程序运行.

需要注意的是, 由于粗粒化结构所携带的信息有限, 所得图像的精美程度和精确度有限.

随意赞赏

微信

支付宝
◆本文地址: , 转载请注明◆
◆评论问题: https://jerkwin.herokuapp.com/category/3/博客, 欢迎留言◆


前一篇: Martini粗粒化力场使用手册:4 实例教程
后一篇: 使用bash编辑二进制文件:创建Origin调色板文件

访问人次(2015年7月 9日起): | 最后更新: 2017-07-21 11:39:08 UTC | 版权所有 © 2008 - 2017 Jerkwin