LAMMPS-learn-2

  1. 初始模拟系统设置

初始模拟系统设置

LAMMPS提供的命令有很多,其中经常用于初始模拟系统设置的有3个,分别为

units,

boundary,

atom_style

还有一些比较不常用的(不常用的就是设置为默认值)有dimension,neighbor等。

对于units命令,手册的介绍为
units命令介绍1
units命令介绍2

简单来说,units命令是用来定义整个模拟系统中的单位的,举个例子:

units metal

使用这条命令,则计算中一切与时间挂钩的量都是以皮秒为单位;

units real

使用这条命令,则计算中一切与时间挂钩的量都是以飞秒为单位;

units命令使用不当可能不会导致模拟过程的正常运行,但是会导致后期数据处理需要进行繁杂的单位换算。所以计算前要思考清楚选取何种单位体系最合适。

对于boundary命令,手册的介绍为
boundary命令介绍
即boundary命令是用来定义边界条件的,LAMMPS提供了四种边界条件分别为:

p:周期性边界条件 (红色原子为钨原子,蓝色原子为氦原子)

boundary p p p (三个方向均为周期性边界条件)
效果示意图

f:非周期性边界条件,采用这种边界条件,当有原子运动到盒子以外的区域时,该原子便会被系统删除。需与

thermo_modify lost ignore 这条命令结合使用。

boundary p p f (只有z方向为f)
效果示意图

s:该方向的长度会随着原子的运动而改变(以保证不丢失原子)。

boundary p p s
效果示意图

m:该方向的大小会随着原子的运动而改变,但该方向长度有最小值。

boundary p p m
效果示意图

对于atom_style命令,手册的介绍为
atom_style命令介绍_1
atom_style命令介绍_2

atom_style 这个命令是用来告诉LAMMPS你模拟的体系中有些什么东西比如说原子,键角,电荷之类的,若模型中只有原子:

atom_style atomic
(一般金属体系就选这个即可)

若模型中还要考虑键角作用,则:

atom_style angle
(可能适合于水分子模型模拟)

对于neighbor命令,手册的介绍为
neighbor命令介绍

LAMMPS在计算各个粒子间作用力时,当两个原子的距离超过截断半径时,它们之间的作用将不被考虑。但是,分子动力学程序在运行时,如果每一步都要判断每个原子的截断半径内有哪些原子,所耗费的计算资源也会随之原子数的增加而指数级增加。为了并行加速计算,LAMMPS构建邻域列表节省原子之间距离的判断的时间。
示意图
这个命令一般可以不用设置,即保持默认值即可,体系较大时可以适当与neighbor_modify(定义邻域列表的更新频率)修改参数减少计算量(增大bin的值以及降低更新列表的频率。。)

至于dimension命令,这个很简单,定义模拟体系维度的,一般默认为3维(所以一般不用管),也可以设置为2维,有兴趣的可以看看手册~


转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 weig16@whu.edu.cn

×

喜欢就点赞,疼爱就打赏