计算化学公社

 找回密码 Forget password
 注册 Register
Views: 1749|回复 Reply: 2
打印 Print 上一主题 Last thread 下一主题 Next thread

[VMD] 计算rdf和配位数和snapshot看起来不一样

[复制链接 Copy URL]

26

帖子

0

威望

223

eV
积分
249

Level 3 能力者

本帖最后由 www1 于 2023-3-27 12:48 编辑

请教各位老师同学,

我跑完gromacs的md模拟K离子在水溶液中的行为(主要是要看K的水合离子的周围是有几个水分子)之后,使用vmd进行rdf的统计和配位数的计算。rdf的峰明显低很多,配位数算出来只有2。同样的力场文献里的配位数是4到5。
我check了轨迹之后,发现看起来轨迹没有什么问题,确实是跟文献里报道的基本一致,但是无论我怎么样统计出来的结果都还是有问题的。所以请大家帮我看看,到底是哪里的问题,感谢。

下面附上一些截图。

1. 我用graphical representation 里用selected atom 检查了我的选择原子的语法,是没问题的。蓝色是K 离子,红色是H2O里的O。也能大致看得出配位数肯定不止2.

2. 下面是我进行rdf calculation的时候的选择。

selection 1: name K,  selection2 name OW.
3. 计算出来的rdf跟文献里的趋势是完全一致的,只是高度不一样。计算配位数是用自己写的脚本计算的,也test过没有任何问题了。

------------------------------------------3-27 update

脚本里的公式进行了更正,但是计算出来的rdf和轨迹中观察到的,还是不一致~请问是什么问题~

------------------------------------------

希望各位老师同学可以帮忙找到问题所在,非常感谢!!

下面附上我根据rdf计算配位数的脚本,有需要的同学可以拿去用。

import numpy as np

rdf_file = "rdf.dat"
rdf_data = np.loadtxt(rad_file)

r_min =2
r_max = 3.5

r_idx = np.where((rdf_data[:,0] > r_min) & (rdf_data[:,0] < r_max))[0]
#coord_number = np.trapz(rdf_data[r_idx,1], rdf_data[r_idx,0])
coord_num = 4 * np.pi * density * np.trapz(r[idx_min:idx_max]**2 * g_r[idx_min:idx_max], r[idx_min:idx_max])

print("Coordination number:")

1.png (294.55 KB, 下载次数 Times of downloads: 17)

1.png

3.png (13.58 KB, 下载次数 Times of downloads: 13)

3.png

313

帖子

2

威望

3900

eV
积分
4253

Level 6 (一方通行)

2#
发表于 Post on 2023-3-10 11:34:46 | 只看该作者 Only view this author
配位数公式你用的不对啊,是4pi rho r**2 gr dr

26

帖子

0

威望

223

eV
积分
249

Level 3 能力者

3#
 楼主 Author| 发表于 Post on 2023-3-11 11:32:18 | 只看该作者 Only view this author
lyj714 发表于 2023-3-10 11:34
配位数公式你用的不对啊,是4pi rho r**2 gr dr

啊…… 是这样。谢谢

本版积分规则 Credits rule

手机版 Mobile version|北京科音自然科学研究中心 Beijing Kein Research Center for Natural Sciences|京公网安备 11010502035419号|计算化学公社 — 北京科音旗下高水平计算化学交流论坛 ( 京ICP备14038949号-1 )|网站地图

GMT+8, 2026-2-18 21:05 , Processed in 0.276100 second(s), 23 queries , Gzip On.

快速回复 返回顶部 返回列表 Return to list