大家好,我是小马老师。
本文讲解lammps data文件错位处理技巧。
在MS建模后,需要使用msi2lmp把car类型的文件转为lammps data文件,有时候模型在ms中显示没有问题,但是转换为data文件后结构会错位。
正常结构:
转换data后错位结构:
主要原因是在转换过程中,整体结构沿z方向发生了偏移,之前介绍过一个方法,在转换的时候可以加shift参数进行上下调整:
msi2lmp layer -class I -frc cvff -shit 0 0 -20 >data.layer
不少同学反映,shift参数不好掌握,所以,本文再提供另外一种在lammps中调整结构的方法。
使用的命令是displace_atoms,displace_atoms命令可在三个方向任意移动原子。
具体的方法:
(1)确定移动的距离
在ovito打开转换后的data文件,如下图所示,红框内的结构应该在最下面,把鼠标放到红框内左下角的原子,ovito窗口的左下角会显示该原子的坐标。
在本例中,原子z坐标为66,如果要把红框内原子移动到下方,大约需要向下移动66埃米。
(2)下移
确定好尺寸之后,就可以写in文件,读入data文件,然后下移66埃米。
units real
boundary p p p
atom_style full
pair_style lj/cut/coul/long 12
bond_style harmonic
angle_style harmonic
dihedral_style harmonic
kspace_style pppm 1e-4
read_data layer.data
displace_atoms all move 0 0 -66 units box
write_data new.data
运行in文件后,会得到新的结构new.data,在ovito中打开new.data,检查结构是否符合预期,如果移动距离偏大或偏小,再进行微调。
调整后的新结构为:
-------------------------------
公众号:lammps加油站