lammps的rerun命令使用——通过读取已跑完的轨迹文件,补充新的或者漏算的计算(rdf、msd、能量、力等),无需重跑计算

一、参考资料:

1. lammps已跑完,不想重跑,如何补充新的计算 (来自小马老师,https://mp.weixin.qq.com/s/pDWaxcdq75hmMOdbG9hSNQ )

2.lammps通过rerun进行rdf分析,来自: https://zhuanlan.zhihu.com/p/524055663

3.lammps官网:https://docs.lammps.org/rerun.html

 

二、自己的算例

当lammps计算完后,我们发现遇到如下问题时:

(1)有些性质没有计算如rdf,MSD等

(2)想改变力场参数,进行能量,力计算。

可以通过rerun命令读取dump文件中原子的位置,进行rdf、MSD分析,能量计算,这样就不需要再重新进行计算了。

 

1.初始run.in(没有计算rdf、msd等)

 

2.基于初始run的轨迹文件01run.lammpstrj 的基础上补充想要计算和输出的内容,如rdf、msd、能量、力等,把最后一行的run语句改成rerun语句。建议写x y z vx vy vz,读入轨迹文件中原子的位置和速度。

 

#dump 2 all xyz ${interval} ${filename1}.xyz     #输出xyz格式的轨迹文件
#dump_modify 2 element  C H C C O C C O C O H H N

rerun 09epoxy-eq.lammpstrj   dump   x y z xv vy  vz 

 

3.完整的rerun.in文件

 

三、当前存在问题

通过对比了初始run和rerun的out文件,发现有以下问题:

1.其他能量和温度项十分接近,但是Press有所区别?

2.出现WARNING: Inconsistent image flags (../domain.cpp:780)。

3.RDF、能量等的计算结果没有问题,但是msd的计算有较大差别,具体原因还需要进一步分析。

 

 

posted @ 2023-04-19 11:38  一棵开花的树sysu  阅读(4024)  评论(2编辑  收藏  举报