计算化学公社

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

[VMD] VMD选择语言作图的成键问题

[复制链接 Copy URL]

4

帖子

0

威望

25

eV
积分
29

Level 2 能力者

各位老师好! 本人是VMD新手,正在学习PDB文件的VMD可视化, 我尝试使用 VMD选择语言 可视化 氧化石墨烯的结构。遇到了以下问题:
我想将碳骨架上的碳原子(CX)与 羟基(H1A)上的氧原子(OL)相连 (距离限制为1.5A),
但是每次CX与OL相连时, 相邻两个羟基上的OL也会相连(我认为原因是OL与OL, 和 OL与CX 具有相同的距离, 因为一旦我提高距离限制,两种键都会消失)
请教:有没有语句可以只保留OL与CX的键。谢谢!

问题如图中情况 (青绿色:碳原子; 红色:氧原子; 白色: 氢原子)

Screen Shot 2022-03-01 at 4.11.46 PM.png (35.6 KB, 下载次数 Times of downloads: 11)

Screen Shot 2022-03-01 at 4.11.46 PM.png

Screen Shot 2022-03-01 at 4.12.00 PM.png (26.95 KB, 下载次数 Times of downloads: 14)

一旦缩短距离,两种键都会消失

一旦缩短距离,两种键都会消失

908

帖子

37

威望

5435

eV
积分
7083

Level 6 (一方通行)

2#
发表于 Post on 2022-3-2 11:43:44 | 只看该作者 Only view this author
本帖最后由 ggdh 于 2022-3-2 11:46 编辑

1 弄清楚原子编号
2 topo addbond 1 2  给1 2 原子之间添加键
3 topo delbond 1 2 删除 12 原子之间的键
另外
"如果两个原子间没有被判断为成键,但你希望让它们之间显示键,就选择Mouse - Add/Remove Bonds,然后点击这两个原子的正中心,它们就连上了。如果你点击两个已经成键的原子,它们之间的键就会被去掉。" from谈谈VMD可视化程序的连接关系的判断和设置问题l

4

帖子

0

威望

25

eV
积分
29

Level 2 能力者

3#
 楼主 Author| 发表于 Post on 2022-3-2 13:23:38 | 只看该作者 Only view this author
谢谢老师的建议!我同时也参考了这篇文章。现在纠结于批量添加类似的键,并排除相近氧原子之间成键。
我的PDB文件是自己写代码生成的,里面有用的信息有resname, type的信息。
结构比较大,类似的成键问题很多,手动估计不太行

6万

帖子

99

威望

5万

eV
积分
120102

管理员

公社社长

4#
发表于 Post on 2022-3-2 16:39:38 | 只看该作者 Only view this author
自己写个VMD tcl脚本,循环碳和氧,二者距离小于某个值就用topo addbond加上键就完了,这样不会牵扯到O-O

Tcl迅速入门教程 http://bbs.keinsci.com/thread-157-1-1.html
北京科音自然科学研究中心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

4

帖子

0

威望

25

eV
积分
29

Level 2 能力者

5#
 楼主 Author| 发表于 Post on 2022-3-2 23:38:28 | 只看该作者 Only view this author
sobereva 发表于 2022-3-2 16:39
自己写个VMD tcl脚本,循环碳和氧,二者距离小于某个值就用topo addbond加上键就完了,这样不会牵扯到O-O
...

谢谢老师的建议和帖子!我仔细研究下。

4

帖子

0

威望

25

eV
积分
29

Level 2 能力者

6#
 楼主 Author| 发表于 Post on 2022-3-20 10:34:19 | 只看该作者 Only view this author
回来update一下自己的帖子, 在老师的建议和帮助下, 我已经成功用tcl脚本解决了atom自连问题
方法是通过每次只考虑两种类型的原子是否成键,并设定成键的阈值(上限和下限),效果对比如图,部分代码如下:

topo clearbonds

set carbon [atomselect top "resname GGG"]
set cdx [$carbon get index]
set oxygen_ol [atomselect top "name OL"]
set ol_idx [$oxygen_ol get index]


foreach co $cdx {foreach olt $ol_idx {
set dist [measure bond "$co $olt"]
if {($dist>1.4187) && ($dist <= 1.492)} {topo addbond $co $olt}
}}

puts {CX-OL finished}



现在我遇到了一个新问题:由于我有一个结构特别大,大约包括250,000个atom,用上述方法 vmd会out of memory.
请问VMD有没有分区域画图(判断成键的方法), 或者我的代码还可以修改?  谢谢!

Screen Shot 2022-03-19 at 10.21.36 PM.png (501.16 KB, 下载次数 Times of downloads: 17)

Screen Shot 2022-03-19 at 10.21.36 PM.png

Screen Shot 2022-03-19 at 10.22.31 PM.png (367.67 KB, 下载次数 Times of downloads: 18)

Screen Shot 2022-03-19 at 10.22.31 PM.png

10

帖子

0

威望

253

eV
积分
263

Level 3 能力者

7#
发表于 Post on 2025-3-25 16:18:00 | 只看该作者 Only view this author
mcruijff 发表于 2022-3-20 10:34
**** 作者被禁止或删除 内容自动屏蔽 ****

多帧的应该怎么办呢?每一帧也不会自动更新

本版积分规则 Credits rule

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

GMT+8, 2025-8-14 00:05 , Processed in 0.172970 second(s), 29 queries , Gzip On.

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