一、准备gromacs能够识别的文件:

模型的拓扑文件和坐标文件,在amber中,使用的后缀分别是*.prmtop和*.crd

1.利用python的parm模块(要是装有amber,就有这个模块)进行top和crd文件格式转换:

编写如在的格式转换py脚本convert.py:

#!/usr/bin/python3
import parmed as pmd
import sys# convert GROMACS to AMBER :
def conver_gromacs_to_amber(top,crd):gmx_top=pmd.load_file(top,xyz=crd)gmx_top.save("myfile.prmtop",format="amber")gmx_top.save("myfile.inpcrd",format="rst7")# convert amber to gromacs:
def convert_amber_to_gromacs(top,crd):amber=pmd.load_file(top,crd)amber.save("myfile.top")amber.save("myfile.gro")if __name__ == "__main__":if sys.argv[1]=="Y":amber_crd_file=sys.argv[2]amber_top_file=sys.argv[3]convert_amber_to_gromacs(amber_top_file,amber_crd_file)else:#such as "pmaawaterFE20mer2.top"gmx_top_file=sys.argv[1]#such as "pmaawaterFE20mer2.gro"gmx_crd_file=sys.argv[2]convert_amber_to_gromacs(gmx_top_file,gmx_crd_file)

输入如下的命令,将amber的top和crd文件转换为gromacs格式:

python3 convert.py Y xx.inpcrd xx.prmtp

2.运行vmd软件将轨迹文件*nc转化为gromac支持的格式trr

二、准备绘制FEL的数据:

1.利用gromacs计算轨迹的RMSD和Rg数据:

我这里使用的坐标文件是转换脚本得到的xx.gro,轨迹文件是VMD得到的xx.trr


#去除整体的平动和转动:
#*.tpr是坐标文件,*.xtc是轨迹文件
gmx trjconv –s pro.tpr –f pro.xtc –o pro.xtc –fit rot+trans#计算CA的RMSD值,输出数据为rmsd.xvg:
gmx rms –s pro.tpr –f pro.xtc –o rmsd.xvg #计算CA的Rg值,输出数据为gyrate.xvg:
gmx gyrate –s pro.tpr –f pro.xtc –o gyrate.xvg

这部分可以用cpptraj来做,*.xvg文件用gedit文本编辑器可以打开

2.将RMSD数据和Rg数据整合为一个文件out.xvg:

编写PY脚本combine.py:

import pandas as pd#read data:
rg=pd.read_csv(r'tyr_rg.xvg',sep=",")
rms=pd.read_csv(r'tyr_rmsd.xvg',sep=",")#extract specified data:
frame=rg["frame"]
rmsd=rms["rmsd"]
Rg=rg["rg"]#整合数据:
with open ("out.xvg",mode="w+",encoding="utf-8") as f:for i in range(len(frame)):f.write(str(frame[i])+","+str(rmsd[i])+","+str(Rg[i])+"\n")

在运行脚本前,需要将输入文件*.xvg格式改为逗号分隔的格式,同时添加行名

得到用逗号分隔的输出数据文件out.xvg

out.xvg数据列之间用7个空格分割,第一行信息用#号注释

3.gromacs的sham绘制自由能形貌图: 

gmx sham –tsham 310 –nlevels 100 –f out.xvg –g gibbs.log –ls gibbs.xpm –g gibbs.log \
–lsh  enthalpy.xpm -lss entropy.xpm
#或是:
gmx sham -f out.xvg

这里得到的由gromacs得到的四张xpm图片是灰度图 ,利用脚本xpm2png.py将图片转为彩色的png

脚本xpm2png.py的下载:xpm2png.py下载链接

输入命令,利用xpm2png.py,将灰度图转换成彩色图:

python xpm2png.py -f Gibbs.xpm -o Gibbs.png -ip yes -show yes

不加-ip yes 输出的还是灰度图,但-show可加可不加,得到的Gibbs.png

查看得到的gibbs.png:

三、FEL图片细节的调整

1.对图像标签的调整:

因为数据不是主成分,而是RMSD和Rg,就在Gibbs.xpm里修改x-label和y-label :

2.对图像色板的调整:

若是要调整色板和图像距离,在xpm2png.py的代码段plt.colorbar()上加上pad=0.12,这里的<float>是一个浮点数,表示右侧色板和中央能量形貌图的距离。

若是要调整色板为水平状态,在plt.colorbar()里加上orientation="horizontal",将色板转为水平状态。

想要划分出色板渐变的颜色,在plt.colorbar()里加上boundaries=[i\10 for i in range(1,61)],这里的list是色板上的刻度值。想要为色板渐变的颜色添加划线,同样在plt.colorbar()里加上参数drawedges=True

一般最好不要修改这个脚本。

查看修改的效果: 

图中只有一个能量井,说明这个轨迹里出现一个能量最低的稳定构象

利用gromacs软件绘制自由能形貌图相关推荐

  1. 利用Gephi软件绘制网络图

    文章目录 利用Gephi软件绘制网络图 1. 生成物种相关性矩阵 2. Gephi生成点.边文件 3. 点.边文件注释 4. 网络点.边美化 5. 网络属性.预览和标签 参考文献 猜你喜欢 写在后面 ...

  2. 思维导图制作软件推荐,怎样使用软件绘制思维导图

    思维导图的绘制可以使用手绘也可以使用电脑进行绘制,那绘制思维导图使用什么软件呢?利用电脑进行绘制可以带来很大的便利,并且可以保证绘制思维导图的效率以及质量,下面是小编经常使用的绘制思维导图的软件推荐, ...

  3. gromacs PCA 做自由能景观图

    在文献中看到有人做自由能景观图,记录下自己的操作过程 参考http://www.kangsgo.com/49.html http://sobereva.com/73 https://www.zhihu ...

  4. 思维导图怎么画?如何利用画图工具绘制思维导图

    在我们的日常办公中,越来越多的人们开始尝试着使用思维导图,它简单却很有效,可以帮助我们记忆,是一种很实用的思维工具,但是很多人们在绘制思维导图的时候都说很难绘制,每当看到别人绘制的思维导图都是那么的好 ...

  5. 如何去利用MindManager 2020绘制逻辑思维导图呢?

    MindManager软件界面:首先要有一定的逻辑思维,比如逻辑导图可以分为以上三种,分别是分层思维导图.边界思维导图.以及推理思维导图. !MindManager软件界面: 分层思维一级一级向外延伸 ...

  6. 使用Altium Designer10软件绘制芯片引脚图(以IC1114芯片为例)

    运用Altium Designer软件绘制IC1114-F48LQ芯片的原理图库,详细步骤如下: 第一步:在"文档"里新建一个文件夹,命名为"电子产品创新设计源文件&qu ...

  7. 利用卫星数据绘制热脆弱性图—利用遥感监测城市热量

    地球上的很多地方都有逐渐变热的趋势,特别是我们居住的城市,城市吸收并重新释放大量的热量,该热量来自于用来建造城市的混凝土材料.在某些情况下,这可能只是会引起一些不适感,但对于某些城市来说,可能会导致严 ...

  8. 利用OVITO软件绘制团簇构型 (ICO, BCC, HCP, FCC及SC 多面体)

    ​ -------------------------------------------------------------------- 记录一下如何利用OVITO软件画ICO, BCC, HCP ...

  9. 如何利用迅捷画图绘制精美思维导图,流程图

    思维导图,流程图的用处是比较广泛的,大到企业,小到家庭很多人只知道有这样的软件但是却从来没有上手操作过,所以今天分享一个可以绘制思维导图以及流程图的在线网站迅捷画图. 工具/原料: 电脑 迅捷画图 绘 ...

最新文章

  1. 英语语法总结--连词
  2. winform 程序制作自己的数字签名(续)
  3. 基于C++中常见内存错误的总结
  4. SET CONSTRAINTS DEFERRED | IMMEDIATE
  5. android studio发布版和测试版证书SHA1获取
  6. Struts入门学习(三)---自定义类型转换器
  7. 【工具推荐】PDF和其他格式的相关的转换
  8. 使用HTML5里的classList操作CSS类
  9. 网路是怎样连接的(十二)IP地址怎么看
  10. 【LKJ】LKJ弧形限速小结
  11. java a标签实现文件下载_a标签实现文件下载 避免直接打开问题
  12. models.TABLE.objects.filter()与models.TABLE.objects.get()的区别
  13. 微信开放平台(公众号)API学习笔记(1)-公众号测试账户
  14. uniapp跳转外部链接
  15. SQL 语句的类型和 用法
  16. 使用GHOST镜像文件在VMWARE WROKSTATION上安装系统(图)
  17. Meth | git 常用命令
  18. 阿里云海外服务器地域及所在城市国家对照表
  19. Android多人视频聊天应用的开发(三)多人聊天
  20. 数据预处理之数据离散化

热门文章

  1. Java后端如何对日期做储存并可以以日期排序
  2. DPOS——授权股权证明机制
  3. 时空智友采购流程涉及表
  4. Python3爬虫实战一之爬取网易云音乐热评
  5. 群晖php pear,Synology 群晖DSM7.0 40850 beta 版本各机型固件下载链接
  6. 20小时快速入门go语言视频 - Day5
  7. 浅谈室内定位常见的几种运用场景
  8. 秋招面经—C++后端
  9. MySQL count(*)、count(1) 和count(字段)的区别以及count()查询优化手段
  10. Java网络编程进化史:从IO到NIO再到Netty