计算化学公社

标题: VMD的atomselect命令请教 [打印本页]

作者
Author:
芝士栗子小甜饼    时间: 2021-3-10 17:07
标题: VMD的atomselect命令请教
请教一下各位老师,我想写一个tcl脚本,脚本的内容是,根据氧原子之间的距离,把体系分为多个团簇,在使用VMD的atomselect时遇到了问题,我想在VMD中选中sel组为我体系中的O5,OG311和O3原子;selin组为距离sel组原子距离小于3.5nm的O原子(即O5,OG311和O3,但不包含sel组自身),请问在tcl脚本中应当怎样写呢?
试了蛮多次都不太对

作者
Author:
ChunLinX    时间: 2021-3-10 22:20
本帖最后由 ChunLinX 于 2021-3-10 23:19 编辑

http://bbs.keinsci.com/thread-14267-1-1.html 可以看看sob老师的帖子,里面讲的很详细。
第一句应该为atomselect top "name O5 OG311 O3” ;第二句为atomselect top “same name as { exwithin 35 of $sel }”但是好像same name as { exwithin 35 of $sel }无法只选择O5 OG311 O3。
可以在拓扑文件中将O5 OG311 O3定义为一个残基,然后用same residue as ...


作者
Author:
sobereva    时间: 2021-3-11 02:02
1 没必要写or,直接name O5 OG311 O3就能选
2 name O5 OG311 O3 and exwithin 3.5 of "sel组对应的选择语句"

作者
Author:
芝士栗子小甜饼    时间: 2021-3-11 08:56
ChunLinX 发表于 2021-3-10 22:20
http://bbs.keinsci.com/thread-14267-1-1.html 可以看看sob老师的帖子,里面讲的很详细。
第一句应该为at ...

谢谢回复,我认真看看
作者
Author:
芝士栗子小甜饼    时间: 2021-3-11 15:27
sobereva 发表于 2021-3-11 02:02
1 没必要写or,直接name O5 OG311 O3就能选
2 name O5 OG311 O3 and exwithin 3.5 of "sel组对应的选择语 ...

谢谢sbo老师回复!
我还想请教一个问题,我想实现如果我的氧原子之间的距离小于3.5nm时,便判断他们成键,在TK控制台有没有命令能实现这样的操作呢?
作者
Author:
芝士栗子小甜饼    时间: 2021-3-11 21:40
sobereva 发表于 2021-3-11 02:02
1 没必要写or,直接name O5 OG311 O3就能选
2 name O5 OG311 O3 and exwithin 3.5 of "sel组对应的选择语 ...

老师我自己尝试写了一个,假如氧氧原子小于3.5埃就成键的tcl脚本,但是他一直提醒我“atomselect: cannot parse selection text: index” 我自己单独在console输入命令好像又没什么问题,想请教一下老师我哪里写错了
作者
Author:
sobereva    时间: 2021-3-12 02:03
芝士栗子小甜饼 发表于 2021-3-11 15:27
谢谢sbo老师回复!
我还想请教一个问题,我想实现如果我的氧原子之间的距离小于3.5nm时,便判断他们成键 ...

没有直接的命令
要么自己写个脚本,循环特定原子间距离,发现满足判据的时候就改写连接关系,要么在显示时恰当用dynamic bond显示方式
作者
Author:
sobereva    时间: 2021-3-12 02:07
芝士栗子小甜饼 发表于 2021-3-11 21:40
老师我自己尝试写了一个,假如氧氧原子小于3.5埃就成键的tcl脚本,但是他一直提醒我“atomselect: cannot ...

乍看起来没什么问题,我不知道你怎么运行的脚本。
里面恰当插入一些puts语句检查相关变量

作者
Author:
芝士栗子小甜饼    时间: 2021-3-15 08:27
sobereva 发表于 2021-3-12 02:07
乍看起来没什么问题,我不知道你怎么运行的脚本。
里面恰当插入一些puts语句检查相关变量

我是直接在Tkconsole里面 source的
作者
Author:
芝士栗子小甜饼    时间: 2021-3-15 08:42
sobereva 发表于 2021-3-12 02:07
乍看起来没什么问题,我不知道你怎么运行的脚本。
里面恰当插入一些puts语句检查相关变量

我发现他的错误发生在我的这一行,会出现提示“cannot parse selection text:index"的错误
作者
Author:
Lacrimosa    时间: 2021-3-15 18:40
芝士栗子小甜饼 发表于 2021-3-15 08:42
我发现他的错误发生在我的这一行,会出现提示“cannot parse selection text:index"的错误

你在红圈的前一行写上puts $b看看输出的什么




欢迎光临 计算化学公社 (http://bbs.keinsci.com/) Powered by Discuz! X3.3