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加油站
lammps教程:boundary命令详解相关推荐
- ubuntu安装VIM教程与命令详解
目录 1.VIM简介 2.ubuntu安装VIM 3.安装命令详解 3.1.sudo 3.2.apt-get && install 3.3.vim-gtk 4.VIM参数配置 1.VI ...
- 区块链系列教程——geth命令详解
本文是区块链系列的第二篇,上一篇区块链系列教程--创建属于自己的区块链大概介绍了区块链的基本内容,并且使用geth客户端创建了私链,给了各位读者较为直观的感受.本文简单介绍geth命令,这对后面的教程 ...
- linux系统教程vi命令详解,Linux操作系统vi命令详解及其使用技巧
vi是Unix和Linux世界里极为普遍的全屏幕文本编辑器,几乎可以说任何一台Unix/Linux机器都会提供这套软件.Unix/Linux 上也已经发展出许多更新.更好用的文书编辑器,但并不是每一台 ...
- kali中steghide命令工具教程;7z命令详解;kali中base64命令详解
目录 kali中steghide命令工具教程 7z命令详解 kali中base64命令详解 例:解码文本里的base64编码 kali中steghide命令工具教程 根据此博客学习(12条消息) 隐写 ...
- linux中的shell有printf吗,Linux Shell系列教程之(八)Shell printf命令详解
在上一篇:Linux Shell系列教程之(七)Shell输出这篇文章中,已经对Shell printf命令有了一个简略的介绍,本篇给大家详细介绍下Shell中的printf命令. 一.Shell p ...
- linux sed p变量,Linux sed 命令详解系列教程之各种问题解决
本文目录: 1 sed中使用变量和变量替换的问题 2 反向引用失效问题 3 "-i"选项的文件保存问题 4 贪婪匹配问题 5 sed命令"a"和"N& ...
- Linux Shell脚本入门教程系列之(八)Shell printf命令详解
本文是Linux Shell脚本系列教程的第(八)篇,更多shell教程请看:Linux Shell脚本系列教程 在上一篇:Linux Shell系列教程之(七)Shell输出这篇文章中,已经对She ...
- GitHub使用教程详解(下)——Git的安装以及Git命令详解
上一篇GitHub使用教程详解(上)--官网操作指南[翻译],是针对官网的guide进行了翻译,其实个人来说,我是很不喜欢那么操作的,又要等待页面加载,操作又慢!程序员嘛,还是直接敲入命令代码更迅速高 ...
- DOS批处理高级教程(三) : 批处理变量和set命令详解
前言 这里主要是带着过一下相关的简单概念和用法, 是对于有一定的基础和编写脚本经验的同学而言, 那么一般下面的用法都是一眼看出作用和原理起到一个复习的作用.对于不熟悉的可以查询相关命令和百度即可. 第 ...
- redis的lrange_Redis LRANGE 命令-Redis LRANGE命令详解教程-Redis LRANGE使用案例-嗨客网
Redis LRANGE命令教程 下标参数 start 和 stop 都以 0 为底,也就是说,以 0 表示列表的第一个元素,以 1 表示列表的第二个元素,以此类推. 也可以使用负数下标,以 -1 表 ...
最新文章
- 基于YOLO的密集人脸检测(课程设计)
- pycryptodom的源码安装
- MySQL 系统架构 说明
- java的dispatcher_Java RequestDispatcher 详解
- laravel框架cookie应用到中间件的理解
- 大数据风控-反欺诈之黑卡与养卡
- Python: max和min函数的高级使用
- 5个php实例,细致说明传值与传引用的区别
- Java 类的特性2
- Chrome 实现前端页面自动刷新
- dds通信中间件_车内的中间件协议:是面向服务,还是以数据为中心,或是RESTful?...
- (十一)RabbitMQ消息队列-如何实现高可用
- IAR 软件的安装教程
- 昂达v891w可以用u盘linux,昂达V891W CH Windows10(TH2)系统镜像(适用于V1版本)下载...
- AR8035芯片手册 解析|CSDN创作打卡
- java 骰子游戏_Java编写掷骰子游戏
- qq服务器上的文件删除后如何恢复,QQ文件失效怎么恢复(过期的QQ文件如何申请恢复)...
- python变异系数_使用Python进行描述性统计
【目录】
1 描述性统计是什么?
2 使用NumPy和SciPy进行数 ......
- ubuntu18.04声音dummy output的问题
- Convolution over Hierarchical Syntactic and Lexical Graphs for Aspect Level Sentiment Analysis论文阅读