大家好,我是小马老师。

在lammps扩散模拟中,大多需要计算MSD,今天分享一段MSD的代码:

compute 1 all msd com yes
variable msdx equal c_1[1]
variable msdy equal c_1[2]
variable msdz equal c_1[3]
variable msd equal c_1[4]
variable istep equal step
fix 2 all print 1 "${istep} ${msdx} ${msdy} ${msdz} ${msd}" screen no file msd.dat

第一行代码使用compute msd 命令对所有原子的均方位移进行计算。

计算完成后会产生4个结果,保存到数组c_1[]中。

其中,c_1[1]、c_1[2]、c_1[3]分别对应x、y、z三个方向的msd,c_1[4]为平均后的msd。

最后一行使用fix print命令把步数和4个msd保存到msd.dat文件中。

在需要计算msd的时候,直接把代码段插入到in文件中即可。


更多lammps教程,请关注微信公众号:

lammps加油站

lammps教程:均方位移MSD计算方法介绍_微信公众号