对于lammps初学者来说,建模是进行分子动力学模拟的第一个挑战。单晶结构的建模相对简单,对于合金或者化合物的建模就复杂的多。
在lammps建模案例之NiTi合金建模一文中,详细介绍了如何使用lattice custom 命令建立合金的模型,使用这种方法,原则上可以建立任何合金和化合物的模型。
但是,在使用lattice custom命令的时候,必须知道晶格常数和一个晶胞内原子的个数以及原子的位置。
根据原子的位置计算相对于基矢的坐标,这可能是使用lattice custom建模最复杂的一个步骤,也是最容易出错的一步,一不小心就可能算错原子坐标,导致整个模型的错误。
今天介绍一种简单的合金或者化合物建模方法,不用再费力的计算原子坐标,只需要下载到晶体的CIF文件即可。
CIF又称为晶体学信息文件,包含了每个晶体的详细信息,如晶胞参数、原子坐标等晶体信息,绝大多数的已知晶体都可以从网上下载到CIF文件。
以TiC为例,打开网页:https://materialsproject.org/materials/mp-631,点击如下图所示的CIF图标即可下载TiC的晶体CIF文件。

打开TiC的CIF文件,可以看出,文件的第4-6行对应lattice custom中a1、a2、a3三个基矢的长度。第7-9行为三个基矢之间的夹角。

TiC共有4个Ti原子,4个C原子,结构如下图所示:

使用lattice custom建模时只要确定这8个原子的坐标即可,8个原子的坐标在CIF文件的第27-34行。

第27-30行为Ti原子坐标,第31-34行为C原子坐标,这些坐标不需要转换,可直接写入到lattice custom命令中。
lattice命令对应的代码如下:
region TiC block 0 30 0 30 0 30 units box
lattice custom 4.33565 a1 1.0 0.0 0.0 a2 0 1.0 0.0 a3 0.0 0.0 1 &
basis 0.0 0.0 0.0 & #Ti原子
basis 0.0 0.5 0.5 & #Ti原子
basis 0.5 0.0 0.5 & #Ti原子
basis 0.5 0.5 0.0 & #Ti原子
basis 0.5 0.0 0.0 & #C原子
basis 0.5 0.5 0.5 & #C原子
basis 0.0 0.0 0.5 & #C原子
basis 0.0 0.5 0.0 #C原子
create_atoms 2 region TiC &
basis 1 1 & #Ti原子,类型为1
basis 2 1 & #Ti原子,类型为1
basis 3 1 & #Ti原子,类型为1
basis 4 1 & #Ti原子,类型为1
basis 5 2 & #C原子,类型为2
basis 6 2 & #C原子,类型为2
basis 7 2 & #C原子,类型为2
basis 8 2 & #C原子,类型为2
生成的模型如下图所示:

------------------------------------------------
本案例包含http://TiC.in、TiC.cif两个文件,下载案例代码请关注公众号:lammps加油站,发送编号:1011即可下载。
更多lammps教程和案例请长按下图关注公众号:
http://weixin.qq.com/r/JCoYAILEt9-IrcZj9382 (二维码自动识别)