|
|
脚本如下,想要计算两个组分氢键数目随着时间的变化,之前测试了表面活性剂和水分子之间氢键数目发现计算出来结果全是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"
}
|
|