大家好,我是小马老师。
本文介绍从dump文件导出data文件的方法。
在lammps模拟中,可能会遇到从前一个模拟dump文件中提取data文件的情况。
平常用的最多的方法是用ovito打开dump文件,点击“file”-“export file”的方式导出data文件。
如果模拟的体系没有键角,用这种方式是可以的,但如果模拟的是聚合物体系,用这种方法导出的data文件只有原子坐标,没有键角等信息。
显然,这样导出的data文件无法作为下一步模拟的data文件。
下面介绍一种方法,可以很方便的从dump文件中导出包含键角信息的data文件。
使用的软件还是python和ovito模块。
python ovito模块不仅可以一次性的读入dump文件,也可以分别读入包含键角信息的拓扑文件和包含模拟结果的轨迹文件。
在本例中,包含键角的拓扑文件可以用初始结构文件pp.data,轨迹文件就是模拟产生的dump.xyz文件。
读入代码为:
pipeline = import_file("pp.data")
traj_mod = LoadTrajectoryModifier()
traj_mod.source.load('dump.xyz')
pipeline.modifiers.append(traj_mod)
读入以上两个文件后,使用export_file()命令输出data文件。
export_file(pipeline, "output.data", "lammps/data", atom_style="full")
打开output.data文件可以看到,data文件包含键角信息:
在ovito中也可以看到键连接情况:
所有代码为:
from ovito.io import import_file, export_file
from ovito.modifiers import LoadTrajectoryModifier
#读入结构和轨迹文件
pipeline = import_file("pp.data")
traj_mod = LoadTrajectoryModifier()
traj_mod.source.load('dump.xyz')
pipeline.modifiers.append(traj_mod)
#输出data
export_file(pipeline, "output.data", "lammps/data", atom_style="full")
公众号:lammps加油站