文章来源:“分子动力学”公众号
链接:https://mp.weixin.qq.com/s/QBwn8UGB1sJ3YHKuVkAfkQ
合金体系的创建,主要有两种方法,如下:
- 程序创建data file文件
根据合金体系的结构,按着data file的文件格式编程产生相关data file文件,由read_data命令读入即可。
可以说,这是一种万能的方法,具体不多说,主要是要了解data file的格式,并且有一定的编程基础。
http://lammps.sandia.gov/doc/read_data.html
- lammps命令创建
lammps提供的命令也能很方便的创建合金结构,当然可能仅限于一些比较规则的晶体结构。这里以B1结构(rocksalt)的NaCl为例进行说明(NaCl显然不是合金,但合金类似)。
创建结构的命令不外乎lattice, create_box, create_atoms,这里只是强调在合金体系创建的应用。
先直接给出命令,如下:
具体说明:
(1) lattice第一行为晶格矢量,其中$x为晶格矢量;第二行和第三行每一个basis对应原胞中的一个原子。对于B1结构,是包含8个原子,即4个Na,4个Cl。
(2) region是定义盒子的区域
(3) create_box定义盒子,指定原子类型的数量。这里的2是因为有两种类型。
(4) create_atoms在盒子中,以lattice晶格创建原子。这里的basis有两个参数,第一个指定是lattice中的哪一个原子,这里从1到8;第二个参数指定原子类型,因为有两种类型,所以为1或者2.
建议可以先看manual,熟悉上面涉及到的几个命令。
lattice: http://lammps.sandia.gov/doc/lattice.html
create_box: http://lammps.sandia.gov/doc/create_box.html
create_atoms: http://lammps.sandia.gov/doc/create_atoms.html
这里,我们看到只是指定了两种原子类型,但并没有告诉程序是哪两种,它怎么会知道呢?
所以这需要在后面的势参数中指定。