在前面的推文中,介绍过lammps动态统计区域内原子数量、区域压力的方法。
本文介绍统计某一个区域内原子受力的方法。
group:原子组id dim:力的方向,可设置x、y、z region:区域id
对应的计算代码:
region mid block -20 20 -20 20 -20 20
variable fxx equal fcm(all,x,mid)
thermo_style custom step v_fxx
先设置中间区域mid,调用fcm()命令计算,最后用thermo命令输出结果。
全部in文件代码:
#气体粒子数量
variable npart equal 1000
#模拟基本参数设置
units lj
dimension 3
atom_style atomic
boundary p p p
neighbor 0.5 bin
neigh_modify every 1 delay 0 check yes
#三维box尺寸
region box block -60 60 -20 20 -20 20
#生成box
create_box 2 box
#随机产生100个气体原子
create_atoms 1 random ${npart} 324523 box
#设置摩尔质量1
mass * 1
#力场设置,soft势
pair_style soft 1.0
pair_coeff * * 10.0
#能量最小化
minimize 1e-4 1e-4 1000 1000
reset_timestep 0
#温度初始化
velocity all create 2.0 34234123 dist gaussian
#保存轨迹文件
dump img all atom 100 gas2.xyz
#热力学输出
thermo_style custom step temp ke pe
thermo 100
#模拟步长
timestep 0.001
#设置nve系综
fix 1 all nve
region mid block -20 20 -20 20 -20 20
variable fxx equal fcm(all,x,mid)
thermo_style custom step v_fxx
run 1000
---------- End -----------
报名一对一培训课程可领完整版《lammps中文教程》,配套学习更轻松!
扫码领取粉丝专属优惠券↓↓↓