计算化学公社

 找回密码 Forget password
 注册 Register

求助VMD如何动态绘制分子的偶极矩?

查看数: 3027 | 评论数: 2 | 收藏 Add to favorites 6
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2022-8-26 10:43

正文摘要:

通过gromacs跑出来的:*.top文件包含了蛋白质的原子电荷 *.gro文件包含了原子坐标 *.trr文件记录了蛋白质的运动轨迹 Q:请问如何通过这些文件动态显示每一帧的偶极矩? 我的初步想法: 脚本计算偶极矩的坐 ...

回复 Reply

lishine 发表于 Post on 2022-8-27 15:08:06
按照您的思路,成功了,谢谢sob老师。下面是我在您的基础上修改的TCL文件,适用于实时显示偶极矩方向:

proc showdip {args} {
global vmd_frame
graphics 0 delete all
set sel [atomselect top all frame $vmd_frame(0)]
set dir [measure dipole $sel -debye]
set com [measure center $sel weight mass]
scan $dir "%f %f %f" x1 y1 z1
scan $com "%f %f %f" x0 y0 z0
set end "[expr $x0+$x1] [expr $y0+$y1] [expr $z0+$z1]"
set init "[expr $x0] [expr $y0] [expr $z0]"
puts "com = $init"
puts "end = $end"
puts "dip = $dir"
graphics 0 color red
graphics 0 cylinder $init $end radius 0.3 filled yes resolution 20
$sel delete
}

# trace variable vmd_frame(0) w showdip
# trace vdelete vmd_frame(0) w showdi




sobereva 发表于 Post on 2022-8-26 13:49:36
先把原子电荷读入VMD作为原子的charge属性
然后建立一个回调函数,帧数每切换一次就自动调用一次回调函数,计算偶极矩、删除原有物体并绘制出新的箭头

部分内容可参考
使VMD实时显示gromacs轨迹中原子的受力
http://sobereva.com/36

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

GMT+8, 2026-2-24 03:30 , Processed in 0.173177 second(s), 25 queries , Gzip On.

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