multiple compute MSD during one run

Hi all,

to reduce the noise in output from compute msd I can either run multiple times and average or run one long simulation and compute msd in intervals and then average over multiple msd outputs.
say if I want to see the msd of atoms during 100 time steps, I can run a long simulation of 1000 steps and then compute msd at ts=0, 10, 20,…900. then I will have 101 msd outputs of 100 timesteps long. averaging over them would give me smoother average.

from doc page for msd I quote: “The displacement of an atom is from its original position at the time the compute command was issued.” so if I issue multiple compute msd commands in one run they will all start from t=0 and initial position thus the same output.

does anyone knows a work around to get multiple msd output from one simulation?

Best,

Hamed.

does anyone knows a work around to get multiple msd output from one simulation?

LAMMPS doesn’t do that. The reason is that if you ran a long simulation
and wanted to keep 500 time origins of atom positions, then each atom
in LAMMPS would have to carry around 500*3 stored values for its earlier
origins, which would take up memory and be communicated when the
atom moved to a new processor.

So you need to post-process a dump file if you want to do that.

Steve