# The compute keyword

## Purpose

This keyword is used to compute and output space and time averaged quantities.

## Grammar

• It is used in the following way:
   compute grouping_method sample_interval output_interval quantity_1 quantity_2 ...

• The first parameter grouping_method refers to the grouping method defined in xyz.in. This parameter should be an integer (currently only 0, 1, or 2) and a number $m$ means the $m$-th grouping method (we count starting from 0) in xyz.in.
• The second parameter sample_interval means sampling the quantities every so many time steps.
• The third parameter output_interval means averaging over so many sampled data before giving one output.
• Starting from the fourth parameter, one can list the quantities to be computed.
• The allowed names for the quantities are:
• temperature, which is the temperature
• potential, which is the potential energy
• force, which is the force vector
• virial, which is the diagonal part of the virial
• jp, which is the potential part of the heat current vector
• jk, which is the kinetic part of the heat current vector
• One can write one or more (distinct) names in any order.

## Examples

### Example 1

For example,

   compute 0 100 10 temperature


means using the 0-th grouping method defined in xyz.in, sampling temperature every 100 time steps and averaging over 10 data points before making an output. That is, there is only one output every $100 \times 10=1000$ time steps.