GROMACS自由能形貌图绘制

简单的介绍一下自由能图绘制

关于GROMACS自由能图的介绍有很多,你可以参看浅谈PCA与g_covar+g_anaeig+ddtdp+sigmaplot做自由能面图的方法gromacs使用PCA绘制能量景观图等博文。这几篇博文都讲到了如何去产生数据进行绘图,我下面对此补充一点。

  • 绘图方式
    前面博文分别提到了使用gmx sham产生自由能并使用Python绘图,以及自写的一个ddtpd产生概率或者自由能并使用Sigmaplot进行绘图。其实关键还是要有数据你才能进行绘图。
  • 数据产生
    首先你需要有已知的两列数据,可以是任意的主成分PC,比如常见的RmsdRgDihedral,本征向量等等。然后将其按照网格划分并统计出各自的概率,最后转换成自由能。如果本身数据点较少,在不影响最终结果的时候可以适当考虑通过插值的方式进行扩充数据点,使得图更加美观。
    这里有多种方式进行概率或者自由能计算,一种是利用自带程序,比如gmx sham,另一种是自写程序,比如ddtdp。上面博文1中提到的利用gmx shampython联合处理数据,python中使用到了双线性插值的方式扩充数据点。但是我仔细研究了一下gmx sham这个程序,觉得直接用它就可以做出比较漂亮的图了,不需要使用python。步骤如下:

    • 使用gmx sham产生自由能的xpm文件

      1
      gmx sham -f test.xvg -notime -ngrid 100 100 100

      这里我解释一下具体参数:test.xvg这个文件是上面博文2中用到的输出数据,即两列PC-notime表明不使用时间列,即输入文件不需要第一列时间,与test.xvg文件相符;-ngrid 100 100 100表明使用的网格数,这个值得自己按照你的实际情况去调整不能太大,你可以多次测试查看产生的图像如何。
      执行完会产生很多xpm文件,与本文相关的是prob.xpmgibbs.xpm,一个数概率,一个转换后的自由能。

    • 使用gmx xpm2ps转换成图像

      1
      gmx xpm2ps -f gibbs.xpm -rainbow red

      参数解释:gibbs.xpm是自由能输入文件,上一步产生的;-rainbow red表明使用的彩虹图颜色调
      执行命令以后默认产生一个plot.eps图像文件,打开查看效果。如下图:


    看上去还不错,让我们再看看上面博文2中的图:

    看上去和上面的图很类似,但颜色差点东西…


    如果你在使用gmx sham时不使用-ngrid选项,那么最终的图会是这样的:

    明显网格划分太大,图像很丑。


因此数据处理还是一门艺术活。