lammps输出MSD(均方根位移)详解及示例教程
[lammps第十五讲]lammps输出MSD(均方根位移)详解及示例教程
原创 一直陪着你的 LAMMPS交流站 2021-10-23 11:45
收录于话题
#lammps21个内容
#lammps后处理17个内容
大家好,前面小编讲解了一期RDF(径向分布函数)的详解及LAMMPS输出过程,就有很多小伙伴问到小编MSD的LAMMPS输出过程,所以本期小编本期介绍下MSD(均方根位移)的输出办法,小编就把自己学到的在这里跟大家分享,也算是小编学习过程中的一个笔记。
本教程也是小编自己整理,不足之处请各位指出,希望能给读者提供一定的帮助,同时希望专业前辈提出不足,小编会和大家共同学习。
01
MSD介绍
1.均方根位移
均方根位移计算材料的均方位移,当观测时间趋于无穷大时,MSD与极限观测时间成正比,MSD的定义的定义式如下:
式中,N是粒子数,t代表时间,r(t0+t)-r(t0)是给定粒子在一段时间内经过的矢量距离,<...>为平衡后的系综平均。
图 均方根位移(xyz三个方向及总的MSD)
02
官网用法
我们在lammps官网可以看到输出MSD的具体语法
compute ID group-ID msd keyword value ...
fix ID group-ID ave/time Nevery Nrepeat Nfreq value1 value2 ... keyword args ...
#com value = yes or no
#average value = yes or no
举例:
compute 1 all msd
compute 1 upper msd com yes average yes
在compute msd命令中,keyword为关键词。
在fix ave/time命令中,Nfreq必须是Nevery的整数倍,Nevery
必须是非零。用compute msd命令时,value1、value2 ... 为c_ID[1],c_ID[2],c_ID[3],c_ID[4],输出结果按列依次为序号,c_ID[1]、c_ID[2]、c_ID[3]为x、y、z方向上的MSD值,c_ID[4]为总的MSD值。
例如以下命令可用于输出每1000步的MSD值:
compute msd all rdf 200 2 6 #rdf
fix rdf all ave/time 1000 1 1000 c_rd1[1] c_rd1[2] c_rd1[3] file data.rdf mode scalar
03
代码示例
本文同样将之前做的一个案例CuNi合金熔化模拟的1550K-2500K升温过程的MSD输出,添加的代码为:
#输出MSD----------------------------------
compute msd all msd com yes #计算MSD
fix savemsd all ave/time 500 1 500 c_msd[1] c_msd[2] c_msd[3] c_msd[4] file msd.data mode scalar
完整in文件如下:
#lammps交流站案例
units metal
boundary p p patom_style atomicread_data melting.in.datlattice fcc 3.65
region box block -30 30 -5 5 -5 5
#create_box 1 box
#create_atoms mass 1 64.55
mass 2 58.69 pair_style eam/alloy
pair_coeff * * CuNi.lammps.eam Cu Niregion 1 block INF -0.01 -6 6 -6 6
group left region 1
region 2 block -0.01 INF -6 6 -6 6
group right region 2timestep 0.002
velocity all create 1550.0 4928459 dist gaussian
fix 1 all npt temp 1550 1550 0.1 iso 0 0 0.2dump melt all atom 10000 dump.dat
#dump melt all custom 1000 dump.atom.slow tag type xu yu zu vx vy vz sxx syy szz
restart 50000 restart.*thermo 100
run 4000#thermo_style custom step temp etotal pe press vol pxx pyy pzz pyz pxz pxyunfix 1
fix 1 right npt temp 1550 2500 0.1 x 0 0 0.2
#输出MSD
compute msd all msd com yes #计算MSD
fix savemsd all ave/time 500 1 500 c_msd[1] c_msd[2] c_msd[3] c_msd[4] file msd.data mode scalar
run 2000
unfix 1
fix 1 right npt temp 2500 1550 0.1 x 0 0 0.2run 44000unfix 1
fix 1 all nph iso 0.0 0.0 0.2
run 100000
最后,用记事本打开生成的msd.data文件,用里面的数据绘图,就可以得到如下的MSD曲线。
图 CuNi合金熔化过程均方根位移曲线
注意
1.文中所需的data文件及势文件已上传至QQ群-lammps交流站。
更多案例请关注lammps交流站
LAMMPS交流站
lammps输出MSD(均方根位移)详解及示例教程相关推荐
- lammps输出RDF(径向分布函数)详解及示例教程
原创 一直陪着你的 LAMMPS交流站 2021-10-18 11:40 收录于话题#lammps案例16个内容 大家好,小编最近的课题需要输出RDF(径向分布函数),小编就去lammps官网及网络查 ...
- Java 10 var关键字详解和示例教程
\ 关键要点 \\ Java 10引入了一个闪亮的新功能:局部变量类型推断.对于局部变量,现在可以使用特殊的保留类型名称"var"代替实际类型.\\t 提供这个特性是为了增强Jav ...
- linux输出文件没有找到,Linux环境下标准输入、输出、错误信息详解
Linux环境下标准输入.输出.错误信息详解 下面我们介绍在Linux环境下标准输入.输出.错误设备.标准输入设备代号为0, 用来显示输入信息,标准输出设备代号为1,用来显示正常信息,标准错误设备代号 ...
- 31.进程管理之进程概览,及ps命令详解,ps -ef,ps aux,ps -le,ps -l输出详解和示例
本小章讲解进程管理中的进程概览和作用,及ps命令详解,ps -ef,ps aux,ps -le,ps -l的输出详解和示例 文章目录 进程概览 什么是进程和程序 进程管理的作用 进程启动方式 僵尸进程 ...
- Java基础【之】输出一个菱形(详解)
Java基础[之]输出一个菱形(详解) 代码示例 <目录:Java渐进式学习> <目录:Java设计模式> <目录:从零手写Tomcat> 代码示例 public ...
- 运动控制器PSO位置同步输出(二):PSO模式详解
本节我们主要去讲解一下多种PSO模式原理和使用的讲解,用户可根据实际需求灵活选择触发模式. 一.硬件说明 硬件选型的首要要求是支持PSO功能,再分析PSO的应用场合和轴数等选择具体的型号.本例以ZMC ...
- java注解 源码_详解Java注解教程及自定义注解
详解Java注解教程及自定义注解 更新时间:2016-02-26 11:47:06 作者:佚名 我要评论(0) Java注解提供了关于代码的一些信息,但并不直接作用于它所注解的代码内容.在这个 ...
- MySQL隔离级别--未提交读,提交读,可重复读,序列化--详解(有示例)
原文网址:MySQL隔离级别--未提交读,提交读,可重复读,序列化--详解(有示例)_IT利刃出鞘的博客-CSDN博客 简介 本文介绍MySQL的事务隔离级别的含义,并用示例说明各个 ...
- yolov5——detect.py代码【注释、详解、使用教程】
yolov5--detect.py代码[注释.详解.使用教程] yolov5--detect.py代码[注释.详解.使用教程] 1. 函数parse_opt() 2. 函数main() 3. 函数ru ...
最新文章
- python any()和all()用法
- String比较.equals
- iactionresult 图片_从显式类型的ASP.NET Core API控制器(不是IActionResult)返回404
- macOS下安装dlib踩坑记录
- 细节优化提升资源利用率
- 【git】【eclipse】免密/SSH 方式连接免登录
- Android之在window下面开发常用的adb命令(不断更新)
- MySQL数据库安装Version5.7.25
- 开发环境很重要,需要学习如何自己搭建开发环境
- HDU4628+状态压缩DP
- [转]Using TRY...CATCH in Transact-SQL
- 这也许是你不曾留意过的 Mybatis 细节 1
- vscode终端中文乱码问题的解决方案合集c++
- python取余数函数_python中两数相除取余数怎么运算
- 网站浏览器可以打开,在微信中打不开,排查问题的过程
- 项目实训(十六)FPS游戏之PUN角色位移同步,动画状态同步
- 剥洋葱 习题10-8 递归实现顺序输出整数 (15分)
- Redis——Redis持久化
- STM32G0系列的启动配置与程序下载说明
- shell中vi的基本操作及Xshell 常用命令