计算化学公社

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

[VMD] vmd脚本求助 分析分子周围的粒子分布

[复制链接 Copy URL]

115

帖子

0

威望

3850

eV
积分
3965

Level 5 (御坂)

跳转到指定楼层 Go to specific reply
楼主
本帖最后由 diaok 于 2015-12-4 16:46 编辑

这个分析粒子分布的脚本是仿照sob老师的氢键分析写的
  1. proc rgwithin {sel sel2 fps1 fps2} {
  2. set sum 0.0
  3. set cut  6  
  4. #  0.1:0.1:6.1
  5. set piece  0.1
  6. set in  0
  7. for {set j 1} {$in<=$cut} {incr j} {
  8. set in  [expr $j*0.1]
  9. set selin [atomselect top  "$sel && within $in of $sel2"]
  10. set sum  0
  11. for {set i $fps1} {$i<=$fps2} {incr i} {
  12. $selin frame $i
  13. $selin update
  14. set tmp [$selin  num]
  15. set sum [expr $sum+$tmp]
  16. }
  17. #echo  $in
  18. lappend rg    [expr $sum/[expr $fps2-$fps1+1.0]]
  19. $selin  delete
  20. }
  21. return  $rg
  22. }
复制代码


但是这个计算速度特别慢,还会导致电脑特别卡
我的体系里面分析600帧就用了6分钟
而且不知道是什么原因进行第二次计算会越来越慢
脚本中明明已经用了$selin  delete

用什么方法计算一个原子到另一个大分子的最近距离比较快?
用gromacs或者vmd来实现都行


294

帖子

0

威望

3528

eV
积分
3822

Level 5 (御坂)

2#
发表于 Post on 2015-12-4 18:16:35 | 只看该作者 Only view this author
tcl脚本计算本省就比较慢,你改成向量计算可能会快一点!

5万

帖子

99

威望

5万

eV
积分
112496

管理员

公社社长

3#
发表于 Post on 2015-12-4 18:23:02 | 只看该作者 Only view this author
把轨迹转换成xyz格式,自行用Fortran或C代码来载入和分析会很快
注意运行过程中看看内存占用率,有没有越来越高的问题
北京科音自然科学研究中心http://www.keinsci.com)致力于计算化学的发展和传播,长期开办高质量的各种计算化学类培训:初级量子化学培训班中级量子化学培训班高级量子化学培训班量子化学波函数分析与Multiwfn程序培训班分子动力学与GROMACS培训班CP2K第一性原理计算培训班,内容介绍以及往届资料购买请点击相应链接查看。这些培训是计算化学从零快速入门以及进一步全面系统性提升研究水平的高速路!培训各种常见问题见《北京科音办的培训班FAQ》
欢迎加入“北京科音”微信公众号获取北京科音培训的最新消息、避免错过网上有价值的计算化学文章!
欢迎加入人气非常高、专业性特别强的综合性理论与计算化学交流QQ群“思想家公社QQ群”:1号:18616395,2号:466017436,3号:764390338,搜索群号能搜到哪个说明目前哪个能加,合计9000人。北京科音培训班的学员在群中可申请VIP头衔,提问将得到群主Sobereva的最优先解答。
思想家公社的门口Blog:http://sobereva.com(发布大量原创计算化学相关博文)
Multiwfn主页:http://sobereva.com/multiwfn(十分强大的量子化学波函数分析程序)
ResearchGate:https://www.researchgate.net/profile/Tian_Lu
Money and papers are rubbish, get a real life!

115

帖子

0

威望

3850

eV
积分
3965

Level 5 (御坂)

4#
 楼主 Author| 发表于 Post on 2015-12-4 20:16:35 | 只看该作者 Only view this author
sobereva 发表于 2015-12-4 18:23
把轨迹转换成xyz格式,自行用Fortran或C代码来载入和分析会很快
注意运行过程中看看内存占用率,有没有越 ...

sob老师回复神速啊

第二次提取的时候主要是cpu占用升到100%了
vmd的内存占用100m一直没怎么变

很奇怪批处理为什么会越来越慢,6分钟一次还算可以接受
而且删除了分子重新载入都没效果,只能重启vmd


一次批处理的代码
  1. set outfile [open {W:\susedata\kbff\na8.txt} w]
  2. set  tmp  [rgwithin   "type NA"  "resname BGC"   0 499  ]
  3. puts $outfile $tmp
  4. set  tmp  [rgwithin   "type OO"  "resname BGC"   0 499   ]
  5. puts $outfile $tmp
  6. set  tmp  [rgwithin   "type HH"  "resname BGC"   0 499  ]
  7. puts $outfile $tmp
  8. set  tmp  [rgwithin   "type OW"  "resname BGC"   0 299     ]
  9. puts $outfile $tmp
  10. close $outfile
复制代码


Fortran和c语言不怎么熟悉
用matlab的textscan可行吗?轨迹500m,有30000个frame

115

帖子

0

威望

3850

eV
积分
3965

Level 5 (御坂)

5#
 楼主 Author| 发表于 Post on 2015-12-4 20:30:49 | 只看该作者 Only view this author
ruanyang 发表于 2015-12-4 18:16
tcl脚本计算本省就比较慢,你改成向量计算可能会快一点!

有什么好的方法可以在gromacs或者vmd里实现吗?
gromacs我只想到求每个原子与大分子的所有距离,求最小值
然后对所有帧所有原子做直方图

5万

帖子

99

威望

5万

eV
积分
112496

管理员

公社社长

6#
发表于 Post on 2015-12-4 22:36:36 | 只看该作者 Only view this author
gromacs里自带了g_mindist工具,可以看看是否合用
北京科音自然科学研究中心http://www.keinsci.com)致力于计算化学的发展和传播,长期开办高质量的各种计算化学类培训:初级量子化学培训班中级量子化学培训班高级量子化学培训班量子化学波函数分析与Multiwfn程序培训班分子动力学与GROMACS培训班CP2K第一性原理计算培训班,内容介绍以及往届资料购买请点击相应链接查看。这些培训是计算化学从零快速入门以及进一步全面系统性提升研究水平的高速路!培训各种常见问题见《北京科音办的培训班FAQ》
欢迎加入“北京科音”微信公众号获取北京科音培训的最新消息、避免错过网上有价值的计算化学文章!
欢迎加入人气非常高、专业性特别强的综合性理论与计算化学交流QQ群“思想家公社QQ群”:1号:18616395,2号:466017436,3号:764390338,搜索群号能搜到哪个说明目前哪个能加,合计9000人。北京科音培训班的学员在群中可申请VIP头衔,提问将得到群主Sobereva的最优先解答。
思想家公社的门口Blog:http://sobereva.com(发布大量原创计算化学相关博文)
Multiwfn主页:http://sobereva.com/multiwfn(十分强大的量子化学波函数分析程序)
ResearchGate:https://www.researchgate.net/profile/Tian_Lu
Money and papers are rubbish, get a real life!

115

帖子

0

威望

3850

eV
积分
3965

Level 5 (御坂)

7#
 楼主 Author| 发表于 Post on 2015-12-6 16:53:37 | 只看该作者 Only view this author
sobereva 发表于 2015-12-4 22:36
gromacs里自带了g_mindist工具,可以看看是否合用

非常感谢

批量处理可以提取出来
  1. mkdir oho
  2. file=oho/oho.ndx
  3. cat index.ndx >  $file
  4. for i in `seq 1 45`
  5. do
  6. echo [oho$i] >> $file
  7. ((t=$i+4672-2))
  8. echo $t >> $file
  9. done
  10. #批量生成所有离子的group

  11. for i in `seq 1 45`
  12. do
  13. gmx mindist -s md.tpr  -f md.xtc  -n oho/oho.ndx -od oho/o$i.xvg  << EOF
  14. oho$i
  15. 2   #用字母匹配会出错,原因未知
  16. EOF
  17. done
  18. # 批量提取每个粒子到大分子的最小距离

  19. 获得了所有距离
  20. 剩下的就交给matlab去循环读取了
复制代码

评分 Rate

参与人数
Participants 1
eV +2 收起 理由
Reason
sobereva + 2

查看全部评分 View all ratings

294

帖子

0

威望

3528

eV
积分
3822

Level 5 (御坂)

8#
发表于 Post on 2015-12-6 18:17:20 | 只看该作者 Only view this author
强,脚本写的很牛逼

43

帖子

0

威望

246

eV
积分
289

Level 3 能力者

9#
发表于 Post on 2015-12-17 21:40:30 | 只看该作者 Only view this author
好厉害,我是刚入行菜鸟一枚,想问一下,直接用python之类的语言我应该怎么从trr中读取出每个分子或者原子的位置信息呢?
以为trr是二进制文件,不知道怎么看啊……

5万

帖子

99

威望

5万

eV
积分
112496

管理员

公社社长

10#
发表于 Post on 2015-12-18 00:05:08 | 只看该作者 Only view this author
compume 发表于 2015-12-17 21:40
好厉害,我是刚入行菜鸟一枚,想问一下,直接用python之类的语言我应该怎么从trr中读取出每个分子或者原子 ...

自己用python读trr很难实现,建议你把trr用VMD转换为xyz轨迹,是二进制文件,这种轨迹格式非常简单,之后自己写程序分析处理很方便。当然体积比trr大不少。
北京科音自然科学研究中心http://www.keinsci.com)致力于计算化学的发展和传播,长期开办高质量的各种计算化学类培训:初级量子化学培训班中级量子化学培训班高级量子化学培训班量子化学波函数分析与Multiwfn程序培训班分子动力学与GROMACS培训班CP2K第一性原理计算培训班,内容介绍以及往届资料购买请点击相应链接查看。这些培训是计算化学从零快速入门以及进一步全面系统性提升研究水平的高速路!培训各种常见问题见《北京科音办的培训班FAQ》
欢迎加入“北京科音”微信公众号获取北京科音培训的最新消息、避免错过网上有价值的计算化学文章!
欢迎加入人气非常高、专业性特别强的综合性理论与计算化学交流QQ群“思想家公社QQ群”:1号:18616395,2号:466017436,3号:764390338,搜索群号能搜到哪个说明目前哪个能加,合计9000人。北京科音培训班的学员在群中可申请VIP头衔,提问将得到群主Sobereva的最优先解答。
思想家公社的门口Blog:http://sobereva.com(发布大量原创计算化学相关博文)
Multiwfn主页:http://sobereva.com/multiwfn(十分强大的量子化学波函数分析程序)
ResearchGate:https://www.researchgate.net/profile/Tian_Lu
Money and papers are rubbish, get a real life!

43

帖子

0

威望

246

eV
积分
289

Level 3 能力者

11#
发表于 Post on 2015-12-18 10:01:33 | 只看该作者 Only view this author
sobereva 发表于 2015-12-18 00:05
自己用python读trr很难实现,建议你把trr用VMD转换为xyz轨迹,是二进制文件,这种轨迹格式非常简单,之后 ...

THX,可是我的trr文件有几个G……这样处理岂不会很慢

5万

帖子

99

威望

5万

eV
积分
112496

管理员

公社社长

12#
发表于 Post on 2015-12-18 12:18:29 | 只看该作者 Only view this author
compume 发表于 2015-12-18 10:01
THX,可是我的trr文件有几个G……这样处理岂不会很慢

没法避免
北京科音自然科学研究中心http://www.keinsci.com)致力于计算化学的发展和传播,长期开办高质量的各种计算化学类培训:初级量子化学培训班中级量子化学培训班高级量子化学培训班量子化学波函数分析与Multiwfn程序培训班分子动力学与GROMACS培训班CP2K第一性原理计算培训班,内容介绍以及往届资料购买请点击相应链接查看。这些培训是计算化学从零快速入门以及进一步全面系统性提升研究水平的高速路!培训各种常见问题见《北京科音办的培训班FAQ》
欢迎加入“北京科音”微信公众号获取北京科音培训的最新消息、避免错过网上有价值的计算化学文章!
欢迎加入人气非常高、专业性特别强的综合性理论与计算化学交流QQ群“思想家公社QQ群”:1号:18616395,2号:466017436,3号:764390338,搜索群号能搜到哪个说明目前哪个能加,合计9000人。北京科音培训班的学员在群中可申请VIP头衔,提问将得到群主Sobereva的最优先解答。
思想家公社的门口Blog:http://sobereva.com(发布大量原创计算化学相关博文)
Multiwfn主页:http://sobereva.com/multiwfn(十分强大的量子化学波函数分析程序)
ResearchGate:https://www.researchgate.net/profile/Tian_Lu
Money and papers are rubbish, get a real life!

43

帖子

0

威望

246

eV
积分
289

Level 3 能力者

13#
发表于 Post on 2015-12-18 14:53:34 | 只看该作者 Only view this author

好嘞,多谢sob老师~

21

帖子

0

威望

58

eV
积分
79

Level 2 能力者

14#
发表于 Post on 2015-12-19 20:56:15 | 只看该作者 Only view this author
您好,请问sob老师氢键分析的脚本在哪里可以找到,非常感谢

105

帖子

0

威望

867

eV
积分
974

Level 4 (黑子)

15#
发表于 Post on 2015-12-19 21:28:53 | 只看该作者 Only view this author
没有考虑周期边界是不是会少很多氢键?

本版积分规则 Credits rule

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

GMT+8, 2024-11-27 11:08 , Processed in 0.242949 second(s), 22 queries , Gzip On.

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