.. index:: compute msd compute msd command =================== Syntax """""" .. parsed-literal:: compute ID group-ID msd general_keyword general_values keyword values ... * ID, group-ID are documented in :doc:`compute ` command * msd = style name of this compute command * general_keywords general_values are documented in `compute `_ * zero or more keyword/value pairs may be appended * keyword = *com* .. parsed-literal:: *com* value = *yes* or *no* Examples """""""" .. parsed-literal:: compute 1 all msd compute 1 upper msd com yes Description """"""""""" Define a computation that calculates the mean-squared displacement (MSD) of the group of atoms, including all effects due to atoms passing thru periodic boundaries. For computation of the non-Gaussian parameter of mean-squared displacement, see the :doc:`compute msd/nongauss ` command. A vector of four quantites is calculated by this compute. The first 3 elements of the vector are the squared dx,dy,dz displacements, summed and averaged over atoms in the group. The 4th element is the total squared displacement, i.e. (dx*dx + dy*dy + dz*dz), summed and averaged over atoms in the group. The slope of the mean-squared displacement (MSD) versus time is proportional to the diffusion coefficient of the diffusing atoms. The displacement of an atom is from its original position at the time the compute command was issued. The value of the displacement will be 0.0 for atoms not in the specified compute group. If the *com* option is set to *yes* then the effect of any drift in the center-of-mass of the group of atoms is subtracted out before the displacment of each atom is calcluated. .. warning:: Initial coordinates are stored in "unwrapped" form, by using the image flags associated with each atom. See the :doc:`dump custom ` command for a discussion of "unwrapped" coordinates. See the Atoms section of the :doc:`read_data ` command for a discussion of image flags and how they are set for each atom. You can reset the image flags (e.g. to 0) before invoking this compute by using the :doc:`set image ` command. .. warning:: If an atom is part of a rigid body (see the :doc:`fix rigid ` command), it's periodic image flags are altered, and its contribution to the MSD may not reflect its true contribution. See the :doc:`fix rigid ` command for details. Thus, to compute the MSD of rigid bodies as they cross periodic boundaries, you will need to post-process a :doc:`dump file ` containing coordinates of the atoms in the bodies. .. warning:: If you want the quantities calculated by this compute to be continuous when running from a :doc:`restart file `, then you should use the same ID for this compute, as in the original run. This is so that the created fix will also have the same ID, and thus be initialized correctly with atom coordinates from the restart file. Output info """"""""""" This compute calculates a global vector of length 4, which can be accessed by indices 1-4 by any command that uses global vector values from a compute as input. See :ref:`this section ` for an overview of LIGGGHTS(R)-PUBLIC output options. The vector values are "intensive". The vector values will be in distance^2 :doc:`units `. Restrictions """""""""""" none Related commands """""""""""""""" :doc:`compute msd/nongauss `, :doc:`compute displace_atom `, :doc:`fix store/state `, :doc:`compute msd/molecule ` Default """"""" The option default is com = no. .. _liws: http://www.cfdem.com .. _ld: Manual.html .. _lc: Section_commands.html#comm