欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

LAMMPS 常用建模方法汇总 - 外部建模

最编程 2024-07-12 16:48:39
...

外部建模主要是通过数据文件 data file实现的,即只要你将你需要的构型以data file所要求的格式保存成文件,就能够被LAMMPS读入,而建立模型。

假如已经有了能够反映模型的data file后,就可以直接使用read_data命令完成建模了。

data file基本格式

如下图所示,这给出的是data file最基本的格式,只包含原子坐标,而不包含键能键角等参数,一般的合金体系是这种类型。

description of data file

上面的注释已经比较明确了,不多解释。更多可以参考LAMMPS文档。

data file获取方式

实际上,只要你最后得到的data file的格式类似于上面(不包括注释),就可以被LAMMPS读入,而不管你是采用什么途径。

目前来说,比较遗憾的是还没有任何一种软件支持直接导出data file的文件格式,但是因为data file文件格式还比较简单,所以还是比较容易获得的。

1. 软件导出+手动编辑

很多软件,如Material Studio,具有强大的建模功能,而且支持很多种文件格式的导出。遗憾的是,目前还不支持直接导出data file格式。

(1)使用建模软件完成建模后,导出xyz文件格式(因为xyz文件格式与data file格式比较相近,比较容易修改);

(2)使用文本编辑器,参考上图所示的data file的文件格式编辑xyz文件,主要是增加模拟盒子的参数。

这种方法适用于构型相对简单、原子数不多的情况下,否则编辑的工作量会很大。

我写过一个matlab脚本,可以完成这种格式转换:【xyz2lmp: 将xyz格式转成lammps的data file】

2. 程序产生

使用程序建模是最*的方式,因为它几乎不受任何限制。不论你的模型多么复杂,总能够使用一定的算法完成建模。

但,这要求你对你要建立的模型由深入的理解和有一定的编程能力来实现你的算法。

对于一些复杂的模型,如位错、多晶等缺陷,几乎只能用这种方法实现(如果你能够在网上找到现成的代码,You are lucky!)。

因为这种方法因模型差异很大,所以这里也不做过多介绍了。