计算化学公社
标题:
求受限于碳纳米管的水的扩散系数时,msd曲线往往很异常,想先从算法基础开始求教
[打印本页]
作者Author:
cavalier
时间:
2019-8-22 14:08
标题:
求受限于碳纳米管的水的扩散系数时,msd曲线往往很异常,想先从算法基础开始求教
不好意思我这个人说话比较啰嗦,表达意思重点可能不够突出,希望各位谅解,并予以稍微多一丢丢的耐心。 我是用gromacs做模拟的,最近在做受限在碳纳米管里的水/冰 遇到这个类问题已经很久了,在论坛里也已经看过好多求扩散系数、msd的帖子了,仍然有不少问题不明白。
我画出来的图线通常都很异常,比如图线有时大起大落,有时曲线的噪音改过斜率的趋势(因为本来我模拟温度就低,240k,所以斜率本来就应该很小),而且常常同一个模拟数据(总共模拟不超过800ps),我取不同时间段求出来的msd,斜率可能数量级都不一样。图我放在后面稍后请教,首先我想关于求扩散系数的基础的原理、算法什么的我还要确认一下,求教一下。
首先,我有一个地方很不明白,在求扩散系数时,我已经试过两种方法:1,自己编脚本,因为要系宗平均(粒子平均我也做了),所以,关联时间肯定要比模拟时间短很多吧(这才是我的问题),比如,模拟400ps,1fs一步,一共就有40万个时间点了,我一般会选择200ps作为关联长度,从第0步开始求第一个系宗(即0-200ps求第一个系宗),为减少计算量,每隔100步开始一个新的系宗,也就是0.1ps-200.1ps是第二个系宗,而最后一个系宗是200-400ps,这样一来我就可以有2001个系宗来平均了。2,我也用过gmx msd的命令,通过编写index文件,我选择求管中心部分的水分子,并确定模拟期间这些水分子均不会跑出管去,可是我400ps的模拟它就能导出400ps长的曲线,那么它是怎么做到系宗平均的呢?所以我对gmx msd的算法思想不太明白。
脑子有点乱,暂时有点想不起来其他基本问题我不能理解了。先放我的曲线图:
fig1-fig3是我用gmx msd对同一实验不同模拟时间画的图,实验对象都是240k下受限在碳纳米管里的水,可见斜率最小的800ps和斜率最大的200ps,将近相差了1个数量级了。这可怎么办呢,曲线形状在我画出的图形里已经算是最正常的了,都能看出线性区域,但是斜率数值相差这么大,我不敢直接拿这三组斜率直接平均作为最终的值。请问我要怎么确定出比较可靠的斜率值呢。
fig4我就完全不明白为什么会这样了,这组我在z轴加了0.5V/nm的电场,而fig5我也是加了2V/nm的电场
fig6又该怎么处理呢?
fig7开始是我自己写的程序算出来的数据:
fig7,用我自己写的程序从而画出来图线都是大同小异,都是曲线大幅上升然后波动着大致呈现水平(有时候呈现缓慢变大,有时直接斜率为负),而fig7不知为何波动幅度这么大(200ps模拟,画出100ps的数据,共取系宗1001个来平均)
fig8我也没办法处理,而fig9明显msd后面还越来越小了
补充一下,我在加了轴向电场的实验中用gmx msd也画出过msd越来越小的情况fig10
我的问题不知道有没有表述清楚,烦请各位了,万分感谢!!!
作者Author:
cavalier
时间:
2019-8-22 14:11
接着fig10补充一个fig11,也是gmx msd 画的图,这个msd更是整体在减少,不明白这是怎么回事?
其实如果粒子在扩散过程中突然变得逆着原先扩散方向运动,倒是可以解释,但是这种情况有合理的解释吗,现实种真的存在吗?
欢迎光临 计算化学公社 (http://bbs.keinsci.com/)
Powered by Discuz! X3.3