git-svn-id: svn://svn.icms.temple.edu/lammps-ro/trunk@16053 f3b2605a-c512-4ea7-a41b...
[lammps.git] / doc / src / compute_temp_com.txt
blobc7cc5ec4e280db434892260b9b2d7d045515d765
1 "LAMMPS WWW Site"_lws - "LAMMPS Documentation"_ld - "LAMMPS Commands"_lc :c
3 :link(lws,http://lammps.sandia.gov)
4 :link(ld,Manual.html)
5 :link(lc,Section_commands.html#comm)
7 :line
9 compute temp/com command :h3
11 [Syntax:]
13 compute ID group-ID temp/com :pre
15 ID, group-ID are documented in "compute"_compute.html command
16 temp/com = style name of this compute command :ul
18 [Examples:]
20 compute 1 all temp/com
21 compute myTemp mobile temp/com :pre
23 [Description:]
25 Define a computation that calculates the temperature of a group of
26 atoms, after subtracting out the center-of-mass velocity of the group.
27 This is useful if the group is expected to have a non-zero net
28 velocity for some reason.  A compute of this style can be used by any
29 command that computes a temperature,
30 e.g. "thermo_modify"_thermo_modify.html, "fix
31 temp/rescale"_fix_temp_rescale.html, "fix npt"_fix_nh.html, etc.
33 After the center-of-mass velocity has been subtracted from each atom,
34 the temperature is calculated by the formula KE = dim/2 N k T, where
35 KE = total kinetic energy of the group of atoms (sum of 1/2 m v^2),
36 dim = 2 or 3 = dimensionality of the simulation, N = number of atoms
37 in the group, k = Boltzmann constant, and T = temperature.
39 A kinetic energy tensor, stored as a 6-element vector, is also
40 calculated by this compute for use in the computation of a pressure
41 tensor.  The formula for the components of the tensor is the same as
42 the above formula, except that v^2 is replaced by vx*vy for the xy
43 component, etc.  The 6 components of the vector are ordered xx, yy,
44 zz, xy, xz, yz.
46 The number of atoms contributing to the temperature is assumed to be
47 constant for the duration of the run; use the {dynamic} option of the
48 "compute_modify"_compute_modify.html command if this is not the case.
50 The removal of the center-of-mass velocity by this fix is essentially
51 computing the temperature after a "bias" has been removed from the
52 velocity of the atoms.  If this compute is used with a fix command
53 that performs thermostatting then this bias will be subtracted from
54 each atom, thermostatting of the remaining thermal velocity will be
55 performed, and the bias will be added back in.  Thermostatting fixes
56 that work in this way include "fix nvt"_fix_nh.html, "fix
57 temp/rescale"_fix_temp_rescale.html, "fix
58 temp/berendsen"_fix_temp_berendsen.html, and "fix
59 langevin"_fix_langevin.html.
61 This compute subtracts out degrees-of-freedom due to fixes that
62 constrain molecular motion, such as "fix shake"_fix_shake.html and
63 "fix rigid"_fix_rigid.html.  This means the temperature of groups of
64 atoms that include these constraints will be computed correctly.  If
65 needed, the subtracted degrees-of-freedom can be altered using the
66 {extra} option of the "compute_modify"_compute_modify.html command.
68 See "this howto section"_Section_howto.html#howto_16 of the manual for
69 a discussion of different ways to compute temperature and perform
70 thermostatting.
72 [Output info:]
74 This compute calculates a global scalar (the temperature) and a global
75 vector of length 6 (KE tensor), which can be accessed by indices 1-6.
76 These values can be used by any command that uses global scalar or
77 vector values from a compute as input.  See "this
78 section"_Section_howto.html#howto_15 for an overview of LAMMPS output
79 options.
81 The scalar value calculated by this compute is "intensive".  The
82 vector values are "extensive".
84 The scalar value will be in temperature "units"_units.html.  The
85 vector values will be in energy "units"_units.html.
87 [Restrictions:] none
89 [Related commands:]
91 "compute temp"_compute_temp.html
93 [Default:] none