用分子动力学模拟得到了径向分布函数,但不知道在程序里怎样实现配位数的计算。计算公式知道,就是不知道怎么操作,还请各位高手指点指点! [ Last edited by lei0736 on 2009-11-24 at 19:58 ] 返回小木虫查看更多
你算不出配位数,那是怎么算出RDF的呢?用MD算RDF,第一步是找出不同距离内的配位数,第二步是归一化得到RDF。 如果你只有一个RDF曲线,然后再通过积分来反算配位数,可能会有一些计算误差的。
确实 在算RDF的时候已经算过一遍配位数了
或者,如果你有构型,并且用现成的程序输出了RDF,你不想修改人家的程序来输出配位数,那么建议你用搜索构型的方法求配位数,而不必根据RDF去积分求配位数(你不清楚人家具体的归一化方法,积分容易出错)。求配位数的方法是: 1。根据RDF或其它知识,选择一个配位距离(比如RDF第一谷的位置,设为r0) 2. 将任一原子设为中心原子,搜索与其距离在r0以内的原子个数(注意周期性边界条件,对多组分体系可以分类) 3. 将第2步遍及所有中心原子 4. 将第2和第3步遍及所有不同时刻的构型。 5. 求平均。(包括中心原子平均和构型(即时间)平均)。 这就是配位数的算法,简单得很。若要求配位数随配位距离的变化,再选不同的距离,多一层循环就是了。 [ Last edited by 老虎大王 on 2009-4-27 at 10:24 ],
通过分析轨迹文件,只能得到一个RDF曲线,依老虎大王的意思应该怎样计算配位数啊?
发完帖子才看到回复,非常感谢!
根据你求的RDF曲线积分就可以求了
你算不出配位数,那是怎么算出RDF的呢?用MD算RDF,第一步是找出不同距离内的配位数,第二步是归一化得到RDF。
如果你只有一个RDF曲线,然后再通过积分来反算配位数,可能会有一些计算误差的。
确实 在算RDF的时候已经算过一遍配位数了
或者,如果你有构型,并且用现成的程序输出了RDF,你不想修改人家的程序来输出配位数,那么建议你用搜索构型的方法求配位数,而不必根据RDF去积分求配位数(你不清楚人家具体的归一化方法,积分容易出错)。求配位数的方法是:
1。根据RDF或其它知识,选择一个配位距离(比如RDF第一谷的位置,设为r0)
2. 将任一原子设为中心原子,搜索与其距离在r0以内的原子个数(注意周期性边界条件,对多组分体系可以分类)
3. 将第2步遍及所有中心原子
4. 将第2和第3步遍及所有不同时刻的构型。
5. 求平均。(包括中心原子平均和构型(即时间)平均)。
这就是配位数的算法,简单得很。若要求配位数随配位距离的变化,再选不同的距离,多一层循环就是了。
[ Last edited by 老虎大王 on 2009-4-27 at 10:24 ],
通过分析轨迹文件,只能得到一个RDF曲线,依老虎大王的意思应该怎样计算配位数啊?
发完帖子才看到回复,非常感谢!
根据你求的RDF曲线积分就可以求了