分子动力学模拟力场选择

最近打算分析一下分子动力学模拟中,蛋白相互作用对不同力场的依赖性。收集资料时发现李继存老师在其博客上对力场的选择及小分子力场的构建、转换做了详细的描述,故将其内容搬运整理至此,以作备忘。
关于小分子力场的设定,会在后续文章中进行详细描述。

性能

模拟有机小分子热力学性质用Charmm generalized >= OPLS-AA >= GAFF,但实际上GAFF已经很好了。它们计算各种有机分子的密度、蒸发焓都很准确,但是介电常数、等温压缩系数计算得都一般。GAFF对于带有硝基的分子不好。OPLS和GAFF对于苯甲醛、甲酸,以及有两个及以上Br或Cl相距较近的情况都不好。

对蛋白质构象的模拟: ff99SB+ildn+nmr > CHARMM27 >OPLS »f99。


  • Berger:专门用于磷脂的力场
  • PFF=Polarizable Force Field
  • VAMM=Virtual atom molecular mechanics

大分子力场

  • CHARMM=Chemistry at HARvard Macromolecular Mechanics,函数形式简单,包含以下版本:
    • CHARMM19:联合原子力场,也适用于蛋白质。
    • CHARMM22:全原子力场,适用于蛋白质。
    • CHARMM22/CMAP:适用于隐势GBSW。名字编号是最初使用这种力场的CHARMM版本得名的。
    • CHARMM27:适用于核酸和脂(膜)。与22结合可以混合使用模拟蛋白+核酸体系。应当用TIP3P,是在这种水模型下拟合的。
    • CHARMM General Force Field(CGenFF):用于药物类小分子,也可视为通用有机小分子力场。可结合其它CHARMM全原子力场使用。
    • CHARmm:CHARMM的商业版本,归Accelrys。
  • AMBER=Assisted Model Building with Energy Refinement:适合蛋白和核酸的凝聚相模拟,有机小分子支持得少。函数形式简单。包含以下版本:
    • ff12力场(parm10.dat+frcmod.ff12SB):与ff10的区别是对蛋白的骨架和侧链扭转项参数做了进一步修正以更吻合实验。核酸的参数没变。这是目前最好的amber力场。
    • ff10力场(parm10.dat):对ff99的各种参数补丁的集合,相当于parm99.dat + frcmod.ff03 + bsc0 + chi.OL3 + 新的离子参数 + 原子和残基名的修改以顺应PDB format version 3。蛋白的参数和ff99SB相同。
    • ff99SBildn(frcmod.ff99SBildn):对ff99SB的异亮氨酸、亮氨酸、天冬氨酸、天冬酰胺的侧链参数改进的补丁。
    • ff99SBnmr(frcmod.ff99SBnmr):基于NMR数据对ff99SB的骨架参数进行修正的补丁。
    • ff03.r1力场(parm99.dat+frcmod.ff03):ff99力场的修改版。获取电荷时通过连续介电模型表现溶剂可极化效应,修改了蛋白phi、psi骨架参数,减少了对螺旋构象的偏爱。核酸参数相对于ff99没变。ff03.r1与amber9中的ff03略有不同,那时仍用的是ff94的方法得来的碳、氮端基原子电荷,如果仍想用那时代的ff03就调用oldff/leaprc.ff03.
    • ff03ua力场(parm99.dat+frcmod.ff03+frcmod.ff03ua):ff03力场的united-atom版本,侧链的氢原子被united了,骨架上的氢原子和芳香环上的氢原子仍被保留。由于骨架还是全原子故骨架势参数没变,侧链上的参数因用了united故重新拟合。核酸参数完全没变,且还是全原子。
    • ff02力场(parm99.dat+frcmod.ff02pol.r1):ff99力场的可极化版,给原子上增加了可极化的偶极子。frcmod.ff02pol.r1是对原ff02的扭转参数的修正。
    • ff02EP力场(parm99EP.dat+frcmod.ff02pol.r1):ff02力场基础上给诸如氧、氮、硫原子增加了偏离原子中心的点电荷以表现孤对电子效应。据称比ff02稍好点。
    • ff99力场(parm99.dat):大部分参数来自ff94力场,修改了许多扭转角的参数。甘氨酸的骨架参数有问题,螺旋和延展构象的平衡性不对。而对于DNA,ff99长时间模拟中亚稳态占统治地位,即alpha和gamma二面角倾向于分别为gauche+和trans状态。虽然在RNA中也有这问题,但不严重。ff99的这些毛病在ff94里也有。
    • ff99SB力场(parm99.dat+frcmod.ff99SB):对ff99的蛋白二面角参数进行修正,二级结构间分布的比例得到了改善,也解决了甘氨酸骨架参数问题。
    • bsc0(frcmod.parmbsc0):解决上述ff99在核酸模拟问题上的补丁,同时还改进了RNA的糖苷的gamma二面角扭转势。可参考http://mmb.pcb.ub.es/PARMBSC0。
    • ff99SB+bsc0力场:把bsc0补丁用到ff99SB上,相对于ff99同时增进对蛋白和核酸的效果。这个组合使gamma二面角过分偏离了trans型。如果初始结构有很多gamma角为trans的情况,还是用ff99比较好。
    • ff99SBildn(frcmod.ff99SBildn):在ff99SB基础上修改氨基酸侧链参数的补丁。
    • ff99SBnmr(frcmod.ff99SBnmr):在ff99SB基础上修改骨架扭转项参数以更符合NMR数据的补丁。
    • ff98力场(parm98.dat):对ff94改进了糖苷的扭转角参数。
    • ff96力场(parm96.dat):与ff94扭转角不同,算出来的能量更接近量化结果。来自Beachy et al,由于构象有明显偏向beta等问题,使用不广泛。
    • ff94力场(parm94.dat):来自Cornell, Kollman et al。适合溶剂环境。电荷由RESP HF/6-31G*获得。
    • ff86力场(parm91X.dat):将ff84扩展为全原子力场。和ff84一样对氢键也是用Lennard-Jones 10-12势,故如果想在sander里用ff84/86,得重新带着-DHAS_10_12选项编译。之所以相应的文件叫parm91X是因为对原始ff86做了一些修正。(parm91X.dat是parm91.dat的补完版,加入了一些非键项,但非键项比如Mg、I等的参数都没调好,只是近似。)
    • ff84(parm91X.ua.dat):最早的AMBER力场,用于模拟核酸和蛋白质的联合原子力场。不推荐使用,但在真空或者距离依赖的介电常数下模拟还有用。
  • GROMOS=Groningen Molecular Simulation:适合烷烃、蛋白、核酸凝聚相的模拟,函数形式简单。A前边的数字代表此力场所含原子类型数目,后面的是版本号。
    • G43B1:适用于真空下的模拟,现在基本不用。
    • G43A1:是最早的GROMOS96力场,是联合原子力场(极化的氢才表达出来),用于凝聚相,后面那些都是对这个的小幅改进
    • G43A2:是改进了烷烃中原子类型的二面角参数
    • G45A3:是改了烷烃的VDW参数以更好地符合实验数据(气化焓、可压缩率、压强、水合热等)
    • G45A4:是为了改进核酸的模拟,增加了二面角参数、原子类型、改动了原子电荷
    • G53A5和G53A6:调整了参数,分别使生物分子(蛋白、DNA、糖、脂)在环己烷和水中的溶解自由焓贴近实验值。但是蛋白模拟时的结构比起G45A4却有了缺陷。
    • G54A7/B7:修改了psi/phi的扭转角参数以改正模拟蛋白质时对螺旋的稳定性问题,加入了一个-CH3的原子类型,修改了Na+和Cl-以符合其水合能,加入了一个和手性改变相关的improper项。模拟蛋白质的稳定性比G53A6更好了。G54B7是用于真空模拟,是在G53B6基础上做了类似G54A7对G53A6的改进得到的。
  • GLYCAM
    • GLYCAM-06力场(GLYCAM_06g.dat):对以前GLYCAM力场做了改进,并且纳入了一小部分脂类的参数。
    • GLYCAM-04EP力场(GLYCAM04EP.dat):将GLYCAM04扩展到可用于TIP5P模型下的模拟。给氧加上非原子中心点电荷表现孤对电子效应。
    • GLYCAM-04力场(GLYCAM04.dat)=glycans and glycoconjugates in AMBER:专用于糖的模拟,和AMBER完全兼容,可一起用于糖蛋白的模拟。官网:http://glycam.ccrc.uga.edu/ccrc/index.jsp
  • parmAM1和parmPM3力场(parmAM1.dat/parmPM3.dat):用这个参数对蛋白质优化可以得出与AM1/PM3相同的优化结果。如今已没什么价值。
  • GAFF力场(gaff.dat)=Generation Amber Force Field:普适型有机小分子力场,函数形式和AMBER力场相同,与AMBER力场完全兼容。
  • lipid11:与Amber力场完全兼容的模拟磷脂和胆固醇的力场。
  • AMOEBA:可极化力场,能模拟水、蛋白、单价离子、有机分子。速度比起一般的固定点电荷力场慢8倍。
  • OPLS=Optimized potentials for liquid simulations:Jorgensen搞的。适合有机小分子、蛋白凝聚相的模拟。函数形式简单。最初OPLS-UA是联合原子力场,现在一般都用OPLS-AA全原子力场。
  • MARTINI:流行的粗粒化力场,四个原子(氢也算)凑一个原子,可以做磷脂、蛋白质、聚合物、糖、胆固醇。在gromacs里可以用。一般25~40fs一步,不能考虑二级结构的变化,必须事先指定好。http://md.chem.rug.nl/~marrink/coarsegrain.html
  • ENCAD=Energy Calculation and Dynamics:不流行。专门模拟溶液下蛋白和核酸,侧重于模拟过程中的能量保守性。
  • Shinoda2007=粗粒化力场,专用于模拟水与表面活性剂体系,平均三个重原子折合一个bead。

磷脂膜模拟的力场

  • Gromos96:rtp本身自带了DPPC参数,结果不好。
  • CHARMM27及改进版CHARMM36c:专门且常用的膜力场。
  • Glycam06:支持了少数磷脂分子,非主流。
  • GAFF:GAFF力场没有膜的参数,直接用在膜模拟效果不好。
  • Lipid11(2012):Skjevik提出的膜力场,作为amber系列力场的扩展,参数来自GAFF,几种头部(PC,PE,PS,PH,P2,PGR,PGS,PI)和几种尾部可以自由搭配(模块化)组成磷脂,还支持胆固醇,完全兼容amber力场,leap已支持。非主流。Dickson(2012)的GAFFlipid力场只是一个阶段性的膜力场,将会被融合进Lipid11。
  • Berger(1997):联合原子膜力场。成键参数基于GROMOS87,LJ参数基于OPLS-UA,适合搭配Gromos87,很常用也很好,几乎是唯一致命的问题在于不直接兼容Gromos96,若搭配OPLSAA需要很留神。虽然也有一些人结合Gromos96来模拟膜蛋白,但终究比较古怪,需谨慎。原文只给出了DPPC的参数,后来又有人基于此弄了其它磷脂的。Berger本身没直接提供参数和拓扑文件,Peter Tieleman基于Berger的参数制作了DPC、POPC、DPPC、DMPC、DLPC、DOPC、PLPC、POPE的itp文件,都需要lipid.itp中的参数,可以在这里下载:http://wcm.ucalgary.ca/tieleman/downloads
  • G43A1-S3 (2006):Chiu弄的兼容Gromos43A1的膜力场。支持PC/PE/sphingomyelin和cholesterol。此力场的POPC不建议使用。
  • Kukol(2009):完全兼容Gromos96 G53A6的膜力场,烷烃链是联合原子,结果很好,和Berger相仿佛,弥补了它不支持Gromos96的遗憾。拓扑文件从原文的补充材料里得到。包含DPPC、DMPC、POPG、POPC、DMPC的参数。此力场的POPC不建议使用。
  • DAVID POGER(2010):完全兼容gromos96 G53A6的膜力场。JCC的文章中只提出了DPPC的参数,JCTC的文章中还提出了DLPC、DMPC、DOPC、POPC的参数。网址和gmx的拓扑文件:http://compbio.chemistry.uq.edu.au/~david/research/lipids.htm
  • Stockholm lipids (Slipids) (2012):Jambeck弄的全原子膜力场。兼容amber。支持DPPC、DLPC、DMPC、POPC、DOPC、SOPC、POPE、DOPE、sphingomylin、PG和PS头部集团、胆固醇。gromacs的拓扑文件和预平衡的结构从这里下:http://people.su.se/~jjm/Stockholm_Lipids/Downloads.html
  • MARTINI:粗粒化。网址和gmx的拓扑文件:http://md.chem.rug.nl/cgmartini/index.php/downloads
    Lipidbook汇总了各种膜力场的参数:http://lipidbook.bioch.ox.ac.uk
  • ATB带了几十种兼容gromos96的膜参数(可能对应的gromos96版本不同),ATB也能自动生成新的磷脂的参数。ATB网址和gmx的拓扑文件:http://compbio.biosci.uq.edu.au/atb/
  • 测试总结(http://md.chem.rug.nl/cgmartini/index.php/blog/269-jungle2): slipid最好,CHARMM36其次,berger很好,Kukol和poger说得过去,后者貌似相对略好。磷脂平均表面积、平均体积、头部集团距离都很容易算准,所有膜力场都没问题,但扩散能力、等热表面可压缩率大多膜力场难以算准。值得一提的是,一种膜力场当中,某种磷脂算得好绝不代表另外磷脂就算得好。

水模型

不一定水模型是力场御用的就一定比用其它的水好。对于非极化的水,TIP4P-EW是最好的。对于可极化的水,AOMEBA是最好的。

  • TIP3P:amber、gaff御用的。(charmm力场建议使用这个或者tip4p, JCTC. 2010, 6, 459–466)
  • TIP4P:OPLS御用的。
  • TIP4P-EW:在TIP4P基础上专为ewald计算优化,对水的凝聚相各种热力学、结构性质表现得比其它水模型都好。
  • SPC:GROMOS力场御用的。
  • SPCE:对纯水体系比SPC、TIP3P都好。但是有人说这个在纯水下表现好,在混合体系疏水性略强。
  • shell水模型:在gmx中直接支持。就是给普通的水中间加了个振子表现可极化效应。虽然形式是所有可极化水模型里几乎最简单的,耗时少,但是步长必须设得很短,0.2fs。
  • AMOEBA水模型=Atomic Multipole Optimized Energetics for Biomolecular Application:主要在Tinker中使用,amber也支持。包括比较复杂的可极化水模型,是三点模型,在原子中心上除了单极矩(原子电荷)外还用偶极矩、四极矩来精确描述电荷分布,并且给予原子由拟合实验值得到的原子极化率,在外场下产生诱导偶极矩以使电荷分布能响应实际环境,氢的范德华作用也考虑进去。不是一般的LJ势。这个水是柔韧的,因此不要用约束算法固定住它的结构。这个水模型管在纯水液相状况下比TIP5P没什么改进还多花时间,但普适性比起其它模型都好得多,气相、溶液相都适用,而不是像固定点电荷水模型只在特定环境下才好。对结构、热力学数据、结合能重现得都好。

金属

  • Sutton-Chen:适合FCC金属模拟
  • 对势、EAM适合fcc,bcc模拟,近似DFTB势适合bcc,hcp模拟。柳百新的势号称fcc,bcc,hcp都能模拟。

材料力场

  • cvff(consistent valence forcefield):参数用于有机分子、蛋白质模拟,函数形式略复杂。cvff_aug是对其扩展,可以用于研究硅酸盐、铝硅酸盐、磷酸盐、泥土
  • CFF(consistent family of forcefield):包括CFF91和CFF95。适用面很广,涵盖有机无机小分子、聚合物、多糖和生物大分子,还支持金属。函数形式挺复杂。参数由从头算获得,非键参数从CVFF弄来,不适合凝聚相模拟。
  • pcff:基于CFF91,适用范围做了扩展,主要用于聚合物和有机材料,也能用于无机材料,还有糖、核酸、脂的参数。
  • COMPASS=Condensed-phase Optimized Molecular Potentials for Atomistic Simulation Studies:在pcff基础上改进的新版本,同样由从头算获得参数,在凝聚相模拟方面大有改善。适用于有机和一些无机分子、高分子,常用于材料领域的各种性质计算,不支持生物分子。模拟超临界水不错。能够适应很宽范围的压强和温度。MS中COMPASS(即2.8)>COMPASS2.7>COMPASS2.6。在MaterialStudio中御用,参数是加密不公开的,虽然lammps也能用,但是参数不全。

普适力场

  • Dreiding:普适型力场,但支持的元素有限,并非涵盖整个周期表。可以用于有机、生物、主族无机分子。结构、结合能的计算结果精度一般。没有指定计算电荷的方法,建议用拟合静电势电荷,原文用Gasteiger勉强应付。
  • UFF=Universal Force Field:涵盖整个周期表的普适型力场。比Dreiding更好。函数不复杂。UFF计算结构、结合能的计算结果精度一般,主要适合找不到适合的力场时凑合用。默认用QEq电荷。缺少纯金属单质的参数,都是离子的。

反应力场

  • REBO:反应力场,主要用于固体,无非键参数。后来添加了C、H的LJ参数的叫做AI-REBO力场。
  • ReaxFF=Reactive force field:ADF、MS、lammps支持,作者本人也有相应的程序但不公开。这是反应力场,引入键级概念,可以研究模拟过程中的设计拓扑结构改变的化学反应,挺流行。对于结构新鲜的体系可能差一些。用于爆炸燃烧过程的反应貌似不错。支持所有主族和部分过渡金属元素。电荷由EEM获得。参数很多很复杂难找全。形式复杂,步长需要比较小,比如0.1~0.5fs。计算速度慢,貌似介于半经验与一般分子力场耗时之间,只适合最多用于几千个分子,再多的话就得和普通力场联用(类似QM/MM)。

专业小分子力场

  • MMX:早期的有机小分子力场。
  • MM2/MM3/4=Molecular Mechanics versions 2/3/4:用于小分子。函数复杂。计算小分子结构能量好,适合构象搜索、计算频率、获得最稳定结构。由于VDW参数不好,凝聚相问题差。MM3是这一类中最流行的。MM3也有蛋白质参数,叫MM3PRO。
  • MMFF=Merck Molecular Force Field:各方面类似于MM2/3,但比之更好。在CFF之后才发展的,也是从头算计算参数,但提升至MP2级别。参数比较细而且广泛。凝聚相问题仍不好。

ref: