CLUSTER_DISTRIBUTION
This is part of the clusters module
It is only available if you configure PLUMED with ./configure –enable-modules=clusters . Furthermore, this feature is still being developed so take care when using it and report any problems on the mailing list.

Calculate functions of the distribution of properties in your connected components.

This collective variable was developed for looking at nucleation phenomena, where you are interested in using studying the behavior of atoms in small aggregates or nuclei. In these sorts of problems you might be interested in the distribution of the sizes of the clusters in your system. A detailed description of this CV can be found in [107].

Examples

The input provided below calculates the local q6 Steinhardt parameter on each atom. The coordination number that atoms with a high value for the local q6 Steinhardt parameter have with other atoms that have a high value for the local q6 Steinhardt parameter is then computed. A contact matrix is then computed that measures whether atoms atoms \(i\) and \(j\) have a high value for this coordination number and if they are within 3.6 nm of each other. The connected components of this matrix are then found using a depth first clustering algorithm on the corresponding graph. The number of components in this graph that contain more than 27 atoms is then computed. As discussed in [107] an input similar to this one was used to analyze the formation of a polycrystal of GeTe from amorphous GeTe.

Click on the labels of the actions for more information on what each action computes
tested on master
q6: Q6 
SPECIES
this keyword is used for colvars such as coordination number.
=1-300
SWITCH
the switching function that it used in the construction of the contact matrix
={GAUSSIAN D_0=5.29 R_0=0.01 D_MAX=5.3}
LOWMEM
( default=off ) this flag does nothing and is present only to ensure back-compatibility
lq6: LOCAL_Q6
SPECIES
=q6
SWITCH
This keyword is used if you want to employ an alternative to the continuous swiching function defined above.
={GAUSSIAN D_0=5.29 R_0=0.01 D_MAX=5.3}
LOWMEM
( default=off ) this flag does nothing and is present only to ensure back-compatibility
flq6: MFILTER_MORE
DATA
compulsory keyword the vector you wish to transform
=lq6
SWITCH
compulsory keyword the switching function that transform
={GAUSSIAN D_0=0.19 R_0=0.01 D_MAX=0.2} cc: COORDINATIONNUMBER
SPECIES
this keyword is used for colvars such as coordination number.
=flq6
SWITCH
the switching function that it used in the construction of the contact matrix
={GAUSSIAN D_0=3.59 R_0=0.01 D_MAX=3.6} fcc: MFILTER_MORE
DATA
compulsory keyword the vector you wish to transform
=cc
SWITCH
compulsory keyword the switching function that transform
={GAUSSIAN D_0=5.99 R_0=0.01 D_MAX=6.0} mat: CONTACT_MATRIX
ATOMS
the atoms for which you would like to calculate the adjacency matrix.
=fcc
SWITCH
specify the switching function to use between two sets of indistinguishable atoms.
={GAUSSIAN D_0=3.59 R_0=0.01 D_MAX=3.6} dfs: DFSCLUSTERING
MATRIX
the input matrix (can use ARG instead)
=mat nclust: CLUSTER_DISTRIBUTION
CLUSTERS
compulsory keyword the label of the action that does the clustering
=dfs
TRANSFORM
could not find this keyword
={GAUSSIAN D_0=5.99 R_0=0.01 D_MAX=6.0}
MORE_THAN
calculate the number of variables that are more than a certain target value.
={GAUSSIAN D_0=26.99 R_0=0.01 D_MAX=27} PRINT
ARG
compulsory keyword the labels of the values that you would like to print to the file
=nclust.*
FILE
the name of the file on which to output these quantities
=colvar
Glossary of keywords and components
Description of components
Quantity Keyword Description
lessthan LESS_THAN the number of colvars that have a value less than a threshold
morethan MORE_THAN the number of colvars that have a value more than a threshold
altmin ALT_MIN the minimum value of the cv
min MIN the minimum colvar
max MAX the maximum colvar
between BETWEEN the number of colvars that have a value that lies in a particular interval
highest HIGHEST the largest of the colvars
lowest LOWEST the smallest of the colvars
sum SUM the sum of the colvars
mean MEAN the mean of the colvars
Compulsory keywords
CLUSTERS the label of the action that does the clustering
Options
HIGHEST ( default=off ) this flag allows you to recover the highest of these variables.
LOWEST ( default=off ) this flag allows you to recover the lowest of these variables.
SUM ( default=off ) calculate the sum of all the quantities.
MEAN

( default=off ) calculate the mean of all the quantities.

WEIGHTS use the vector of values calculated by this action as weights rather than giving each atom a unit weight
LESS_THAN calculate the number of variables that are less than a certain target value. This quantity is calculated using \(\sum_i \sigma(s_i)\), where \(\sigma(s)\) is a switchingfunction.. You can use multiple instances of this keyword i.e. LESS_THAN1, LESS_THAN2, LESS_THAN3...
MORE_THAN calculate the number of variables that are more than a certain target value. This quantity is calculated using \(\sum_i 1 - \sigma(s_i)\), where \(\sigma(s)\) is a switchingfunction.. You can use multiple instances of this keyword i.e. MORE_THAN1, MORE_THAN2, MORE_THAN3...
ALT_MIN calculate the minimum value. To make this quantity continuous the minimum is calculated using \( \textrm{min} = -\frac{1}{\beta} \log \sum_i \exp\left( -\beta s_i \right) \) The value of \(\beta\) in this function is specified using (BETA= \(\beta\)).
MIN calculate the minimum value. To make this quantity continuous the minimum is calculated using \( \textrm{min} = \frac{\beta}{ \log \sum_i \exp\left( \frac{\beta}{s_i} \right) } \) The value of \(\beta\) in this function is specified using (BETA= \(\beta\))
MAX calculate the maximum value. To make this quantity continuous the maximum is calculated using \( \textrm{max} = \beta \log \sum_i \exp\left( \frac{s_i}{\beta}\right) \) The value of \(\beta\) in this function is specified using (BETA= \(\beta\))
BETWEEN calculate the number of values that are within a certain range. These quantities are calculated using kernel density estimation as described on histogrambead.. You can use multiple instances of this keyword i.e. BETWEEN1, BETWEEN2, BETWEEN3...
HISTOGRAM calculate a discretized histogram of the distribution of values. This shortcut allows you to calculates NBIN quantites like BETWEEN.