"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 property/atom command :h3

[Syntax:]

compute ID group-ID property/atom input1 input2 ... :pre

ID, group-ID are documented in "compute"_compute.html command :ulb,l
property/atom = style name of this compute command :l
input = one or more atom attributes :l
  possible attributes = id, mol, type, mass,
 	                x, y, z, xs, ys, zs, xu, yu, zu, ix, iy, iz,
		        vx, vy, vz, fx, fy, fz,
                        q, mux, muy, muz, mu,
                        radius, diameter, omegax, omegay, omegaz,
			angmomx, angmomy, angmomz,
			shapex,shapey, shapez,
		        quatw, quati, quatj, quatk, tqx, tqy, tqz,
			spin, eradius, ervel, erforce
			end1x, end1y, end1z, end2x, end2y, end2z,
			corner1x, corner1y, corner1z,
			corner2x, corner2y, corner2z,
			corner3x, corner3y, corner3z :pre
      id = atom ID
      mol = molecule ID
      type = atom type
      mass = atom mass
      x,y,z = unscaled atom coordinates
      xs,ys,zs = scaled atom coordinates
      xu,yu,zu = unwrapped atom coordinates
      ix,iy,iz = box image that the atom is in
      vx,vy,vz = atom velocities
      fx,fy,fz = forces on atoms
      q = atom charge
      mux,muy,muz = orientation of dipole moment of atom
      mu = magnitude of dipole moment of atom
      radius,diameter = radius,diameter of spherical particle
      omegax,omegay,omegaz = angular velocity of extended particle
      angmomx,angmomy,angmomz = angular momentum of extended particle
      shapex,shapey,shapez = 3 diameters of aspherical particle
      quatw,quati,quatj,quatk = quaternion components for aspherical particles
      tqx,tqy,tqz = torque on extended particles
      spin = electron spin
      eradius = electron radius
      ervel = electron radial velocity
      erforce = electron radial force
      end12x, end12y, end12z = end points of line segment
      coner123x, corner123y, corner123z = corner points of triangle :pre
:ule

[Examples:]

compute 1 all property/atom xs vx fx mux 
compute 2 all property/atom type
compute 1 all property/atom ix iy iz :pre

[Description:]

Define a computation that simply stores atom attributes for each atom
in the group.  This is useful so that the values can be used by other
"output commands"_Section_howto.html#howto_15 that take computes as
inputs.  See for example, the "compute reduce"_compute_reduce.html,
"fix ave/atom"_fix_ave_atom.html, "fix ave/histo"_fix_ave_histo.html,
"fix ave/spatial"_fix_ave_spatial.html, and "atom-style
variable"_variable.html commands.

The list of possible attributes is the same as that used by the "dump
custom"_dump.html command, which describes their meaning, with some
additional quantities that are only defined for certain "atom
styles"_atom_style.html.  Basically, this list gives your input script
access to any per-atom quantity stored by LAMMPS.

The values are stored in a per-atom vector or array as discussed
below.  Zeroes are stored for atoms not in the specified group or for
quantities that are not defined for a particular particle in the group
(e.g. {shapex} if the particle is not an ellipsoid).

The additional quantities only accessible via this command, and not
directly via the "dump custom"_dump.html command, are as follows.

{Shapex}, {shapey}, and {shapez} are defined for ellipsoidal particles
and define the 3d shape of each particle.  {Quatw}, {quati}, {quatj},
and {quatk} are also defined for ellipsoidal particles and store the
4-vector quaternion representing the orientation of each particle.
See the "set"_set.html command for an explanation of the quaternion
vector.

{End1x}, {end1y}, {end1z}, {end2x}, {end2y}, {end2z}, are defined for
line segment particles and define the end points of each line segment.

{Corner1x}, {corner1y}, {corner1z}, {corner2x}, {corner2y},
{corner2z}, {corner3x}, {corner3y}, {corner3z}, are defined for
triangular particles and define the corner points of each triangle.

[Output info:]

This compute calculates a per-atom vector or per-atom array depending
on the number of input values.  If a single input is specified, a
per-atom vector is produced.  If two or more inputs are specified, a
per-atom array is produced where the number of columns = the number of
inputs.  The vector or array can be accessed by any command that uses
per-atom values from a compute as input.  See "this
section"_Section_howto.html#howto_15 for an overview of LAMMPS output
options.

The vector or array values will be in whatever "units"_units.html the
corresponding attribute is in, e.g. velocity units for vx, charge
units for q, etc.

[Restrictions:] none

[Related commands:]

"dump custom"_dump.html, "compute reduce"_compute_reduce.html, "fix
ave/atom"_fix_ave_atom.html, "fix ave/spatial"_fix_ave_spatial.html

[Default:] none
