2009-12-22 01:27:08 +08:00
|
|
|
"LAMMPS WWW Site"_lws - "LAMMPS Documentation"_ld - "LAMMPS Commands"_lc :c
|
|
|
|
|
|
|
|
:link(lws,http://lammps.sandia.gov)
|
|
|
|
:link(ld,Manual.html)
|
|
|
|
:link(lc,Section_commands.html#comm)
|
|
|
|
|
|
|
|
:line
|
|
|
|
|
|
|
|
compute msd/molecule command :h3
|
|
|
|
|
|
|
|
[Syntax:]
|
|
|
|
|
|
|
|
compute ID group-ID msd/molecule :pre
|
|
|
|
|
|
|
|
ID, group-ID are documented in "compute"_compute.html command
|
|
|
|
msd/molecule = style name of this compute command :ul
|
|
|
|
|
|
|
|
[Examples:]
|
|
|
|
|
|
|
|
compute 1 all msd/molecule :pre
|
|
|
|
|
|
|
|
[Description:]
|
|
|
|
|
|
|
|
Define a computation that calculates the mean-squared displacement
|
|
|
|
(MSD) of individual molecules. The calculation includes all effects
|
|
|
|
due to atoms passing thru periodic boundaries.
|
|
|
|
|
|
|
|
Four quantites are calculated by this compute for each molecule. The
|
|
|
|
first 3 quantities are the squared dx,dy,dz displacements of the
|
|
|
|
center-of-mass. The 4th component is the total squared displacement,
|
|
|
|
i.e. (dx*dx + dy*dy + dz*dz) of the center-of-mass.
|
|
|
|
|
|
|
|
The slope of the mean-squared displacement (MSD) versus time is
|
|
|
|
proportional to the diffusion coefficient of the diffusing molecules.
|
|
|
|
|
|
|
|
The displacement of the center-of-mass of the molecule is from its
|
|
|
|
original center-of-mass position at the time the compute command was
|
|
|
|
issued.
|
|
|
|
|
|
|
|
The MSD for a particular molecule is only computed if one or more of
|
|
|
|
its atoms are in the specified group. Normally all atoms in the
|
|
|
|
molecule should be in the group, however this is not required. LAMMPS
|
|
|
|
will warn you if this is not the case. Only atoms in the group
|
|
|
|
contribute to the center-of-mass calculation for the molecule, which
|
|
|
|
is used to caculate its initial and current position.
|
|
|
|
|
2010-10-19 04:01:49 +08:00
|
|
|
The ordering of per-molecule quantities produced by this compute is
|
|
|
|
consistent with the ordering produced by other compute commands that
|
|
|
|
generate per-molecule datums. Conceptually, them molecule IDs will be
|
|
|
|
in ascending order for any molecule with one or more of its atoms in
|
|
|
|
the specified group.
|
2009-12-22 01:27:08 +08:00
|
|
|
|
|
|
|
IMPORTANT NOTE: The initial coordinates of each molecule are stored in
|
|
|
|
"unwrapped" form, by using the image flags associated with each atom.
|
|
|
|
See the "dump custom"_dump.html command for a discussion of
|
|
|
|
"unwrapped" coordinates. See the Atoms section of the
|
|
|
|
"read_data"_read_data.html 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 "set
|
|
|
|
image"_set.html command.
|
|
|
|
|
|
|
|
IMPORTANT NOTE: If an atom is part of a rigid body (see the "fix
|
|
|
|
rigid"_fix_rigid.html command), it's periodic image flags are altered,
|
|
|
|
and its contribution to the MSD may not reflect its true contribution.
|
|
|
|
See the "fix rigid"_fix_rigid.html command for details. Thus, to
|
|
|
|
compute the MSD of rigid bodies as they cross periodic boundaries, you
|
|
|
|
will need to post-process a "dump file"_dump.html containing
|
|
|
|
coordinates of the atoms in the bodies.
|
|
|
|
|
|
|
|
IMPORTANT NOTE: Unlike the "compute msd"_compute_msd.html command,
|
|
|
|
this compute does not store the initial center-of-mass coorindates of
|
|
|
|
its molecules in a restart file. Thus you cannot continue the MSD per
|
2009-12-22 01:34:52 +08:00
|
|
|
molecule calculation of this compute when running from a "restart
|
2009-12-22 01:27:08 +08:00
|
|
|
file"_read_restart.html.
|
|
|
|
|
|
|
|
[Output info:]
|
|
|
|
|
2009-12-22 01:34:52 +08:00
|
|
|
This compute calculates a global array where the number of rows =
|
2009-12-22 01:27:08 +08:00
|
|
|
Nmolecules and the number of columns = 4 for dx,dy,dz and the total
|
|
|
|
displacement. These values can be accessed by any command that uses
|
|
|
|
global array values from a compute as input. See "this
|
|
|
|
section"_Section_howto.html#4_15 for an overview of LAMMPS output
|
|
|
|
options.
|
|
|
|
|
2010-03-03 05:51:16 +08:00
|
|
|
The array values are "intensive". The array values will be in
|
|
|
|
distance^2 "units"_units.html.
|
2010-01-24 07:20:05 +08:00
|
|
|
|
2009-12-22 01:27:08 +08:00
|
|
|
[Restrictions:] none
|
|
|
|
|
|
|
|
[Related commands:]
|
|
|
|
|
|
|
|
"compute msd"_compute_msd.html
|
|
|
|
|
|
|
|
[Default:] none
|