# How can I get self-diffusion coefficient from MSD (mean sqaure displacement)

I run some molecular dynamic simulations for polymer system (liquid), and I have data of MSD vs t(time). MSD-t relation looks linear proportional. Now, which one is the proper way to calculate the self diffusion coefficient?

1) D = MSD / 6t (for 3D system) and get the asymptotic value at large t.

2) Slope of normal plot of MSD-t

3) Slope of log-log plot of log(MSD)-log(t)

4) Slope of semi-log plot of MSD-log(t)

I searched for literature's but there are too many different methods, not sure what to choose here.

• multiple-choice? homework? – Karl Dec 20 '18 at 5:49
• In three dimensions, assumed to be isotropic, the equation is $\langle x^2\rangle=6Dt$ so the slope of the plot of $\langle x^2\rangle$ vs $t$ will give the diffusion coefficient. However, this may vary as time proceeds depending on just how well the average is calculated and of course on the system you are studying. – porphyrin Dec 20 '18 at 9:00
• I think when the slope of number 3 (log-log) is near or equal to 1, the result that you get by number 2 is more accurate, even you can use only a part of the number 2 plot that has a slope in a log-log manner near to 1. – user86150 Nov 21 '19 at 17:41

I would usually recommend the second option (fitting to the slope of the MSD at long times) over the first (dividing MSD by the time). If you compute $$\langle \Delta r^2(t)\rangle/6t$$, there is a residual effect of the velocity correlations at short time.
Suppose the velocity correlation function decays exponentially in time $$\langle \mathbf{v}(0)\cdot \mathbf{v}(t)\rangle = \langle |\mathbf{v}|^2\rangle \exp(-t/\tau) .$$ This is related to the diffusion coefficient by $$D= \frac{1}{3} \int_0^\infty \langle \mathbf{v}(0)\cdot \mathbf{v}(t)\rangle \, dt =\frac{1}{3}\langle |\mathbf{v}|^2\rangle\tau .$$ Since $$\Delta \mathbf{r}(t)=\mathbf{r}(t)-\mathbf{r}(0)=\int_0^t \mathbf{v}(t') \, dt',$$ it follows that $$\frac{d}{dt} \langle | \Delta \mathbf{r}(t)|^2 \rangle = 6D\, [1-\exp(-t/\tau)] ,$$ and this converges towards the correct answer, $$6D$$, exponentially fast in the time $$t$$. On the other hand $$\frac{1}{t} \langle | \Delta \mathbf{r}(t)|^2 \rangle = 6D\, \left[ 1 - \frac{\tau}{t} + \frac{\tau}{t}\exp(-t/\tau)\right] .$$ This converges more slowly, proportional to $$t^{-1}$$.
Looking at a log-log plot may be useful, as it may highlight changes between different regimes of behaviour (for example, at long times) that you would miss otherwise. This might be especially true of a polymer system like yours. But your option (3) "slope of log-log plot" does not give you the diffusion coefficient! It just gives you an idea of whether the behaviour is diffusive (slope $$=1$$) or not (slope $$\neq1$$). And option (4) "slope of semi-log plot" does not give you $$D$$ either.
• Divide the slope by $6$, assuming the MSD is the sum of the squares of all three $x,y,z$ mean squared displacements. The result should be quite close to the result you get by dividing the MSD by $6t$, but as my answer says, it has better convergence properties. – user64968 Dec 20 '18 at 22:42