24小时热门版块排行榜    

CyRhmU.jpeg
查看: 1123  |  回复: 17
当前主题已经存档。

sheath

至尊木虫 (知名作家)

[交流] 【讨论】自编程序中正则系综的体系温度为什么不能保持恒定?

在自编的分子动力学程序中,计算原胞的原子体系为正则系综。原子位置在三维方向应用周期性边界条件,恒温采用Nose-Hoover算法。
      但是,程序执行后,出现了体系数目减少,体系温度不断升高,甚至到达上万度的错误结果。

      经过仔细检查程序结构和每个子程序,初步分析认为:在每个时间步,周期性边界条件使跑出计算原胞范围的原子重新回到原胞内的相应位置。而这可能使部分原子重叠,尽管这种情况的几率很小。随后进行“更新原子存在与对应数据”操作,这将可能造成部分重叠原子数据的丢失,当然,原子数目也可能减小。
      也就是说,周期性边界条件造成原子重叠,而原子重叠是导致原子数目减少的关键原因。如果这个分析对的话,如何解决?若不是,那么原因又在哪里?

敬请各位同行不吝赐教!!!

[ Last edited by cadick on 2009-12-14 at 02:30 ]
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zeoliters

木虫 (正式写手)

★ ★ ★
小木虫(金币+0.5):给个红包,谢谢回帖交流
fegg7502(金币+2,VIP+0):thank you very much! 11-8 18:36
既然使用了周期性边界条件,如果体系为正则系综,体系的数目应该不会变化的,如果体系数目减少,我怀疑是不是程序出现了错误。
2楼2009-11-08 18:17:44
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

sheath

至尊木虫 (知名作家)


zeoliters(金币+1,VIP+0):谢谢回帖交流! 11-10 22:07
引用回帖:
Originally posted by zeoliters at 2009-11-8 18:17:
既然使用了周期性边界条件,如果体系为正则系综,体系的数目应该不会变化的,如果体系数目减少,我怀疑是不是程序出现了错误。

体系的原子数目是应该保证不变,这是正则系综的要求,但是编程实现却是另一回事。
     上面我已经分析了数目减少的可能原因。

      程序应该没有错误,但可能是还需要别的子程序处理这个问题。

[ Last edited by sheath on 2009-11-8 at 18:46 ]
3楼2009-11-08 18:42:41
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

sheath

至尊木虫 (知名作家)

还有同行了解这个问题么?
4楼2009-11-09 10:14:31
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

dellus

木虫 (职业作家)

★ ★ ★ ★
小木虫(金币+0.5):给个红包,谢谢回帖交流
mingdong(金币+1,VIP+0):感谢交流! 11-9 14:11
zeoliters(金币+2,VIP+0):谢谢回帖交流! 11-10 22:07
周期性边界条件用的不对,
不要把原胞范围外的原子放回原胞,只需要在计算相互作用时把座标折算到原胞内就可以了
岂能尽如人意,但求无愧于心。
5楼2009-11-09 11:20:51
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

lionel770

金虫 (小有名气)

★ ★ ★ ★
小木虫(金币+0.5):给个红包,谢谢回帖交流
dongdong3881(金币+1,VIP+0):多谢回帖交流 11-10 14:09
zeoliters(金币+2,VIP+0):谢谢回帖交流! 11-10 22:08
具体情况没有看你的运行情况不好说,如果是你说分析的问题,可以考虑减小每步的时间步长试试。具体的解决方案还是在程序的BUG判断及处理上下功夫。
6楼2009-11-09 15:56:58
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

sheath

至尊木虫 (知名作家)

★ ★ ★ ★
dongdong3881(金币+2,VIP+0):多谢交流 11-10 14:09
zeoliters(金币+2,VIP+0):谢谢回帖交流! 11-10 22:08
引用回帖:
Originally posted by dellus at 2009-11-9 11:20:
周期性边界条件用的不对,
不要把原胞范围外的原子放回原胞,只需要在计算相互作用时把座标折算到原胞内就可以了

这个我以前的确没有考虑过,
不过,试过后还是出现原来的问题。

我的程序在计算原子位置和相互作用力都使用了周期性边界条件。
依据是被有些同行称为“分子动力学圣经”中的一段话:

"The wraparound effect of the periodic boundaries must be taken into account in both the integration of the equations of motion and the interaction computations. After each integration step the coordinates must be examined, and if an atom is found to have moved outside the region its coordinates must be adjusted to bring it back inside."

来源:D.C. Rapaport, The Art of Molecular Dynamics Simulation (2ed), Cambridge University Press,2004, P16-17

[ Last edited by sheath on 2009-11-9 at 17:28 ]
7楼2009-11-09 17:20:47
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

sheath

至尊木虫 (知名作家)


zeoliters(金币+1,VIP+0):谢谢回帖交流! 11-10 22:08
引用回帖:
Originally posted by lionel770 at 2009-11-9 15:56:
具体情况没有看你的运行情况不好说,如果是你说分析的问题,可以考虑减小每步的时间步长试试。具体的解决方案还是在程序的BUG判断及处理上下功夫。

我原来使用的时间步长是1fs。

试用仁兄所建议的小步长,应用0.1fs,还是出现相同的问题,即原子数目减少,温度不断升高。不过是经过很多循环才出现,好像是比原来延长了时间而已。
8楼2009-11-09 17:39:44
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

dellus

木虫 (职业作家)

★ ★ ★ ★ ★ ★
小木虫(金币+0.5):给个红包,谢谢回帖交流
dongdong3881(金币+2,VIP+0):多谢回帖交流 11-10 14:09
zeoliters(金币+3,VIP+0):多谢回帖交流! 11-10 22:09
引用回帖:
Originally posted by sheath at 2009-11-9 17:20:

我的程序在计算原子位置和相互作用力都使用了周期性边界条件。

计算能量和相互作用力都要用周期性边界条件
我是说在使用周期性边界条件时,只调用而不改变粒子的原坐标
引用回帖:
Originally posted by sheath at 2009-11-9 17:20:

"The wraparound effect of the periodic boundaries must be taken into account in both the integration of the equations of motion and the interaction computations. After each integration step the coordinates must be examined, and if an atom is found to have moved outside the region its coordinates must be adjusted to bring it back inside."


第一句没有问题,第二句值得商榷
1、在周期性边界条件下,同在原胞下的两个粒子是不能通过直接计算它们之间距离来计算能量和受力作用的。把原胞外的粒子放回原胞的操作虚耗了计算量,还可能出错
2、对于高分子体系,这样的操作会破坏共价键

Allen 的 "Computer simulation of liquid" 29-31页讲了关于周期性边界条件的问题,建议看下

[ Last edited by dellus on 2009-11-10 at 13:20 ]
岂能尽如人意,但求无愧于心。
9楼2009-11-10 13:13:13
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zeoliters

木虫 (正式写手)

★ ★
小木虫(金币+0.5):给个红包,谢谢回帖交流
tianlangxingaa(金币+1,VIP+0):谢谢参与 1-12 23:02
非常赞同dellus的说法。
10楼2009-11-11 05:11:09
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 sheath 的主题更新
普通表情 高级回复(可上传附件)
信息提示
请填处理意见