# The compute shc keyword

Jump to navigation
Jump to search

## Contents

## Purpose

- The
`compute_shc`

keyword is used to compute the non-equilibrium heat flux correlation function [math]K(t)[/math] for a group of atoms as defined in Eq. (18) of Ref. [1].

## Grammar

- This keyword can be used in three ways, requiring 3 or 4 or 5 parameters:

compute_shc sample_interval Nc transport_direction compute_shc group_id sample_interval Nc transport_direction compute_shc grouping_method group_id sample_interval Nc transport_direction

- If there are 3 parameters, it means that the SHC will be calculated for the whole system.
- If there are 4 parameters, it means that the SHC will be calculated for atoms in group
`group_id`

of grouping method 0. Here`group_id`

should [math]\geq 0[/math] and smaller than the number of groups in grouping method 0. Also, grouping method 0 must be defined in the xyz.in file. - If there are 5 parameters, it means that the SHC will be calculated for atoms in group
`group_id`

of grouping method`grouping_method`

. Here`group_id`

should [math]\geq 0[/math] and smaller than the number of groups in grouping method`grouping_method`

. Also, grouping method`grouping_method`

must be defined in the xyz.in file. - In all the three ways, there are three common parameters:
`sample_interval`

is the sampling interval between two correlation steps. This parameter must be an integer that is [math]\geq 1[/math] and [math]\leq 10[/math]. Trust me, values out of this range are bad.`Nc`

is the total number of correlation steps. This parameter must be an integer that is [math]\geq 100[/math] and [math]\leq 1000[/math]. Trust me, values out of this range are bad.`transport_direction`

is the direction of heat transport to be measured. It can only be 0, 1, and 2, corresponding to the x, y, and z directions, respectively.

## Examples

### Example 1

- The command

compute_shc 2 250 0

means that

- you want to calculate the SHC for the whole system;
- the sampling interval is 2;
- the maximum number of correlation steps is 250;
- the transport direction is [math]x[/math].

### Example 2

- The command

compute_shc 4 1 500 1

means that

- you want to calculate the SHC for atoms in group
`4`

defined in grouping method`0`

; - the sampling interval is 1 (sample the data at each time step);
- the maximum number of correlation steps is 500;
- the transport direction is [math]y[/math].

- you want to calculate the SHC for atoms in group

### Example 3

- The command

compute_shc 1 4 5 100 2

means that

- you want to calculate the SHC for atoms in group
`4`

defined in grouping method`1`

; - the sampling interval is 5;
- the maximum number of correlation steps is 100;
- the transport direction is [math]z[/math].

- you want to calculate the SHC for atoms in group

## Caveats

## Output file

## References

- [1] Zheyong Fan, Haikuan Dong, Ari Harju, and Tapio Ala-Nissila,
*Homogeneous nonequilibrium molecular dynamics method for heat transport and spectral decomposition with many-body potentials*, Phys. Rev. B**99**, 064308 (2019).