大家好,我是小马老师。

如果lammps模拟体系中包含分子结构,最常见的流程是使用MS、packmol等软件建模,然后换为lammps data文件,在lammps读入data文件。

其实,lammps也可以进行分子建模,对于一些比较简单的分子模型,使用lammps建模也比较方便。

本文以水球模型为例,介绍lammps分子类结构建模方法。

lammps自带命令create_atoms实现水分子建模_一对一

lammps创建分子的原理是把分子当做一个原子添加到体系中,和添加原子的命令一样,也是create_atoms

命令语法规则为:



create_atoms mol template-ID seed

mol添加分子的关键词

template-ID:分子模板,等同于ms中分子单体

seed:随机数种子,分子取向随机

lammps自带命令create_atoms实现水分子建模_公众号_02

具体的步骤

(1)创建分子模板(template-ID)文件

分子模板描述了一个分子单体内原子的类型、原子坐标、键、角等信息。

如下图为水分子的模板文件water.data部分内容,请加QQ群:754749935下载完整的water.data文件

lammps自带命令create_atoms实现水分子建模_一对一_03

(2)编写in文件

units real
atom_style full
#创建box
region box block -20 20 -20 20 -20 20 units box
#box内原子数量、键、角等信息
create_box 2 box bond/types 1 angle/types 1 extra/bond/per/atom 2 &
extra/special/per/atom 2 extra/angle/per/atom 1
#H2O的晶格,可调节晶格尺寸控制水分子数量或水的密度
lattice bcc 3.92
#设定区域
region H2O sphere 0 0 0 18 units box
#设定分子模板id为water,对应文件water.data
molecule water water.data
#在球形区域内填充水分子
create_atoms 0 region H2O mol water 3453 units box
#设置原子摩尔质量
mass 1 16
mass 2 1
#保存模型文件
write_data H2O.data

结果如图所示:

lammps自带命令create_atoms实现水分子建模_公众号_04

in文件中水分子按照fcc晶格填充,这种方式的优点是填充的水分子密度与实际密度接近,不用考虑尺寸或者数量。


也可以使用random关键词设置按照一定的数量随机填充,这种情况下需要计算水分子的数量,相对麻烦。

END




公众号案例代码以及学习交流,请加QQ群:754749935


扫描关注微信公众号:lammps加油站

lammps自带命令create_atoms实现水分子建模_建模_05