[lammps-users] msd command

Hi,

i’m running a NVT MD run and will like to compute the MSD at different Temperatures.

To do this, i’m using the following command for a temperature T=t1

fix msd1 circle1 msd 1000 c1-nvt-t1.dat

And for the next T, T=t2, i use a similar command

fix msd1 circle1 msd 1000 c1-nvt-t2.dat

In analyzing the .dat files, i notice that the initial msd for c1-nvt-t1.dat starts at 0.0;
the initial msd for c1-nvt-t2.dat starts at a number larger than 0.0.

In looking for a reason as to why the msd for c1-nvt-t2.dat does not start at 0.0,
i notice in the manual of lammps the following:

“The displacement of an atom is from its original position at the time the fix command was issued”

I assume then that lammps is calculating the msd for T=t2 with respect to the original position
taking from t1 (which i don’t understand very well, because the run are independents; that is, the fix
command is issued in two different script files that are run subsequently, as in

module load lammps
aprun -n 128 lmp_franklin -log nvt-t1.log < nvt-t1.i
aprun -n 128 lmp_franklin -log nvt-t2.log < nvt-t2.i

In any case, to solve the problem above, i have used a different id for the c2, i.e,

fix test circle1 msd 1000 c1-nvt-t2.dat

But i wonder, is there a better way to do this? I have many Ts i want to study.

Thanks
Regards
Miguel

If you want multiple MSD fixes to be active, you need to give
them different IDs. Or you can unfix the first one, then issue
a new fix with the same ID.

Steve