A MATLAB program to calculate translational and rotational diffusion coefficients of a single particle

Mohammad A. Charsooghi, Ehsan A. Akhlaghi, Sharareh Tavaddod, H. R. Khalesifard

Research output: Contribution to journalArticlepeer-review


We developed a graphical user interface, MATLAB based program to calculate the translational diffusion coefficients in three dimensions for a single diffusing particle, suspended inside a fluid. When the particles are not spherical, in addition to their translational motion also a rotational freedom is considered for them and in addition to the previous translational diffusion coefficients a planar rotational diffusion coefficient can be calculated in this program. Time averaging and ensemble averaging over the particle displacements are taken to calculate the mean square displacement variations in time and so the diffusion coefficients. To monitor the random motion of non-spherical particles a reference frame is used that the particle just have translational motion in it. We call it the body frame that is just like the particle rotates about the z-axis of the lab frame.

Some statistical analysis, such as velocity autocorrelation function and histogram of displacements for the particle either in the lab or body frames, are available in the program. Program also calculates theoretical values of the diffusion coefficients for particles of some basic geometrical shapes; sphere, spheroid and cylinder, when other diffusion parameters like temperature and fluid viscosity coefficient can be adjusted.
Original languageEnglish
Pages (from-to)400-408
Number of pages9
JournalComputer Physics Communications
Issue number2
Early online date29 Sep 2010
Publication statusPublished - 1 Feb 2011


Dive into the research topics of 'A MATLAB program to calculate translational and rotational diffusion coefficients of a single particle'. Together they form a unique fingerprint.

Cite this