lammps中文教程10
1.10 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
#进行拉伸
……
评论
春风得意马蹄疾

干货推荐

神经元
Mr弘🔬
77 7

顶级期刊子刊的含金量怎么样?
九妹
42 1

神经元、星形胶质细胞、少突胶质细胞、小胶质细胞组织学区分
Mr弘🔬
91 7

这些真的是棕色脂肪吗?
Mr弘🔬
164 2

CP2K计算能带结构与DOS图
齐振宏
311 2

模态分析到底在算啥?搞懂这个,结构为什么会自己振动就明白了
莫名其妙
64 4
