计算化学公社

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

[VMD] 使用tcl脚本计算氢键数结果有误

[复制链接 Copy URL]

106

帖子

0

威望

719

eV
积分
825

Level 4 (黑子)

脚本如下,想要计算两个组分氢键数目随着时间的变化,之前测试了表面活性剂和水分子之间氢键数目发现计算出来结果全是3,为了验证脚本是否存在问题就修改了两个组分都为水分子,结果计算还是氢键数目全部是3,请教各位哪里存在问题?


pbc wrap -center com -centersel "resname WATE" -all


proc hb {fps1 fps2 dt interval} {
set cum 0
set outputFile "hb-WATE-vmd.txt"
set outFile [open $outputFile "w"]
set targetTime 0

for {set i $fps1} {$i <= $fps2} {incr i 1} {
set currentTime [expr $i * $dt]

set dd [atomselect top "resname WATE" frame $i]
set aa [atomselect top "resname WATE" frame $i]


set temp [measure hbonds 3.5 35 $dd $aa]



set hbondsCount [llength $temp]

if {($currentTime - $targetTime) >= $interval} {
set targetTime [expr $targetTime + $interval]


   puts $outFile "$currentTime $hbondsCount"

}
}


close $outFile
puts "Output written to $outputFile"


}




1240

帖子

6

威望

2553

eV
积分
3913

Level 5 (御坂)

傻傻的木瓜

2#
发表于 Post on 2024-12-7 14:17:10 | 只看该作者 Only view this author
measure hbonds返回的是由给体原子index、受体原子index、氢原子index共3个元素数量相同的子列表构成的列表,而llength直接返回的是列表中元素数量而不关心元素是不是还有列表,所以直接把measure hbonds返回结果存到变量$temp里再用llength $temp可不就取成3了。统计氢键数量应该用其中一个子列表来数,比如用第一个子列表的命令写作[llength [lindex $temp 0]]。

有个小小的请求,如果像上帖这样提问得到回答,可否提供个反馈呢?回个帖或者评个分都行,无论回答是很有帮助还是完全不对,提问者的回应可以给回答者一个确认,也可以帮助有相同问题的后来者解惑……
√546=23.36664289109

1171

帖子

7

威望

6860

eV
积分
8171

Level 6 (一方通行)

3#
发表于 Post on 2024-12-7 20:39:51 | 只看该作者 Only view this author
VMD的extension里面有统计氢键的插件

106

帖子

0

威望

719

eV
积分
825

Level 4 (黑子)

4#
 楼主 Author| 发表于 Post on 2024-12-8 09:49:16 | 只看该作者 Only view this author
Uus/pMeC6H4-/キ 发表于 2024-12-7 14:17
measure hbonds返回的是由给体原子index、受体原子index、氢原子index共3个元素数量相同的子列表构成的列表 ...

谢谢回复!问题已解决。回复是最基本的,很抱歉上一条我疏忽忘记了没有反馈。非常感谢您的帮助。

106

帖子

0

威望

719

eV
积分
825

Level 4 (黑子)

5#
 楼主 Author| 发表于 Post on 2024-12-8 09:49:31 | 只看该作者 Only view this author
fhh2626 发表于 2024-12-7 20:39
VMD的extension里面有统计氢键的插件

好的好的谢谢

本版积分规则 Credits rule

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

GMT+8, 2026-2-22 02:53 , Processed in 0.204385 second(s), 23 queries , Gzip On.

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