shiyuyang 发表于 2025-7-8 17:12 不关心盒子信息的话就这样也行,如果要体现三维周期性的话,得自行从别处读取当前帧盒子的三个矢量的长度a, b, c及夹角alpha, beta, gamma,然后在VMD输入指令pbc set {a b c alpha beta gamma}定义。 其实像下面这样直接让lammps输出.lammpstrj文件也可以给VMD读取并识别元素信息(把{element_list}换成按序号排列的元素符号),也不需要像.xyz文件那样另外寻找、补充盒子信息了。
|
这不是VMD的问题,根本在于当前操作绕了很多弯路。 1. 最标准的xyz文件/extxyz文件应该用元素名而非元素序号来标记原子,而extxyz的注释行也不是所有软件都能利用,比如VMD不会读注释行的盒子信息但multiwfn可以(http://sobereva.com/477); 2. lammps的dump指令的文档有"You can use the dump_modify element option to change the output from using the (numerical) atom type to an element name (or some other label). This option will help many visualization programs to guess bonds and colors. "这样一句提醒,也就是跑MD途中就要用dump_modify自行把元素改成用符号标记的格式; 3. 实际上VMD直接就能打开(1) lammps导出的.lammpstrj格式的文件(已包含盒子信息),(2) 标准的用元素名来标记原子的.xyz文件(不包含盒子信息),(3) 不标准的拿元素序号来标记原子的xyz文件(也不包含盒子信息); 4. 就算真的只能在已经导出的xyz文件上修改,不清楚atomsk怎么把元素序号映射到元素名上的话,用它还不如用linux的awk等直接做文本操作修改。 |
手机版 Mobile version|北京科音自然科学研究中心 Beijing Kein Research Center for Natural Sciences|京公网安备 11010502035419号|计算化学公社 — 北京科音旗下高水平计算化学交流论坛 ( 京ICP备14038949号-1 )|网站地图
GMT+8, 2025-8-14 09:35 , Processed in 0.216019 second(s), 25 queries , Gzip On.