计算化学公社

 找回密码 Forget password
 注册 Register

求助:gmx gangle 如何设置输出数据的小数位数

查看数: 10017 | 评论数: 7 | 收藏 Add to favorites 1
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2020-11-11 15:38

正文摘要:

本帖最后由 ChunLinX 于 2020-11-12 23:21 编辑 各位老师好,在用gmx gangle生成二面角分布的数据时,输出的数据默认精确到小数点后第三位,这样绘图的时候曲线不光滑(如下图)。在论坛中看到可以编写vmd程序来 ...

回复 Reply

sobereva 发表于 Post on 2020-11-13 08:59:26
ChunLinX 发表于 2020-11-12 20:27
谢谢您的回答。我的帧数为100帧,加大后结果没有什么变化。我试了修改xtc文件的数值精度,但最后输出的结 ...

100帧往往并不够得到平滑的结果

gmx gangle输出多少位和你用什么格式轨迹、轨迹记录精度没关系。
单纯想改输出位数,你就去把gmx gangle的输出信息里面的关键字句在gmx的源代码包里面用grep搜,很容易就能找到输出的语句,稍微一改就完了。
ChunLinX 发表于 Post on 2020-11-12 23:22:18
liuyuje714 发表于 2020-11-12 20:49
你最好能给个图,帧数最好过千。区区小几百帧属实太少,如果你分的角度bin太小,根本不够

谢谢,我将图贴在上面了,bin为1°,900帧。
liuyuje714 发表于 Post on 2020-11-12 20:49:48
本帖最后由 liuyuje714 于 2020-11-12 20:52 编辑
ChunLinX 发表于 2020-11-12 20:27
谢谢您的回答。我的帧数为100帧,加大后结果没有什么变化。我试了修改xtc文件的数值精度,但最后输出的结 ...

你最好能给个图,帧数最好过千。区区小几百帧属实太少,如果你分的角度bin太小,根本不够
ChunLinX 发表于 Post on 2020-11-12 20:30:47
sobereva 发表于 2020-11-11 21:02
改源代码,重新编译

谢谢老师,这样做确实有效,但是对我这种新手来说太难了,等我学会编程再尝试
ChunLinX 发表于 Post on 2020-11-12 20:27:08
liuyuje714 发表于 2020-11-11 21:32
不光滑不应该是小数点精度问题,可能是你本身轨迹帧数太少。其次,如果你用的是xtc轨迹,那么默认保存数据 ...

谢谢您的回答。我的帧数为100帧,加大后结果没有什么变化。我试了修改xtc文件的数值精度,但最后输出的结果始终是三位小数,用trr文件也是三位小数。由于我得到的二面角分布比较“胖”,概率的最大值只有0.016,而精度为0.001,因此我觉得画图看起来不平整主要还是输出的位数太少引起的。
liuyuje714 发表于 Post on 2020-11-11 21:32:52
本帖最后由 liuyuje714 于 2020-11-11 21:35 编辑

不光滑不应该是小数点精度问题,可能是你本身轨迹帧数太少。其次,如果你用的是xtc轨迹,那么默认保存数据精度就只有0.001 nm,因此你直接更改源码输出并不正确,除非你直接在mdp中同时定义xtc的输出精度到更高。当然如果你用的trr,那就不需要。
所以我还是觉得并不是精度问题。
sobereva 发表于 Post on 2020-11-11 21:02:05
改源代码,重新编译

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

GMT+8, 2026-2-22 14:59 , Processed in 0.260747 second(s), 25 queries , Gzip On.

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