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

计算化学公社

 找回密码
 现在注册!
查看: 14447|回复: 52

[GROMACS] 几种生成有机分子GROMACS拓扑文件的工具

[复制链接]

1万

帖子

25

威望

1万

eV
积分
35687

管理员

公社社长

发表于 2014-12-9 22:50:35 | 显示全部楼层 |阅读模式
几种生成有机分子GROMACS拓扑文件的工具

文/Sobereva @北京科音
First release:2014-Dec-9  Last update: 2017-Nov-29


Antechamber:免费的Ambertools包当中提供的,拓扑文件专给amber用。自动分配GAFF力场参数,没参数的会自动通过半经验来计算。如果参数不满意的话也可以用户到时候自己通过paramfit程序来对力场参数进一步拟合。此程序可以自动计算AM1-BCC、RESP等分子模拟常用的原子电荷。总体来说比较可靠,智能。它的拓扑文件可以通过amb2gmx或acpype程序(http://code.google.com/p/acpype/,目前可以在无需翻墙在这里下http://svn.code.sf.net/p/ccpn/code/branches/stable/ccpn/python/acpype/)转换成gromacs格式。推荐用acpype,用法很简单,要处理xxx.mol2就执行./acpype.py -i xxx.mol2,然后程序会自动调用Antechamber处理xxx.mol2,算完后acpype就会将之转化为带有_GMX后缀的.gro、.itp、.top,直接在Gromacs里用即可。另外也会输出_OPLS后缀的基于OPLS力场的文件,但属于实验性质不建议用。

PRODRG2(http://davapc1.bioch.dundee.ac.uk/cgi-bin/prodrg):历史非常悠久很有名的生成Gromacs拓扑文件的在线工具。只支持GROMOS87/96力场,生成gromacs和其它一些程序的拓扑文件。原子电荷是根据基团指认的,如果基团识别不对那么电荷也不可靠。有在线版和离线版。可以选择自动优化分子结构。

Automated Topology Builder(ATB,http://compbio.biosci.uq.edu.au/atb/):生成Gromacs拓扑文件的在线工具,比PRODRG更先进更可靠,解决了PRODRG没法自动确定质子化态和charge group指认不准的问题以保证原子电荷可靠,并且能利用对称性保证电荷等价,另外没有prodrg2那样对于每日提交的数目有限制。可以生成GROMOS96 G53A6、G54A7力场的gromacs或gromos程序的拓扑文件。ATB虽然不错,可以作为产生小分子gromacs拓扑文件的首选,但它生成的原子电荷、确定的参数的可靠性也只是一般,不能保证很准确。对于个别分子,ATB给出的拓扑文件甚至明显不合理,比如模拟起来后严重变形。如果要做很严谨的模拟研究,还是建议自行计算RESP电荷并且手动检查力场参数的合理性并适当调节。网站上也有些大量事先搞好的小分子的参数和拓扑文件,其中有的是别人之前提交过的分子,有的是经过专人手工处理过的分子,显然后者可靠程度更高。

MKTOP(http://www.aribeiro.net.br/mktop/):支持OPLS-AA和AMBER03力场,强调全原子。电荷必须自己提供。感觉有点山寨。

TPPmktop(http://erg.biophys.msu.ru/tpp/):在线工具,提供pdb文件,能产生OPLS-AA力场参数的gromacs拓扑文件。速度比较快,但得到的拓扑文件里有时候会缺参数,或者出现额外的原子类型,需要再手工处理。此服务器有时候有其它任务在跑,此时无法提交任务,只能等过一阵服务器没任务时再提交。

LigParGen(http://zarbi.chem.yale.edu/ligpargen/):生成GROMACS, NAMD, CHARMM, LAMMPS等程序OPLS-AA力场的拓扑文件的工具。可以通过SMILE字符串、.mol、.pdb文件进行输入(用pdb格式时老是报错,我建议用.mol),原子上限200个,可以顺带着让服务器对分子在OPLS-AA力场下做几何优化。分配的原子电荷是1.14*CM1A或1.14*CM1A-LBCC,前者是把CM1A电荷数值乘上1.14得到的,后者是在1.14*CM1A基础上再引入LBCC校正得到的,在J. Phys. Chem. B, 121, 3864 (2017)中已证明这两种原子电荷结合OPLS-AA模拟有机体系凝聚相可以得到不错结果。此服务器还可以输出PQR文件。

OBGMX(http://software-lisc.fbk.eu/obgmx/):生成UFF力场的gromacs拓扑文件的在线工具。由于UFF几乎涵盖整个周期表,因此不光有机分子,也可以使得Gromacs能够处理无机物、周期性体系,比如MOF。由于UFF的力场形式和Gromacs所支持的不完全兼容,此程序给出的参数实际上是对原UFF力场的近似。个别原子类型识别可能有误。电荷必须自己提供。

SwissParam(http://swissparam.ch):输入有机小分子mol2文件,生成用于CHARMM/NAMD和GROMACS模拟的拓扑、参数文件。力场参数基于MMFF,但只保留谐振项部分,因此只是MMFF的近似。原子电荷通过MMFF方法获得。范德华参数采用CHARMM22中最接近的原子类型。这样的参数比较粗糙,有优化的余地。

CGenFF(https://cgenff.paramchem.org/):先注册,上传有机小分子的mol2文件,即可生成基于CGenFF力场的CHARMM的拓扑文件。如果mol2是gview建的,一定要事先把里面的Ar替换成ar。上传文件的时候不要选Guess bond orders from connectivity和Include parameters that are already in CGenFF。如果文件处理正常,会立刻产生str文件,点击其链接之后把里面内容拷到比如Actos.str里面。进入网页里的More Info & Tools - Utilities,点击GROMACS conversion program,可下载把str文件转换为GROMACS格式的Python脚本cgenff_charmm2gmx.py。对于CentOS 7.2,应运行yum install numpy和yum install python-networkx把这个脚本所需的包装上。去http://mackerell.umaryland.edu/charmm_ff.shtml#gromacs里面下载用于GROMACS的CHARMM36力场文件,解压得到比如charmm36-nov2016.ff文件夹,将它和Actos.str、cgenff_charmm2gmx.py都放到当前目录,另外也把此文件夹拷到gromacs的top目录下。假设Actos.str里RESI后面的词是Molecu,最初上传的是Actos.mol2,则运行./cgenff_charmm2gmx.py Molecu Actos.mol2 Actos.str charmm36-nov2016.ff。在当前目录会产生molecu.top、molecu.prm、molecu.itp、molecu.pdb(从mol2转换过来的),适当调整itp和top里的分子名,调整itp里的残基名和结构文件相对应后,即可用于模拟。str文件里的力场参数有penalty指标,数值越大说明此参数可靠性越低,详见网页里的说明。


另外说两个有关的程序

YASARA AutoSMILES Server(http://www.yasara.org/autosmilesserver.htm)是在线版程序,离线的话得买YASARA(建模+可视化+动力学模拟工具)。可以计算AM1-BCC电荷、指认amber94/96/99力场参数。但是产生的文件只能用YASARA View打开,也就是说,拓扑文件相当于YASARA专用的。

RED(RESP ESP charge Derive,http://q4md-forcefieldtools.org/REDServer-Development/):专门生成RESP电荷的,也能搞力场参数。页面做得不是一般的恶心,又复杂又闹又乱,摸不到头绪,看着就烦,因此笔者也没怎么仔细研究。


这里把各种程序做一下总结,是笔者讲授的培训中的一页幻灯片
QQ图片20180209010043.png

评分

参与人数 5eV +23 收起 理由
4A696E67 + 4 谢谢
alonewolfyang + 5 好物!
zn574622667 + 4 赞!
zsu007 + 5 谢谢
ter20 + 5

查看全部评分

北京科音自然科学研究中心:http://www.keinsci.com  致力于计算化学的发展和传播,不定期开办各层次量子化学、分子动力学、波函数分析与Multiwfn程序等主题的培训。欢迎加入“北京科音”微信公众号获取培训最新消息和计算化学资讯
思想家公社的门口Blog:http://sobereva.com(发布大量原创计算化学相关博文)
Multiwfn主页:http://sobereva.com/multiwfn(最流行的量子化学波函数分析程序)
计算化学公社论坛:http://bbs.keinsci.com(高水平、高人气、综合性计算化学交流论坛)
思想家公社QQ群1号:18616395,2号:466017436。用于讨论理论、计算化学,两个群讨论范畴相同,可加入任意其一但不可都加入,申请信息必须注明具体研究方向,否则一概不批。研究方向和理论、计算化学无关者勿加,以免浪费宝贵的空位

此账号为诸Sobereva共用
Money and papers are rubbish, get a real life!

52

帖子

1

威望

237

eV
积分
309

Level 3 能力者

发表于 2014-12-12 11:31:30 | 显示全部楼层
太谢谢你了

110

帖子

0

威望

1245

eV
积分
1355

Level 4 (黑子)

发表于 2014-12-18 17:02:46 | 显示全部楼层
本帖最后由 yaochuang 于 2014-12-18 17:44 编辑

@sobereva
sob老师,请问用这些软件产生的top文件和用pdb2gmx 这个命令产生的有什么关系吗?

我可以直接用gaussianview产生pdb文件,然后用pdb2gmx这个命令来生成top文件吗?我试了一下总是报错(报错信息在下图中),是文件的格式问题呢,还是就不能用这种方法呢?

我主要想做的是模拟一下我们自己合成的一个有机分子在水和四氢呋喃中形成particle的过程,以及控制这个过程的作用力是什么。
谢谢了!

QQ截图20141218170843.jpg

1万

帖子

25

威望

1万

eV
积分
35687

管理员

公社社长

 楼主| 发表于 2014-12-18 19:09:20 | 显示全部楼层
自己找的小分子不要用pdb2gmx来产生拓扑文件,用我文中的途径产生.itp文件然后include到主.top文件是最好的作法。

pdb2gmx主要是对于力场已经自带的残基或者小分子产生拓扑文件的,并且可以处理残基间的拼接过程,比如产生蛋白、DNA等。用pdb2gmx之前必须把要载入的pdb文件里所有类型的分子拓扑信息写进相应力场的rtp文件里面。即便你已经把小分子的拓扑信息都写进了rtp里能够用它来生成体系的拓扑文件,但仍有一点很不好,就是所有分子的拓扑文件是连在一起的。比如说,你模拟20000个A分子,本来include一次A分子的.itp文件就够了,但你要如果先把A分子的拓扑信息写进rtp里用pdb2gmx来产生拓扑文件,则20000个A分子会成为一个“分子”,出现在同一个[ moleculetype ]里,这使得拓扑文件冗长且不容易修改。
北京科音自然科学研究中心:http://www.keinsci.com  致力于计算化学的发展和传播,不定期开办各层次量子化学、分子动力学、波函数分析与Multiwfn程序等主题的培训。欢迎加入“北京科音”微信公众号获取培训最新消息和计算化学资讯
思想家公社的门口Blog:http://sobereva.com(发布大量原创计算化学相关博文)
Multiwfn主页:http://sobereva.com/multiwfn(最流行的量子化学波函数分析程序)
计算化学公社论坛:http://bbs.keinsci.com(高水平、高人气、综合性计算化学交流论坛)
思想家公社QQ群1号:18616395,2号:466017436。用于讨论理论、计算化学,两个群讨论范畴相同,可加入任意其一但不可都加入,申请信息必须注明具体研究方向,否则一概不批。研究方向和理论、计算化学无关者勿加,以免浪费宝贵的空位

此账号为诸Sobereva共用
Money and papers are rubbish, get a real life!

110

帖子

0

威望

1245

eV
积分
1355

Level 4 (黑子)

发表于 2014-12-19 17:22:54 | 显示全部楼层
本帖最后由 yaochuang 于 2014-12-19 17:27 编辑

@sobereva
谢谢sob老师,

根据你的提示,我在ATB网站上提交了我的小分子,得到了WVQC.itp和WVQC.pdb文件.(如图ATB)
但是我在操作时还是出现了一些问题,我把我的过程写一下请你帮我看看。

1:我利用
WVQC.pdb产生一个盒子并添加了水:
editconf -f
WVQC.pdb -bt dodecahedron -d 0.5 -o box.gro

2:按照manul中的介绍我写了一个
WVQC.top文件。(如图top
之后运行 gmx solvate -cp box.gro -cs spc216.gro -p WVQC.top solvated.gro
产生的solvated.gro在VMD中观看也是正常的。

3.做energy minimization,自己按手册写了em.mdp文件。 (如图em)

然后运行 grompp -f em.mdp -p WVQC.top -c solvated.gro -o em.tpr 时就出现了错误。(如图 error)

此时的top文件在最后多了一行sol   1467 (如图top2)


请老师帮我看看,自己弄了一天了也没有弄出来! 谢谢!


ATB

ATB

top

top

em

em

error

error

top2

top2

1万

帖子

25

威望

1万

eV
积分
35687

管理员

公社社长

 楼主| 发表于 2014-12-19 18:58:53 | 显示全部楼层
yaochuang 发表于 2014-12-19 17:22
@sobereva
谢谢sob老师,

给你两个完整的基于ATB产生的拓扑文件做小分子+水模拟的例子。对照对照估计就明白了。对应的是gmx 4.6.7。
文中用到的mdp文件: em.mdp (447 Bytes, 下载次数: 39)
北京科音自然科学研究中心:http://www.keinsci.com  致力于计算化学的发展和传播,不定期开办各层次量子化学、分子动力学、波函数分析与Multiwfn程序等主题的培训。欢迎加入“北京科音”微信公众号获取培训最新消息和计算化学资讯
思想家公社的门口Blog:http://sobereva.com(发布大量原创计算化学相关博文)
Multiwfn主页:http://sobereva.com/multiwfn(最流行的量子化学波函数分析程序)
计算化学公社论坛:http://bbs.keinsci.com(高水平、高人气、综合性计算化学交流论坛)
思想家公社QQ群1号:18616395,2号:466017436。用于讨论理论、计算化学,两个群讨论范畴相同,可加入任意其一但不可都加入,申请信息必须注明具体研究方向,否则一概不批。研究方向和理论、计算化学无关者勿加,以免浪费宝贵的空位

此账号为诸Sobereva共用
Money and papers are rubbish, get a real life!

110

帖子

0

威望

1245

eV
积分
1355

Level 4 (黑子)

发表于 2014-12-20 16:01:52 | 显示全部楼层
sobereva 发表于 2014-12-19 18:58
给你两个完整的基于ATB产生的拓扑文件做小分子+水模拟的例子。对照对照估计就明白了。对应的是gmx 4.6.7 ...

谢谢sob老师!

110

帖子

0

威望

1245

eV
积分
1355

Level 4 (黑子)

发表于 2014-12-20 16:32:32 | 显示全部楼层

    给你两个完整的基于ATB产生的拓扑文件做小分子+水模拟的例子。对照对照估计就明白了。对应的是gmx 4.6.7 ...


谢谢sob老师!

还有一个问题想请教你,如果我想向水盒子放5个这样的分子应该怎么做呢?
我直接在.top文件中将molecules后面的数字改为了5
[ molecules ]
;molecule name nr.
WVQC       5

但是在计算 grompp -f em.mdp -c system.gro -p system.top -o em.tpr的时候出现这样的错误:
Fatal error:
number of coordinates in coordinate file (system.gro, 91625)
             does not match topology (system.top, 91750)

我查看了一下ststem.gro中最前面好像也只有一个WVQC的坐标。
这个应该怎么做呢?
谢谢!

35

帖子

0

威望

2180

eV
积分
2215

Level 5 (御坂)

发表于 2014-12-20 18:41:58 | 显示全部楼层
谢谢分享!

1万

帖子

25

威望

1万

eV
积分
35687

管理员

公社社长

 楼主| 发表于 2014-12-20 20:32:06 | 显示全部楼层
yaochuang 发表于 2014-12-20 16:32
给你两个完整的基于ATB产生的拓扑文件做小分子+水模拟的例子。对照对照估计就明白了。对应的是gmx 4. ...

你也得相应地在结构文件里放5个分子才能对应上。
可以用packmol来生成初始结构,要放几个分子,在什么位置放都可以方便地设定。也可以建立个空盒子,然后用genbox添加分子,-nmol可以设定放几个。
北京科音自然科学研究中心:http://www.keinsci.com  致力于计算化学的发展和传播,不定期开办各层次量子化学、分子动力学、波函数分析与Multiwfn程序等主题的培训。欢迎加入“北京科音”微信公众号获取培训最新消息和计算化学资讯
思想家公社的门口Blog:http://sobereva.com(发布大量原创计算化学相关博文)
Multiwfn主页:http://sobereva.com/multiwfn(最流行的量子化学波函数分析程序)
计算化学公社论坛:http://bbs.keinsci.com(高水平、高人气、综合性计算化学交流论坛)
思想家公社QQ群1号:18616395,2号:466017436。用于讨论理论、计算化学,两个群讨论范畴相同,可加入任意其一但不可都加入,申请信息必须注明具体研究方向,否则一概不批。研究方向和理论、计算化学无关者勿加,以免浪费宝贵的空位

此账号为诸Sobereva共用
Money and papers are rubbish, get a real life!

289

帖子

0

威望

2922

eV
积分
3211

Level 5 (御坂)

发表于 2014-12-20 22:01:40 | 显示全部楼层
Sob老师您好,您提到了可以利用Packmol构建初始构型,我想请教一下那个resnumbers这个命令应该怎样使用(手册已看)??我在构型的2侧分别加入15个Ca原子,但是它默认将这个2侧Ca离子看成了不同的残基序列号。我想让Ca离子是同一序列号应该怎样处理。附上我的inp文件

tolerance 2.0
filetype pdb
output 7_7_Ca_Cl.pdb

structure Ca.pdb
  number 15
  resnumbers 1
  inside box 0. 0. 0. 46. 46. 24.
end structure


structure Ca.pdb
  number 15
  resnumbers 1
  inside box  0. 0. 42. 46. 46. 66.
end structure

1万

帖子

25

威望

1万

eV
积分
35687

管理员

公社社长

 楼主| 发表于 2014-12-20 22:14:28 | 显示全部楼层
ruanyang 发表于 2014-12-20 22:01
Sob老师您好,您提到了可以利用Packmol构建初始构型,我想请教一下那个resnumbers这个命令应该怎样使用(手 ...

想不起来了,就用ultraedit之类的工具用列模式手动编辑一下就行了
北京科音自然科学研究中心:http://www.keinsci.com  致力于计算化学的发展和传播,不定期开办各层次量子化学、分子动力学、波函数分析与Multiwfn程序等主题的培训。欢迎加入“北京科音”微信公众号获取培训最新消息和计算化学资讯
思想家公社的门口Blog:http://sobereva.com(发布大量原创计算化学相关博文)
Multiwfn主页:http://sobereva.com/multiwfn(最流行的量子化学波函数分析程序)
计算化学公社论坛:http://bbs.keinsci.com(高水平、高人气、综合性计算化学交流论坛)
思想家公社QQ群1号:18616395,2号:466017436。用于讨论理论、计算化学,两个群讨论范畴相同,可加入任意其一但不可都加入,申请信息必须注明具体研究方向,否则一概不批。研究方向和理论、计算化学无关者勿加,以免浪费宝贵的空位

此账号为诸Sobereva共用
Money and papers are rubbish, get a real life!

289

帖子

0

威望

2922

eV
积分
3211

Level 5 (御坂)

发表于 2014-12-21 07:57:47 | 显示全部楼层
我也是这样处理的!  我不清楚这个resnumbers怎么用!在UltraEdit中编辑有点麻烦!谢谢Sob l老师

110

帖子

0

威望

1245

eV
积分
1355

Level 4 (黑子)

发表于 2014-12-22 10:55:36 | 显示全部楼层
本帖最后由 yaochuang 于 2014-12-22 11:13 编辑
sobereva 发表于 2014-12-20 20:32
你也得相应地在结构文件里放5个分子才能对应上。
可以用packmol来生成初始结构,要放几个分子,在什么位 ...

谢谢sob老师,

我还有一个问题就是gromacs中可不可以把水盒子换成其他的溶剂盒子呢,比如说甲醇之类的。 我直接利用genbox把甲醇插入到盒子中,利用甲醇的密度来算盒子中插入的甲醇分子的个数。 这样可以吗?
我计算的一个6*6*6的盒子中要插入19224个甲醇分子,感觉和水比起来太多了,跑不完就死掉了。这样算可能是太多了,那要怎样计算分子的数量呢?
有没有其他的办法呢?

1万

帖子

25

威望

1万

eV
积分
35687

管理员

公社社长

 楼主| 发表于 2014-12-22 11:15:08 | 显示全部楼层
不用设个数,genbox自动就会把盒子填满,能填多少填多少。
北京科音自然科学研究中心:http://www.keinsci.com  致力于计算化学的发展和传播,不定期开办各层次量子化学、分子动力学、波函数分析与Multiwfn程序等主题的培训。欢迎加入“北京科音”微信公众号获取培训最新消息和计算化学资讯
思想家公社的门口Blog:http://sobereva.com(发布大量原创计算化学相关博文)
Multiwfn主页:http://sobereva.com/multiwfn(最流行的量子化学波函数分析程序)
计算化学公社论坛:http://bbs.keinsci.com(高水平、高人气、综合性计算化学交流论坛)
思想家公社QQ群1号:18616395,2号:466017436。用于讨论理论、计算化学,两个群讨论范畴相同,可加入任意其一但不可都加入,申请信息必须注明具体研究方向,否则一概不批。研究方向和理论、计算化学无关者勿加,以免浪费宝贵的空位

此账号为诸Sobereva共用
Money and papers are rubbish, get a real life!
您需要登录后才可以回帖 登录 | 现在注册!

本版积分规则

手机版|北京科音自然科学研究中心|京公网安备 11010502035419号|计算化学公社 — 北京科音旗下高水平计算化学交流论坛 ( 京ICP备14038949-1号 )

GMT+8, 2018-11-15 08:58 , Processed in 0.127810 second(s), 27 queries .

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