计算化学公社

 找回密码 Forget password
 注册 Register
Views: 10904|回复 Reply: 3
打印 Print 上一主题 Last thread 下一主题 Next thread

[GROMACS] 请问gromacs能做出把rmsd和簇序号放在一张图上吗

[复制链接 Copy URL]

210

帖子

0

威望

1853

eV
积分
2063

Level 5 (御坂)

如题,请教gromacs是否能够把rmsd图 不同区域的的颜色用簇的序号来表示,就像下图一样。如果能做的话,该如何做呢。谢谢。

示意.jpg (129.88 KB, 下载次数 Times of downloads: 24)

示意.jpg

6万

帖子

99

威望

5万

eV
积分
120168

管理员

公社社长

2#
发表于 Post on 2018-7-4 02:10:32 | 只看该作者 Only view this author
自己写个程序,根据gmx cluster的归簇的输出,把RMSD曲线数据根据簇编号拆分成不同文件,然后在origin里绘制到一起,每套数据用不同颜色
北京科音自然科学研究中心http://www.keinsci.com)致力于计算化学的发展和传播,长期开办极高质量的各种计算化学类培训:初级量子化学培训班中级量子化学培训班高级量子化学培训班量子化学波函数分析与Multiwfn程序培训班分子动力学与GROMACS培训班CP2K第一性原理计算培训班,内容介绍以及往届资料购买请点击相应链接查看。这些培训是计算化学从零快速入门以及进一步全面系统性提升研究水平的高速路!培训各种常见问题见《北京科音办的培训班FAQ》
欢迎加入北京科音微信公众号获取北京科音培训的最新消息,并避免错过网上有价值的计算化学文章!
欢迎加入人气极高、专业性特别强的理论与计算化学综合交流群思想家公社QQ群(群号见此链接),合计达一万多人。北京科音培训班的学员在群中可申请VIP头衔,提问将得到群主Sobereva的最优先解答。
思想家公社的门口Blog:http://sobereva.com(发布大量原创计算化学相关博文)
Multiwfn主页:http://sobereva.com/multiwfn(十分强大、极为流行的量子化学波函数分析程序)
Google Scholar:https://scholar.google.com/citations?user=tiKE0qkAAAAJ
ResearchGate:https://www.researchgate.net/profile/Tian_Lu

210

帖子

0

威望

1853

eV
积分
2063

Level 5 (御坂)

3#
 楼主 Author| 发表于 Post on 2018-7-4 07:39:39 | 只看该作者 Only view this author
sobereva 发表于 2018-7-4 02:10
自己写个程序,根据gmx cluster的归簇的输出,把RMSD曲线数据根据簇编号拆分成不同文件,然后在origin里绘 ...

好的,谢谢sob老师。

210

帖子

0

威望

1853

eV
积分
2063

Level 5 (御坂)

4#
 楼主 Author| 发表于 Post on 2018-7-4 08:51:12 | 只看该作者 Only view this author
我写了这一过程,希望对需要的人有帮助。
#!/bin/bash

function usage {
echo "   Usage: gen_rmsd_clust.sh clust-id.xvg rmsd.xvg            "
exit 1
}

if [ $# -lt 2 ] ; then
  usage
  exit 1
fi

file1=$1
file2=$2

awk '{if($1~/[0-9]/){print $2}}' ${file1} > temp1_${file1}

awk '{sum[$1]+=1}END{for(i in sum)print i"\t"sum[i]}' temp1_${file1} > temp2_${file1}

awk '{printf $1" "}' temp2_${file1} > temp3_${file1}

clusters=`cat temp3_${file1}`

for cluster in $clusters
do
        awk -v cluster=$cluster '{if($1~/[0-9]/ && $2==cluster){printf $1".0000000 "}}' ${file1} > cluster_$cluster
        frames=`cat cluster_$cluster`
        rm -f rmsd_$cluster
                 for frame in $frames
                 do
                             awk -v frame=$frame '{if($1~frame){print $0}}' ${file2} >> rmsd_$cluster
                done

done


本版积分规则 Credits rule

手机版 Mobile version|北京科音自然科学研究中心 Beijing Kein Research Center for Natural Sciences|京公网安备 11010502035419号|计算化学公社 — 北京科音旗下高水平计算化学交流论坛 ( 京ICP备14038949号-1 )|网站地图

GMT+8, 2025-8-16 20:35 , Processed in 1.136887 second(s), 23 queries , Gzip On.

快速回复 返回顶部 返回列表 Return to list