24小时热门版块排行榜    

查看: 2824  |  回复: 18

gasam

金虫 (小有名气)

[交流] 分子动力学能量守恒的相关问题 已有5人参与

小弟最近在编分子动力学的程序,在测试NVE能量守恒的时候出现偏移,想咨询下各位专家,这个偏移造成的原因?
自己考虑会不会是因为potential用了cutoff后,能量有误差?希望大家能指点下小弟。。。。。  用了cutoff后能量是会有点下降?还是上升?还是不变?
如果不变的话,那个偏移会是什么造成的?我确认了力的式子之类的,都没发现错误。。。。
回复此楼

» 猜你喜欢

» 本主题相关商家推荐: (我也要在这里推广)

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
回帖支持 ( 显示支持度最高的前 50 名 )

virtualzx

木虫 (著名写手)

★ ★ ★ ★
小木虫: 金币+0.5, 给个红包,谢谢回帖
月只蓝: 金币+3, 感谢指导! 2013-11-22 15:37:54
引用回帖:
6楼: Originally posted by gasam at 2013-11-21 21:24:39
100000step
温度大概2200K,每个原子大概偏0.18Kcal/mol
...

偏差略大,按理说数值误差没有这么大。如果你用的是可变步长,可以尝试增加积分精度。你总的时间是多长?如果增加积分精度后还在这个数量级的话,应该就是截断造成的。我用大概25000项求和展开的势能计算2731858步之后的误差大概是你的十分之一左右。不过因为还要积分在个别点附近趋于无穷大的耦合项,我的步长很小,这么多步也只走了50ns,所以需要和你的时间尺度对比下。你可以尝试先不做截断进行计算,排除有bug的可能。

你是不是哪里不小心用单精度数了?
13楼2013-11-22 15:19:36
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通回帖

virtualzx

木虫 (著名写手)

★ ★ ★
小木虫: 金币+0.5, 给个红包,谢谢回帖
月只蓝: 金币+2, 感谢指导! 2013-11-22 15:33:59
cutoff肯定会有误差。在相同量纲下力应该等于能量导数的相反数,你用比较高阶的方法求一下数值导数,看是不是和你的力吻合得足够好。这个偏差就会导致能量不守恒
2楼2013-11-22 02:15:52
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

gasam

金虫 (小有名气)

引用回帖:
2楼: Originally posted by virtualzx at 2013-11-22 03:15:52
cutoff肯定会有误差。在相同量纲下力应该等于能量导数的相反数,你用比较高阶的方法求一下数值导数,看是不是和你的力吻合得足够好。这个偏差就会导致能量不守恒

谢谢啊,但是cutoff引起的误差有没有什么规律啊,比如说比真实的能量大或者是小?

[ 发自小木虫客户端 ]
3楼2013-11-22 07:53:06
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

sciencejoy

新虫 (著名写手)

★ ★
小木虫: 金币+0.5, 给个红包,谢谢回帖
月只蓝: 金币+1, 鼓励交流! 2013-11-22 15:34:05
干嘛自己编分子动力学程序?那么多现成的
4楼2013-11-22 09:05:35
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

yaozhq

金虫 (小有名气)

★ ★
小木虫: 金币+0.5, 给个红包,谢谢回帖
月只蓝: 金币+1, 鼓励交流! 2013-11-22 15:34:13
计算本来就有误差 不考虑算法 两个浮点数的运算直接就会丢失很多有效数字 这个要看最后偏差有多大了
5楼2013-11-22 09:34:33
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

gasam

金虫 (小有名气)

引用回帖:
5楼: Originally posted by yaozhq at 2013-11-22 10:34:33
计算本来就有误差 不考虑算法 两个浮点数的运算直接就会丢失很多有效数字 这个要看最后偏差有多大了

100000step
温度大概2200K,每个原子大概偏0.18Kcal/mol

[ 发自小木虫客户端 ]
6楼2013-11-22 10:24:39
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

gasam

金虫 (小有名气)

引用回帖:
4楼: Originally posted by sciencejoy at 2013-11-22 10:05:35
干嘛自己编分子动力学程序?那么多现成的

主要是自己算的东西需要改代码,现成的有版权之类的问题

[ 发自小木虫客户端 ]
7楼2013-11-22 10:25:50
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖


[ 发自小木虫客户端 ]
8楼2013-11-22 10:41:57
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

sciencejoy

新虫 (著名写手)

★ ★ ★
小木虫: 金币+0.5, 给个红包,谢谢回帖
月只蓝: 金币+1, 鼓励交流! 2013-11-22 15:38:46
月只蓝: 金币+1, 鼓励交流! 2013-11-23 09:51:15
引用回帖:
7楼: Originally posted by gasam at 2013-11-22 10:25:50
主要是自己算的东西需要改代码,现成的有版权之类的问题
...

开源的程序可以自由修改,没有版权问题。难道你不知道lammps, dl_poly, gromacs, ……?
9楼2013-11-22 12:49:31
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

gasam

金虫 (小有名气)

引用回帖:
9楼: Originally posted by sciencejoy at 2013-11-22 13:49:31
开源的程序可以自由修改,没有版权问题。难道你不知道lammps, dl_poly, gromacs, ……?...

知道,不过修改起来比较麻烦

[ 发自小木虫客户端 ]
10楼2013-11-22 12:57:55
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 gasam 的主题更新
普通表情 高级回复 (可上传附件)
信息提示
请填处理意见