lammps教程:boundary命令详解

boundary命令设置box的边界条件,语法比较简单:

boundary x y z

参数xyz分别设置该维度的边界条件,最基本的边界条件有四种:p、f、s、m。

lammps支持对同一方向的两个边界设置不同的边界条件,对y方向下表面设置f边界、上表面设置s边界,可以写为:

boundary p fs p

1.周期性边界:p

参数p表示周期性边界条件,当粒子从一侧飞出,会从相对应的另一侧再次进入box,一般情况下不会发生“lost atoms”丢失原子错误。

2.固定边界:f

参数f表示box的表面在该方向上被固定住,不因体系压力的变化发生移动,如果原子从一个表面飞出,会提示“lost atoms”错误,设置thermo_modify lost可以允许原子丢失,否则模拟过程会被终止。

3.收缩性边界:s
参数s表示在该方向上,盒子的表面会根据体系的压力大小或原子运动情况发生移动。

一般情况下,盒子会配合原子的移动,尽量把原子包含在box内,但是当原子速度过快,位移太大时原子也可能会飞出盒子,造成“lost atoms”错误。

4.限制性收缩:m

参数m功能和s差不多,盒子大小同样会随原子的移动而发生变化,但盒子在收缩到限定值时就不再发生变化,也就是盒子尺寸有一个最小值。

例如z方向上表面最小值设为50,当该表面收缩到50时会停止收缩,类似转换成了临时性的固定边界。

通常在建模或者读取data文件之前设置boundary命令,在模拟运行的过程中也可以改变边界条件设置。

比如,使用velocity进行拉伸时,拉伸方向z不能为周期性边界条件,但是在弛豫阶段又需要在npt系综下消除z方向的应力,否则初始应力可能不为0,这种情况下就可以先使用周期性边界条件进行驰豫,在拉伸前使用change_box命令改变周期性条件:

boundary p p p
#进行npt系综下驰豫
……
#z方向改为s
change_box all boundary p p s
#进行拉伸
……

周期性边界条件设置比较简单,在模拟过程中出现丢失原子或者体系演化不合理时,灵活改变周期性边界条件可能会获得比较理想的结果。

更多lammps教程请关注微信公众号:lammps加油站
在这里插入图片描述

  • 7
    点赞
  • 31
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

lammps加油站

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

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

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

打赏作者

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

抵扣说明:

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

余额充值