24小时热门版块排行榜    

北京石油化工学院2026年研究生招生接收调剂公告
查看: 1984  |  回复: 3
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

childsliu

捐助贵宾 (正式写手)

二当家的

[交流] 【转载】计算不同z位置水能形成氢键数的VMD Tcl脚本 已有2人参与

From http://hi.baidu.com/sobereva/blo ... 595ef7fc037fbf.html
by Sobereva

有人请我写一个计算垂直于溶液界面的即不同z值处的水能形成氢键数的脚本,下面是我的VMD Tcl脚本,或许有人也用得着。
氢键判据用的是常用的35度3.5埃的几何判据,当然也可以直接在脚本里改。计算方法是,只要有水分子有一个原子在某一层里,
则这个水分子就认为属于这一层的水。对于每一帧,计算属于每一层的水selin与其它物质selbig之间的氢键数,氢键包括了这一层
中的水作为氢键受体和供体两种情况,其数目分别为代码中的变量a和b。并且加上这一层水内部之间的氢键数(变量c)的2倍。
a+b+2c除以这一层的水数,作为这一帧这一层的每个水的平均氢键数。脚本中循环轨迹中的每一帧,最终得到这一层平均氢键数。
nonum变量记录有多少帧在所设定的范围里没有水,这些帧不计算。#后面那行用于调试目的,要考察每帧结果就去掉开头的#。
首先运行下面的脚本,来加载实现这个功能的子程序
CODE:
proc numhbavg {sel fps1 fps2} {
set selin [atomselect top $sel]
set selbig [atomselect top "same resid as exwithin 3.5 of $sel"]
set k 0.0
set nonum 0
for {set i $fps1} {$i<=$fps2} {incr i} {
$selin frame $i
$selin update
$selbig frame $i
$selbig update
if {[$selin num]!=0} {
set a [llength [lindex [measure hbonds 3.5 35 $selbig $selin] 0]]
set b [llength [lindex [measure hbonds 3.5 35 $selin $selbig] 0]]
set c [llength [lindex [measure hbonds 3.5 35 $selin] 0]]
set k [expr $k+($a+$b+2*$c)*3.0/[$selin num]]
#puts "fps:$i $a+$b+[expr 2*$c] num_water:[expr [$selin num]/3.0] avg:[expr $k+($a+$b+2*$c)*3.0/[$selin num]]"
} else {incr nonum}
}
if {[expr $fps2-$fps1+1]==$nonum} {return "no result"}
return [expr $k/[expr $fps2-$fps1+1-$nonum]]
}

然后下面的循环会调用这个子程序来输出每一层的平均氢键数,这里假设要计算z=4.0~5.6埃的数据,间隔为0.1埃,
且限定20 不要恰顶着体系的边界,最好至少留出5埃的距离。选择范围中resname SOL代表了水。
CODE:
for {set i 40} {$i<=55} {incr i} {
set k [expr $i*0.1]
set now [numhbavg "same resid as resname SOL and x<40 and x>20 and y<40 and y>20 and z<[expr $k+0.1] and z>=$k" 100 150]
puts [format "%4.2f %4.2f %5.3f" $k [expr $k+0.1] $now]
}

我这里随便算一个主要由水构成的普通的体系,水形成的氢键数大概在3.1左右,标准放宽到4.0埃,40度,则可形成氢键
数约为3.6。在冰中由于结构十分有序,可形成4个氢键,在液态情况下分子的动能必然造成氢键的破坏,所以结果是很合理的。
帧数范围越大、xy平面越大计算越慢,这个脚本计算速度比较慢,不要一下将范围设得太大。
输出结果如下,前两列代表统计的z值范围,第三列是水的平均氢键数
4.00 4.10 3.015
4.10 4.20 3.161
4.20 4.30 3.201
4.30 4.40 3.159
4.40 4.50 3.237
4.50 4.60 3.130
4.60 4.70 3.201
4.70 4.80 3.338
4.80 4.90 3.201
4.90 5.00 3.041
5.00 5.10 3.122
5.10 5.20 3.182
5.20 5.30 3.160
5.30 5.40 3.309
5.40 5.50 3.189
5.50 5.60 3.327

[ Last edited by lei0736 on 2009-11-25 at 11:23 ]
回复此楼

» 猜你喜欢

» 本主题相关商家推荐: (我也要在这里推广)

» 本主题相关价值贴推荐,对您同样有帮助:

下苦功,三个字,一个叫下,一个叫苦,一个叫功,一定要振作精神,下苦功。
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

长草团子

新虫 (初入文坛)


小木虫: 金币+0.5, 给个红包,谢谢回帖
请问楼主,我试着运行了一下这个tcl脚本,也将其改成了我的参数,但是在运行的时候却出现了问题,在调用numhbavg的时候,显示错误:无效的命令名“”,请问这是为什么啊?
4楼2018-03-30 14:37:17
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 4 个回答

Wendee

至尊木虫 (著名写手)


小木虫(金币+0.5):给个红包,谢谢回帖交流
不错不错,感谢你的分享!
2楼2011-03-17 22:39:29
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

长草团子

新虫 (初入文坛)


小木虫: 金币+0.5, 给个红包,谢谢回帖
请问楼主,我试着运行了一下这个tcl脚本,也将其改成了我的参数,但是在运行的时候却出现了问题,在调用numhbavg的时候,显示错误:无效的命令名“”,请问这是为什么啊?
3楼2018-03-30 09:11:44
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 085601材料工程找调剂 +17 oatmealR 2026-03-29 18/900 2026-03-30 19:21 by Wang200018
[考研] 085600,专业课化工原理,320分求调剂 +5 大馋小子 2026-03-29 5/250 2026-03-30 19:02 by 源_2020
[考研] 一志愿郑大材料工程290求调剂 +9 Youth_ 2026-03-30 9/450 2026-03-30 18:45 by 544594351
[考研] 调剂 +3 GK72 2026-03-30 3/150 2026-03-30 18:31 by 啊李999
[考研] 085701求调剂初试286分 +5 secret0328 2026-03-28 5/250 2026-03-30 12:54 by fangnagu
[考研] 0703化学 +14 妮妮ninicgb 2026-03-27 14/700 2026-03-30 12:46 by fangnagu
[考研] 0703本科郑州大学求调剂 +7 nhj_ 2026-03-25 7/350 2026-03-30 12:44 by fangnagu
[考研] 282求调剂 +4 wcq131415 2026-03-24 4/200 2026-03-30 10:39 by Delta2012
[考研] 281求调剂 +4 亚克西good 2026-03-26 6/300 2026-03-29 21:06 by 啊李999
[考研] 总分293求调剂 +8 加一一九 2026-03-25 11/550 2026-03-29 19:53 by 无际的草原
[考研] 08工科求调剂286 +3 tgs_001 2026-03-28 3/150 2026-03-29 18:29 by 1018329917
[考研] 2026年华南师范大学欢迎化学,化工,生物,生医工等专业优秀学子加入! +3 llss0711 2026-03-28 6/300 2026-03-29 10:26 by llss0711
[考研] 调剂求院校招收 +6 鹤鲸鸽 2026-03-28 6/300 2026-03-29 08:15 by fmesaito
[考研] 283求调剂 +3 A child 2026-03-28 3/150 2026-03-28 15:41 by ms629
[考研] 304求调剂 +6 曼殊2266 2026-03-27 6/300 2026-03-28 14:10 by 唐沐儿
[考研] 299求调剂 +7 嗯嗯嗯嗯2 2026-03-27 7/350 2026-03-28 13:09 by 唐沐儿
[考研] 085701环境工程,267求调剂 +16 minht 2026-03-26 16/800 2026-03-28 12:16 by zllcz
[考研] 考研调剂 +9 小蜡新笔 2026-03-26 9/450 2026-03-27 11:10 by 不吃魚的貓
[考研] 求调剂 一志愿 本科 北科大 化学 343 +6 13831862839 2026-03-24 7/350 2026-03-26 22:57 by 不吃魚的貓
[考研] 一志愿哈工大,085400,320,求调剂 +4 gdlf9999 2026-03-24 4/200 2026-03-25 23:01 by boxking200
信息提示
请填处理意见