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的计算有较大差别,具体原因还需要进一步分析。