MD tips

amber,gromacs,charmm互转
  • import parmed as pmd
  • amber = pmd.load_file('prmtop', 'inpcrd')
  • # Save a GROMACS topology and GRO file
  • amber.save('gromacs.top')
  • amber.save('gromacs.gro')
  • # Save a CHARMM PSF and crd file
  • amber.save('charmm.psf')
  • amber.save('charmm.crd')
  •               
能量最小化不收敛的话,就不断增加步数
单核运行sander有时候可以解决MPI运行的错误(具体原因未知)
amber 自带的脚本可以将out文件中的能量, 温度, 压力, 密度和体积, 并将其保存到单独的数据文件中
process_mdout.perl ../02_Heat.out ../03_Prod.out              
能量最小化时的输出文件
    
  • 关注能量是否收敛,RMS不能太大,Gmax表示the element of the gradient vector with the largest magnitude Gmax较大的话,意味着第number位的name原子不太合理,可手动调整后,再进行能量最小化。Gmax小于10 是比较理想的
  • 如果要保持水盒子的一致性,可以将水的坐标combine进另外一个pdb, tleap的时候用setbox UNIT vdw添加盒子以及PBC信息
  • 速度是在heat那一步随机产生的
  • 某些情况下,周期性边界会出现问题(全部的原子并不在盒子里面,这个可以通过VMD的周期性显示看出)
  • 初始结构不太合理的,可以通过模拟退火,选取低能构象进行后续MD
  • MMPBSA支持pdb格式
  • 是否封端的问题,一般的原则是如果是截断体,N端用ACE, C端用NME是相对合理的,封端可以用pymol的build-residue,或者将N端的N原子上面的H去掉,加上一个ACE的C,C端的OXT去掉,换成NME的N,tleap会直接补齐残缺的原子
温度耦合方式
  • Berendsen热浴和Bussi热浴
弱耦合热浴。基本思想是将系统和一个恒温的外部热浴耦合,通过热浴吸收或释放能量来调节系统的温度。
在系统远离平衡态时,对温度的调节效率较高,但动能不严格遵循波尔兹曼分布,可能产生“飞冰块现象”(Flying Ice Cube Effect)。因此,它适用于加热阶段,不适用于预平衡阶段。但当体系已经充分平衡,需要校正的程度很小,同时使用较弱的耦合常数(比如,10 ps),使总能量震荡较小,可用于生产(采样)阶段
Bussi热浴是Berendsen热浴的随机版,它根据正则分布随机调整温度。
另外,Berendsen热浴不适合用于隐式溶剂模拟,因为无法通过与溶剂的碰撞来帮助维持恒温。
                
Flying Ice Cube Effect:当分子振动越来越弱,而平动或转动越来越强的时候,分子像冻僵的方块飞来飞去的现象。造成这一现象的原因是这类热浴算法使分子的振动能被“砍掉”(标度)得多、补充得少,逐渐“冻僵”,而平动能和转动能受影响较小。
            
  • Langevin热浴和Andersen热浴
这两种方法的速度和精确度中等。两者采用虚拟随机碰撞的方式来调节速度,干扰了系统的正常演化,削弱了粒子间的速度相关性。但严格遵循正则系综,不影响各态遍历性(ergodicity)。因此,不适合计算动力学性质,可计算热力学性质(如,结合自由能)
在隐式溶剂环境下,Langevin热浴正好通过虚拟碰撞补回粘性效应,因此适合使用。
扩展拉格朗日方法
这类方法克服了上述方法的缺点,可时间反演。代表方法是Nosé-Hoover热浴。
  • Nosé-Hoover热浴
该算法较为复杂,计算速度较慢。在系统远离平衡态时,温度振荡较大,不易收敛,不宜用于加热阶段。但它严格产生正则系综热力学,并近似获得真实的动力学,最适合用于平衡采样
值得一提的是,Nosé-Hoover热浴在特定体系中会表现出病态行为,近年来发展了一些改进方法,例如:Optimized Isokinetic Nose-Hoover chain(OIN)和Stochastic Isokinetic Nose-Hoover RESPA integrator
恒压器
  • Berendsen方法
在系统远离平衡态时,该方法对压力的调节效率较高,适用于最初的压力弛豫,但它不按照正则分布来采样,一般不适用于平衡采样。
  • Nosé-Hoover方法和Parrinello-Rahman方法
与Berendsen方法相反,适用于平衡态控压。
  • 蒙特卡洛(Monte Carlo,MC)方法
方法简单,但效率相对较低。该方法适用于采样阶段。
相互作用分为键作用和非键作用,非键又分为范德华和静电作用,这两种作用又有长程和短程之分,根据设置的cutoff来分类,长短程采取不同的方法去计算,gromacs输出的energy中不包括PME计算的长程作用这部分,氢键属于静电作用,