lammps案例分析(1):石墨烯单轴拉伸之velocity方式

lammps模拟石墨烯拉伸过程有两个命令可选:deform和velocity,两个命令的原理不同。

deform是按照一定的速率拉伸box,在这个过程中,石墨烯的原子随着box的伸长而变化坐标,从而实现整体的拉伸。

velocity方式通常固定石墨烯的一端,给另一端一个固定的速度v,由这一端的原子带动其余原子运动。

本文采用velocity方式进行石墨烯的拉伸,下一篇文章将采用deform方式对石墨烯进行拉伸。

下面对石墨烯拉伸in文件进行详细分析。

#模型初始化,模拟单位为metal,原子方式为atomic,3维模型
units  metal
atom_style   atomic
dimension  3

#定义边界条件,x和y方向为周期性边界,y为拉伸方向,z方向为固定边界

boundary     p p f

#定义邻域原子定义,1个原子的邻域原子列表是以该原子为中心,以力截断半径+缓冲值(也就是下面设置的0.3)为半径的圆内原子列表

neior      0.3 bin

#设置模拟步长为1fs

timestep        0.001

#生成模拟box,box内含有3种原子,这三种原子都是C原子,为了后期线上着色方便,原子类型分为上中下三种

region   box block 0 175 0 175 -5 5 units box
create_box 3 box

#自定义石墨烯晶格参数

lattice  custom 2.4768 a1 1.0 0.0 0.0 &
a2 0.0 1.732 0.0 a3 0.0 0.0 1.3727 & 
basis 0.0 0.33333 0.0 & 
basis 0.0 0.66667 0.0 &
basis 0.5 0.16667 0.0 &
basis 0.5 0.83333 0.0

#生成石墨烯原子,类型为1

region  gp block 10 120 10 120 -0.5 0.5 units box
create_atoms 1 region gp

#设置原子质量

mass * 12

#定义区域,上下两部分固定区域和中间活动区域mobile

region upper block INF INF 117 INF INF INF  units box
region lower block INF INF INF 13 INF INF units box
group upper region upper
group lower region lower
group boundary union upper lower
group mobile subtract all boundary

#设定最上端原子类型为2,最下端原子类型为3,为后期着色方便

set group upper type 2
set group lower type 3

#设置势函数,airebo常用于石墨烯的模拟

pair_style  airebo 2.0
pair_coeff  * * CH.airebo C C C

#初始化温度

velocity mobile create 300.0 8877528

#固定上下两端原子

fix  1 boundary setforce 0.0 0.0 0.0

#以下四句代码,对模型在npt下进行弛豫,并将结果保存到文件中

thermo 100
fix  2 all npt temp 300.0 300.0 1 x 0 0 0.1 y 0 0 0.1
dump 1 all atom 100 gp_relax.lammpstrj
run 1000

#取消fix,dump设定,步数清零

unfix   2
undump 1
reset_timestep 0

#最上端设置y方向速度为1,沿y方向拉伸

velocity upper set 0.0 1.0 0.0

#按比例设置mobile部分的速度

velocity mobile ramp vy 0.0 1.0 y 8 52 sum yes

#在nvt下进行拉伸

fix  2 all nvt temp 300.0 300.0 0.01

#进行热力学输出,保存拉伸后原子坐标

thermo 1000
thermo_modify lost ignore
dump  1 all atom 1000 gp_tension.lammpstrj
run  10000

模拟最终结果如下图所示,本例比较简单,没有加入应力应变的统计,如要输出应力和应变,可用fix或者thermo语句输出pxx、pyy、pzz三个方向上的应力。

 

 

最后,欢迎大家通过微信公众号联系我们。

微信公众号:320科技工作室。

  • 1
    点赞
  • 39
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
LAMMPS是一种基于分子动力学的高性能计算软件,可以用于模拟物质的原子和分子行为。在LAMMPS中,可以使用多晶拉伸模拟来研究材料的力学性质,比如弹性模量、屈服强度、断裂韧性等。下面是关于LAMMPS梯度多晶拉伸的一些简要介绍: 1. 多晶拉伸模拟:多晶拉伸模拟是指在拉伸方向上施加一个应力,使晶体在这个方向上发生形变。在LAMMPS中,可以通过施加一定的位移或应力来实现多晶拉伸模拟。 2. 梯度多晶拉伸模拟:梯度多晶拉伸模拟是指在不同位置施加不同的应力,使晶体在拉伸方向上形成梯度结构。这种模拟可以用于研究材料的局部力学性质,比如位错活动、裂纹扩展等。 3. 实现方法:在LAMMPS中,可以使用fix deform命令来实现多晶拉伸模拟,使用variable命令来定义应力或位移的变化规律。在梯度多晶拉伸模拟中,需要定义一个变化的应力或位移场,可以使用Python脚本或其他程序来生成这个场。 4. 结果分析:在模拟结束后,可以使用compute命令来计算材料的应力应变曲线,从中获取材料的力学性质。同时,还可以使用dump命令来输出原子的位置和速度信息,用于进一步分析位错、裂纹等局部结构的形成和演化过程。 需要注意的是,在进行多晶拉伸模拟前,需要对材料进行准备,包括建立晶体模型、设定原子的力场参数、进行能量最小化等步骤。同时,还需要选择合适的时间步长、温度等参数,以保证模拟的准确性和可靠性。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

CAE320

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值