计算化学公社

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

[Lammps] 为什么读取data时一直出问题

[复制链接 Copy URL]

1

帖子

0

威望

9

eV
积分
10

Level 1 能力者

ms导出模型文件读取文件失败

202503271449237452..png (110.32 KB, 下载次数 Times of downloads: 4)

202503271449237452..png

ep mpda.car

137.32 KB, 下载次数 Times of downloads: 0

ep mpda.mdf

150.85 KB, 下载次数 Times of downloads: 0

ep mpda.data

508.37 KB, 下载次数 Times of downloads: 1

epmpda.lmp

2.25 KB, 下载次数 Times of downloads: 1

21

帖子

1

威望

90

eV
积分
131

Level 2 能力者

2#
发表于 Post on 2025-3-28 10:10:50 | 只看该作者 Only view this author
本帖最后由 TerminSong 于 2025-3-28 11:12 编辑

首先,你在in文件里指定了dihedral_style none,但是在data文件里包含了Dihedral Coeffs # harmonic段,这会导致lammps进行Dihedral相关的类型检查,但是报错不应该是这样的,应该首先看到的是这个报错:
Dihedral style {} in data file differs from currently defined dihedral style {},
但是很明显在这里lammps通过了类型检查并且直接调用到了 force->dihedral->coeff,而此时force->dihedral对应的是hamonic对象而非none对应的nullptr,这很奇怪。
我唯一能感觉到不对劲的地方就是你前面那行日志,插件加载成功那段。
插件的初始化函数是传入了lmp执行对象的,也就是这个函数能够对lmp的执行作出相当多的修改,当然也包括把dihedral固定为hamonic。


当然,从使用的角度来说,improper_cvff应该更值得怀疑,官方文档指出,这个命令使用的方程与dihedral_style hamonic是一致的。
https://docs.lammps.org/improper_cvff.html#:~:text=If%20the%204,dihedral_style%20harmonic.
但是目前我还没发现代码层面这个命令是如何覆盖掉dihedral_style none的


----------------------------------------------------------------------------------------------------------------------
我又细看了一下lammps的文档和你的输入文件,突然发现你的data文件名和命令有点特殊,用了个+号连接,而默认的read_data应该没有对这个符号做什么处理,
该不会。。。你的插件重载了read_data的行为吧
插件代码的优先级是高于自带代码的,甚至可以重载已有命令的行为,具体参考:
https://docs.lammps.org/Develope ... 0all%20of%20LAMMPS.

本版积分规则 Credits rule

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

GMT+8, 2025-8-16 17:05 , Processed in 1.442334 second(s), 29 queries , Gzip On.

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