大家好,我是小马老师。

对于复杂的lammps模型,可以使用MS建模,建模完成后使用msi2lmp这个免费的工具换为lammps支持的data文件。

相关的视频教程可以参考:

​lammps教程:H2氢气建模以及转化为data文件方法​

​lammps视频教程:Cu_H2O润湿模型建模方法​

在整个建模和换过程中,可能会出现各种各样的错误,导致转换失败。

本文介绍一种错误的解决办法。

lammps建模小技巧:msi2lmp不能转换data文件的一种解决方法_建模

以ZnO建模为例,在MS中导入ZnO模型,按照传统流程,扩胞后使用forcite模块设置cvff力场。

在forcite模块点击run后,出现计算错误:

lammps建模小技巧:msi2lmp不能转换data文件的一种解决方法_建模_02

错误的主要原因是无法为Zn原子分配力场。

按照正常的流程,这一步出错,后面的换过程就无法正常进行。

其实不然,虽然MS没有分配Zn原子力场,但是我们依然可以把forcite计算后的ZnO.xsd文件导出为ZnO.car文件

使用msi2lmp ZnO -class I -frc cvff>data.ZnO会提示原子“xx”mass错误:

lammps建模小技巧:msi2lmp不能转换data文件的一种解决方法_数据_03

在命令行中添加“-i”忽略力场错误,使换过程继续进行,命令为:



msi2lmp ZnO -class I -frc cvff -i >data.ZnO

换完成后,会产生ZnO.data文件,用记事本打开后发现该文件大部分数据是完整的,只有部分数据不准

例如,Zn原子没有被识别出来,mass为0,原子类型为“xx”。

lammps建模小技巧:msi2lmp不能转换data文件的一种解决方法_建模_04

下面手动修改这部分数据。

(1)把“xx”全部替换为“Zn”

(2)修改Zn的mass为65.38

(3)删除势函数类型和参数。

势函数可以在in文件中重新设置,如果新的势函数文件不需要键角等信息,也可以在data文件中删除键角等信息。

处理之后的data文件为:

lammps建模小技巧:msi2lmp不能转换data文件的一种解决方法_数据_05

在Ovito中打开ZnO文件,可以正常显示,在lammps in文件中也可以正常读取这个模型。

lammps建模小技巧:msi2lmp不能转换data文件的一种解决方法_数据_06

使用msi2lmp这个工具换data文件的最主要目的是获得原子的拓扑结构,因此,即使在MS中力场参数设置不全,也可以转换data文件,自己稍作处理即可。



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


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