计算化学公社

标题: 计算一个胶束中的表面活性剂在溶液中扩散系数时,gmx MSD曲线上出现拐点怎么办 [打印本页]

作者
Author:
含光君    时间: 2025-3-25 09:31
标题: 计算一个胶束中的表面活性剂在溶液中扩散系数时,gmx MSD曲线上出现拐点怎么办
大家好,

我最近在计算一个胶束中的表面活性剂在溶液中扩散系数时,发现MSD曲线上出现拐点且两边斜率不等,可能是因为模拟中胶束由盒子中心运动至盒子边界并穿越了边界。

所用命令为:
  1. gmx msd -f md.xtc -s md.tpr -sel 'resname AE3 SDS BTN'  -o surf.xvg -trestart 2
复制代码

得到的MSD曲线如下图:

(, 下载次数 Times of downloads: 6)

请问这种情况下是不是只能取其前20ps的部分进行扩散系数的拟合?以及是否有方法/命令避免这种情况的发生?

谢谢大家









作者
Author:
sobereva    时间: 2025-3-25 23:11
这和穿越盒子没关系,gmx msd会自动考虑PBC。如果你就是非常怀疑是穿越盒子的问题,也可以trjconv结合-cluster处理轨迹让簇的运动保持完整,然后再算算
可以尝试对轨迹不同区段计算MSD,试图搞清楚是什么原因
作者
Author:
含光君    时间: 2025-3-25 23:14
本帖最后由 含光君 于 2025-3-25 23:17 编辑
sobereva 发表于 2025-3-25 23:11
这和穿越盒子没关系,gmx msd会自动考虑PBC。如果你就是非常怀疑是穿越盒子的问题,也可以trjconv结合-clus ...

gmx msd会自动考虑PBC

原来是这样,我来分段计算试试,非常感谢sob老师!

ps, 谢谢社长帮忙修改帖子标题

作者
Author:
JillW    时间: 2025-3-31 09:20
含光君 发表于 2025-3-25 23:14
原来是这样,我来分段计算试试,非常感谢sob老师!

ps, 谢谢社长帮忙修改帖子标题

请问您结果怎么样呀?我发现我的体系在很长时间尺度下如1000ns时前半段会有很明显的线性段,但是我将msd计算范围缩小到一半时,线性段就消失了
由于后半段统计误差会比较大,是不是时间尺度长的时候取前半段拟合结果更可信呢?
期待您的回答,感谢不吝赐教
ps:体系中的小分子数量比较少,仅有1个
作者
Author:
含光君    时间: 2025-4-1 10:12
JillW 发表于 2025-3-31 09:20
请问您结果怎么样呀?我发现我的体系在很长时间尺度下如1000ns时前半段会有很明显的线性段,但是我将msd ...

谈不上赐教互相学习

我这里确实不是穿越盒子的问题,按照卢老师说的用cluster处理后得到的msd图是一样的。

我觉得你的问题里小分子数量可能对统计的误差比较大,另外,从MSD的计算来看(见http://bbs.keinsci.com/thread-42063-1-1.html帖子下卢老师回复的PPT), 只统计前半段和统计整段在取平均的区段上不是完全等同的,所以可能会有影响。如果你想计算前半段的D, 可以计算整段MSD再对前半段做拟合。

即 gmx msd -beginfit XXX -endfit XXX
作者
Author:
JillW    时间: 2025-4-7 10:06
含光君 发表于 2025-4-1 10:12
谈不上赐教互相学习

我这里确实不是穿越盒子的问题,按照卢老师说的用cluster处理后得到的msd图 ...

嗯嗯,是的,我也几乎把论坛里MSD相关的都看了一遍,感觉计算整段MSD再对前半段做拟合的误差会比较小

当时也看到卢老师在别的帖子底下回复说如果小分子个数比较少的话,就应当尽可能延长统计时间,因此我总时间设置的也比较长,一定程度上减少误差。

感谢回复交流




欢迎光临 计算化学公社 (http://bbs.keinsci.com/) Powered by Discuz! X3.3