lammps统计原子个数 您所在的位置:网站首页 次近邻原子数 lammps统计原子个数

lammps统计原子个数

2024-06-30 20:46| 来源: 网络整理| 查看: 265

[lammps第十七讲]lammps统计原子个数

原创 一直陪着你的 LAMMPS交流站 2021-11-18 18:00

收录于话题

#lammps21个内容

#lammps后处理17个内容

图片

   大家好,之前一直有小伙伴想让小编出一期统计原子数量的教程,鉴于小编最近科研任务缠身,最近抽出一点时间来满足下小伙伴的愿望。

   不足之处请各位指出,希望能给读者提供一定的帮助,同时希望专业前辈提出不足,小编会和大家共同学习。

  

图片

01

官网用法

      小编也是向老师请教,知道了使用count命令来统计原子个数,让我们先看看在lammps官网中,当然,直接去找count命令的小伙伴你会发现,根本找不到count命令。

      这时,你就需要去找variable命令了,在lammps官网中,variable命令的具体用法:

variable name style args ... name就是变量的名称,style = delete or index or loop or world or universe or uloop or string or format or getenv or file or atomfile or python or internal or equal or vector or atom,我们最常用的就是 equal  了,也就是等于的意思了,使用 equal  时,语法为:    variable name equal () 也就是将()的值赋给name.   count的用法为count(group)或count(group,region) 所以,统计原子个数的语句为: variable N equal count(group_ID,region_ID) ##或 variable N equal count(group_ID)

02

示例教程

下面将统计易挥发元素一段模拟时间后剩余的原子个数。

完整in文件如下:

# lammps交流站统计原子数量示例教程 #------------------start------------------- #模型基本参数 units metal boundary f f f #固定边界条件 atom_style atomic #生成方形区域 region box block -20 20 -20 20 -20 20 #创建方形区域 create_box 1 box #生成盒子,1种原子 #创建球形区域 region Pb sphere 0 0 0 20 units box #在内核内填充Bi原子 lattice sc 3.23 #Pb晶格常数3.27 create_atoms 1 region Pb #------------------------------------------ #设置原子质量 mass 1 207 #Pb原子质量 #------------------------------------------ #分组 group Pb region Pb #------------------------------------------ #固定墙 fix xwalls all wall/reflect xlo EDGE xhi EDGE fix ywalls all wall/reflect ylo EDGE yhi EDGE fix zwalls all wall/reflect zlo EDGE #------------------------------------------ #统计Pb原子个数 variable N equal count(Pb,box) #------------------------------------------ #热力学信息输出 timestep 0.001 #时间步长 thermo 500 #100步输出一次 thermo_style custom step v_N #输出类型:步长,原子个数 thermo_modify lost ignore flush yes #------------------------------------------ #近邻信息 neighbor 1.0 bin #近邻原子距离 neigh_modify every 1 delay 0 check yes #------------------------------------------ #设置势函数 pair_style lj/cut 10.0 #lj势/截断半径 pair_coeff * * 0.02246 3.8932 #epsilon:ev sigma:A #------------------------------------------ #温度初始化 velocity all create 300 898955 dist gaussian #原子速度调控温度 #------------------------------------------ #1能量最小化 dump 1 all atom 5 1min.xyz #能量最小化输出文件 min_style cg minimize 1e-15 1e-15 5000 5000 undump 1 reset_timestep 0 #------------------------------------------ #2nvt系综升温温熔化 dump 2 all atom 100 2nvt_hot.xyz #升温过程输出文件 fix 2 all nvt temp 300 2000 0.1 #nvt升温:300-2000 #------------------------------------------ run 100000 #升温步长 #---------------lammps交流站---------------- #------------------end---------------------

03

运行结果

  在cmd窗口运行in文件,在log文件中,根据自定义输出的步长及原子个数,可以看到,lammps已经将所统计的原子个数显示在log文件中:

   在cmd窗口运行in文件,Pb蒸发过程如下:

图片

将统计的原子数量作图可得到如下的原子数量变化曲线:

图片

注意

1.文中所需的data文件及势文件已上传至QQ群-lammps交流站。

更多案例代码,请关注公众号 LAMMPS交流站



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有