forked from lijiext/lammps
111 lines
4.1 KiB
Plaintext
111 lines
4.1 KiB
Plaintext
"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 gyration/chunk command :h3
|
|
|
|
[Syntax:]
|
|
|
|
compute ID group-ID gyration/chunk chunkID keyword value ... :pre
|
|
|
|
ID, group-ID are documented in "compute"_compute.html command :ulb,l
|
|
gyration/chunk = style name of this compute command :l
|
|
chunkID = ID of "compute chunk/atom"_compute_chunk_atom.html command :l
|
|
zero or more keyword/value pairs may be appended :l
|
|
keyword = {tensor} :l
|
|
{tensor} value = none :pre
|
|
:ule
|
|
|
|
[Examples:]
|
|
|
|
compute 1 molecule gyration/chunk molchunk
|
|
compute 2 molecule gyration/chunk molchunk tensor :pre
|
|
|
|
[Description:]
|
|
|
|
Define a computation that calculates the radius of gyration Rg for
|
|
multiple chunks of atoms.
|
|
|
|
In LAMMPS, chunks are collections of atoms defined by a "compute
|
|
chunk/atom"_compute_chunk_atom.html command, which assigns each atom
|
|
to a single chunk (or no chunk). The ID for this command is specified
|
|
as chunkID. For example, a single chunk could be the atoms in a
|
|
molecule or atoms in a spatial bin. See the "compute
|
|
chunk/atom"_compute_chunk_atom.html doc page and ""Section_howto
|
|
23"_Section_howto.html#howto_23 for details of how chunks can be
|
|
defined and examples of how they can be used to measure properties of
|
|
a system.
|
|
|
|
This compute calculates the radius of gyration Rg for each chunk,
|
|
which includes all effects due to atoms passing thru periodic
|
|
boundaries.
|
|
|
|
Rg is a measure of the size of a chunk, and is computed by this
|
|
formula
|
|
|
|
:c,image(Eqs/compute_gyration.jpg)
|
|
|
|
where M is the total mass of the chunk, Rcm is the center-of-mass
|
|
position of the chunk, and the sum is over all atoms in the
|
|
chunk.
|
|
|
|
Note that only atoms in the specified group contribute to the
|
|
calculation. The "compute chunk/atom"_compute_chunk_atom.html command
|
|
defines its own group; atoms will have a chunk ID = 0 if they are not
|
|
in that group, signifying they are not assigned to a chunk, and will
|
|
thus also not contribute to this calculation. You can specify the
|
|
"all" group for this command if you simply want to include atoms with
|
|
non-zero chunk IDs.
|
|
|
|
If the {tensor} keyword is specified, then the scalar Rg value is not
|
|
calculated, but an Rg tensor is instead calculated for each chunk.
|
|
The formula for the components of the tensor is the same as the above
|
|
formula, except that (Ri - Rcm)^2 is replaced by (Rix - Rcmx) * (Riy -
|
|
Rcmy) for the xy component, etc. The 6 components of the tensor are
|
|
ordered xx, yy, zz, xy, xz, yz.
|
|
|
|
NOTE: The coordinates of an atom contribute to Rg 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.
|
|
|
|
The simplest way to output the results of the compute gyration/chunk
|
|
calculation to a file is to use the "fix ave/time"_fix_ave_time.html
|
|
command, for example:
|
|
|
|
compute cc1 all chunk/atom molecule
|
|
compute myChunk all gyration/chunk cc1
|
|
fix 1 all ave/time 100 1 100 c_myChunk file tmp.out mode vector :pre
|
|
|
|
[Output info:]
|
|
|
|
This compute calculates a global vector if the {tensor} keyword is not
|
|
specified and a global array if it is. The length of the vector or
|
|
number of rows in the array = the number of chunks {Nchunk} as
|
|
calculated by the specified "compute
|
|
chunk/atom"_compute_chunk_atom.html command. If the {tensor} keyword
|
|
is specified, the global array has 6 columns. The vector or array can
|
|
be accessed by any command that uses global values from a compute as
|
|
input. See "this section"_Section_howto.html#howto_15 for an overview
|
|
of LAMMPS output options.
|
|
|
|
All the vector or array values calculated by this compute are
|
|
"intensive". The vector or array values will be in distance
|
|
"units"_units.html, since they are the square root of values
|
|
represented by the formula above.
|
|
|
|
[Restrictions:] none
|
|
|
|
[Related commands:] none
|
|
|
|
"compute gyration"_compute_gyration.html
|
|
|
|
[Default:] none
|