计算化学公社

标题: VMD能否用三个晶胞参数矢量矩阵来设置周期性边界条件? [打印本页]

作者
Author:
乐平    时间: 2024-7-28 22:39
标题: VMD能否用三个晶胞参数矢量矩阵来设置周期性边界条件?
本帖最后由 乐平 于 2024-7-28 22:57 编辑

通常在 VMD 中设置周期性边界条件的命令是
  1. pbc set {a b c alpha beta gamma} -all
复制代码

如果有少量原子跑到周期性边界条件盒子外,可以 pbc wrap -all 将它们移回到盒子里。

但是,我这个结构出现一点小问题。原本是六方 SiC ,经过晶格矢量转换变成了正交的,然后扩胞。
POSCAR 里的晶胞参数为
  1. 4.6274639999999998   8.0150009999999998    0.0000000000000000
  2. -9.2549259999999993   5.3433339999999996    0.0000000000000000
  3. 0.0000000000000000   0.0000000000000000   10.0964620000000007
复制代码




在 VESTA 里显示效果如下,a, b, c, alpha, beta, gamma 分别为  9.25493, 10.68667, 10.09646, 90.0000,  90.0000,  90.0000
(, 下载次数 Times of downloads: 16)

但是,用 NVT 系综跑了 AIMD 一段时间之后,将 .xyz 文件导入到 VMD 中。如果仍然按照  pbc set {9.25493, 10.68667, 10.09646, 90.0000,  90.0000,  90.0000} -all  设置,效果如下

(, 下载次数 Times of downloads: 20)

可以发现,晶体结构和盒子发生了偏移,确切地说,应该是形成了一定的角度,而仅仅是水平方向的偏移。
本以为通过 pbc wrap -all 将原子全部移回到盒子里就解决了。但是,wrap 之后,发现盒子里出现原子“空缺”的情况,如下:
(, 下载次数 Times of downloads: 19)

我猜测,可能是 pbc set {9.25493, 10.68667, 10.09646, 90.0000,  90.0000,  90.0000} -all  命令绘制的盒子与晶体结构之间存在角度的原因,如下:
(, 下载次数 Times of downloads: 19)

我想问的是,能否用 3 x 3 的矩阵形式的晶胞参数来绘制周期性边界条件盒子,即用
  1. 4.6274639999999998   8.0150009999999998    0.0000000000000000
  2. -9.2549259999999993   5.3433339999999996    0.0000000000000000
  3. 0.0000000000000000   0.0000000000000000   10.0964620000000007
复制代码



也许比用 9.25493, 10.68667, 10.09646, 90.0000,  90.0000,  90.0000 更贴合晶体结构?


于是我尝试了
  1. pbc set cell {4.6274639999999998 8.0150009999999998 0.0000000000000000 -9.2549259999999993 5.3433339999999996 0.0000000000000000 0.0000000000000000 0.0000000000000000 10.0964620000000007} -all

复制代码

结果报错
  1. ERROR: pbcset: unknown option: 4.6274639999999998 8.0150009999999998 0.0000000000000000 -9.2549259999999993 5.3433339999999996 0.0000000000000000 0.0000000000000000 0.0000000000000000 10.0964620000000007

复制代码


搜了一下 VMD 官网
https://www.ks.uiuc.edu/Research/vmd/plugins/pbctools/
set cell [options…]


于是尝试
  1. set cell {4.6274639999999998 8.0150009999999998 0.0000000000000000 -9.2549259999999993 5.3433339999999996 0.0000000000000000 0.0000000000000000 0.0000000000000000 10.0964620000000007} -all

复制代码
报错
  1. wrong # args: should be "set varName ?newValue?"

复制代码


尝试去掉 -all
  1. (AIMD) 51 % set cell {4.6274639999999998 8.0150009999999998 0.0000000000000000 -9.2549259999999993 5.3433339999999996 0.0000000000000000 0.0000000000000000 0.0000000000000000 10.0964620000000007}
  2. 4.6274639999999998 8.0150009999999998 0.0000000000000000 -9.2549259999999993 5.3433339999999996 0.0000000000000000 0.0000000000000000 0.0000000000000000 10.0964620000000007
复制代码
得到返回值
4.6274639999999998 8.0150009999999998 0.0000000000000000 -9.2549259999999993 5.3433339999999996 0.0000000000000000 0.0000000000000000 0.0000000000000000 10.0964620000000007


其实这就是输入的晶胞参数矩阵的数值……


于是尝试添加盒子
  1. pbc box
复制代码


结果报错…… 说没有设置 pbc 参数
  1. ERROR) Suspicious pbc side length (a=0.000000 b=0.000000 c=0.000000). Have you forgotten to set the pbc parameters?
复制代码



请教各位,能否用 3 x 3 的矩阵形式的晶胞参数来绘制周期性边界条件盒子?
谢谢!



作者
Author:
slxc920113    时间: 2024-7-28 23:44
提供一下结构文件呢
作者
Author:
sobereva    时间: 2024-7-29 03:06
VMD的盒子满足一般定义,即,a平行于x轴,b在XY平面上。需要让模拟过程中的晶胞也对应这种情况
作者
Author:
乐平    时间: 2024-7-29 10:26
slxc920113 发表于 2024-7-28 23:44
提供一下结构文件呢

文件比较大,切了前 20 帧。见附件
谢谢!

作者
Author:
乐平    时间: 2024-7-29 10:27
sobereva 发表于 2024-7-29 03:06
VMD的盒子满足一般定义,即,a平行于x轴,b在XY平面上。需要让模拟过程中的晶胞也对应这种情况

谢谢社长
也许我应该先把晶胞的朝向按 a平行于x轴,b在XY平面上调整好再模拟




欢迎光临 计算化学公社 (http://bbs.keinsci.com/) Powered by Discuz! X3.3