lammps案例 delete_atoms命令实现球壳结构建模

球壳结构在先进复合材料的发展中具有特殊的意义,因为它们可以有效地将不同的组分在纳米尺度上聚集在一起,这种结构的优点很大程度上依赖于核心和外壳的关键设计。本文将介绍一种球壳分子模型的lammps建立过程,本教程适合于新手,同时希望专业前辈提出不足。

    如下图为本文建立的球壳结构模型。

   内核为Al原子,外层包覆着一定厚度的Al原子。

这里以Al原子为例,读者可自定义两种原子

图片

图片

图片

图片

01

基本思路

首先我们要理清建立球壳结构的基本思路,在第二讲已经介绍过采用region命令创建核心及壳体的方式建立六面体核壳模型过程,本文采用delete_atoms命令创建球壳模型的思路为:

1.创建内外球两个球形区域

2.在外球区域填充1原子

3.删除内球区域填充的1原子

4.在内球区域填充2原子

使用到的命令为create_atomsdelete_atomscreate_atoms

图片

02

完整代码

完整in文件如下:

#模型基本参数
units metal
atom_style atomic
boundary p p p
#创建模拟区域
region box block -50 50 -50 50 -50 50 #生成一个边长为100的方形盒子区域
create_box 2 box
#创建外球区域
region ball1 sphere 0 0 0 50 units box  #生成一个半径为50的球形区域

#创建内球区域
region ball2 sphere 0 0 0 40 units box #生成一个半径为40的球形区域,使壳层厚度10

#在外球区域填充1原子
lattice fcc 4.05  #设置晶格参数
create_atoms 1 region ball1

#删除内球区域1原子
delete_atoms region ball2 compress yes  #压缩id

#在内球区域填充2原子
lattice fcc 4.05 #设置晶格参数
create_atoms 2 region ball2

#设置原子质量
mass 1 27 #设置1原子质量27
mass 2 27 #设置2原子质量27

#保存文件
write_data qiuke.data #输出qiuke.data文件

图片

03

运行结果

    接着,在cmd窗口运行in文件,将生成的data文件拖到OVITO软件中,就产生了如下模型:

图片

总结

    是不是感觉这种方法也挺简单的,比较好理解建模的思路。

更多lammps案例代码,请关注微信公众号:lammps交流站

图片

dimension 3 units metal boundary p p f atom_style atomic ######################################################################## #---------------------------------------建模---------------------------- variable a equal 3.615 #晶格常数值 variable lx equal 50 #盒子 variable ly equal 50 #三个方向 variable lz equal 150 #大小 # 类型定义策略(从7种简化为3种基础类型) # 1: Cu基体 | 2: Ni掺杂 | 3: C压头 ###创建盒子 lattice fcc $a orient x 1 0 0 orient y 0 1 0 orient z 0 0 1 region box block 0.0 ${lx} 0 ${lx} 0.0 ${lz} units box create_box 3 box # 只需3种原子类型 region boundary_layer_down block INF INF INF INF INF 5 units box region thermostat_layer block INF INF INF INF 5 10 units box region newtonian_layer block INF INF INF INF 10 60 units box region substracte union 3 boundary_layer_down thermostat_layer newtonian_layer units box create_atoms 1 region substracte # 初始全为Cu(类型1) #-----------------压头原子创建----------------- lattice diamond 3.57 region indent sphere 25 25 80 12 units box create_atoms 3 region indent # 压头为纯C(类型3) #-----------------质量定义----------------- mass 1 63.55 # Cu mass 2 58.69 # Ni mass 3 12.01 # C # 按层掺入Ni原子(保留Cu/Ni比例) group boundary_layer_down region boundary_layer_down group thermostat_layer region thermostat_layer group newtonian_layer region newtonian_layer group tool region indent set group boundary_layer_down type/ratio 1 0.7 2 0.3 87393 # 底层70%Cu+30%Ni set group thermostat_layer type/ratio 1 0.8 2 0.2 54872 # 中层80%Cu+20%Ni set group newtonian_layer type/ratio 1 0.9 2 0.1 32615 # 上层90%Cu+10%Ni set group tool type 3 compute cu_cnt boundary_layer_down count type 1 compute ni_cnt boundary_layer_down count type 2 variable cu_percent equal (${cu_cnt}/(${cu_cnt}+${ni_cnt}))*100 print "边界层Cu比例: $(cu_percent)%" write_data final.data dump 1 all custom 100 dump.lammpstrj id type
最新发布
04-03
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值