It is only available if you configure PLUMED with ./configure –enable-modules=symfunc . Furthermore, this feature is still being developed so take care when using it and report any problems on the mailing list.
Calculate the coordination numbers of atoms so that you can then calculate functions of the distribution of coordination numbers such as the minimum, the number less than a certain quantity and so on.
So that the calculated coordination numbers have continuous derivatives the following function is used:
If R_POWER is set, this will use the product of pairwise distance raised to the R_POWER with the coordination number function defined above. This was used in White and Voth [114] as a way of indirectly biasing radial distribution functions. Note that in that reference this function is referred to as moments of coordination number, but here we call them powers to distinguish from the existing MOMENTS keyword of Multicolvars.
Examples
The following input tells plumed to calculate the coordination numbers of atoms 1-100 with themselves. The minimum coordination number is then calculated.
Click on the labels of the actions for more information on what each action computes
the numerical indexes for the set of atoms in the group.
=1-100 The GROUP action with label @0_grp defines a group of atoms so that they can be referred to later in the input@0_mat: CONTACT_MATRIX
GROUP
specifies the list of atoms that should be assumed indistinguishable.
=1-100
R_0
could not find this keyword
=1.0
D_0
could not find this keyword
=0.0
NN
compulsory keyword ( default=6 )
The n parameter of the switching function
=6
MM
compulsory keyword ( default=0 )
The m parameter of the switching function; 0 implies 2*NN
=0 The CONTACT_MATRIX action with label @0_mat calculates a single scalar value@0_ones: ONES
SIZE
compulsory keyword
the number of ones that you would like to create
=100 The ONES action with label @0_ones calculates a single scalar value@0: MATRIX_VECTOR_PRODUCT
ARG
compulsory keyword
the label for the matrix and the vector/scalar that are being multiplied.
=@0_mat,@0_onesThe MATRIX_VECTOR_PRODUCT action with label @0 calculates a single scalar value@0_caverage: MEAN
ARG
compulsory keyword
the values input to this function
=@0
PERIODIC
compulsory keyword
if the output of your function is periodic then you should specify the periodicity
of the function.
=NO The MEAN action with label @0_caverage calculates a single scalar value@0_me_min: CUSTOM
ARG
compulsory keyword
the values input to this function
=@0
FUNC
compulsory keyword
the function you wish to evaluate
=exp(0.1/x)
PERIODIC
compulsory keyword
if the output of your function is periodic then you should specify the periodicity
of the function.
=NO The CUSTOM action with label @0_me_min calculates a single scalar value@0_mec_min: SUM
ARG
compulsory keyword
the values input to this function
=@0_me_min
PERIODIC
compulsory keyword
if the output of your function is periodic then you should specify the periodicity
of the function.
=NO The SUM action with label @0_mec_min calculates a single scalar value@0_min: CUSTOM
ARG
compulsory keyword
the values input to this function
=@0_mec_min
FUNC
compulsory keyword
the function you wish to evaluate
=0.1/log(x)
PERIODIC
compulsory keyword
if the output of your function is periodic then you should specify the periodicity
of the function.
=NO The CUSTOM action with label @0_min calculates a single scalar value
The following input tells plumed to calculate how many atoms from 1-100 are within 3.0 of each of the atoms from 101-110. In the first 101 is the central atom, in the second 102 is the central atom and so on. The number of coordination numbers more than 6 is then computed.
Click on the labels of the actions for more information on what each action computes
the numerical indexes for the set of atoms in the group.
=101-110 The GROUP action with label @0_grp defines a group of atoms so that they can be referred to later in the input@0_mat: CONTACT_MATRIX
R_0
could not find this keyword
=3.0
D_0
could not find this keyword
=0.0
NN
compulsory keyword ( default=6 )
The n parameter of the switching function
=6
MM
compulsory keyword ( default=0 )
The m parameter of the switching function; 0 implies 2*NN
=0 The CONTACT_MATRIX action with label @0_mat
The following input tells plumed to calculate the mean coordination number of all atoms with themselves and its powers. An explicit cutoff is set for each of 8.
Click on the labels of the actions for more information on what each action computes
this keyword is used for colvars such as coordination number.
=1-10
SWITCH
the switching function that it used in the construction of the contact matrix
={RATIONAL R_0=1.0 D_MAX=8}
MEAN
( default=off ) calculate the mean of all the quantities.
You cannot view the components that are calculated by each action for this input file. Sorry cn1: COORDINATIONNUMBER
SPECIES
this keyword is used for colvars such as coordination number.
=1-10
SWITCH
the switching function that it used in the construction of the contact matrix
={RATIONAL R_0=1.0 D_MAX=8}
R_POWER
compulsory keyword
the power to which you want to raise the distance
=1
MEAN
( default=off ) calculate the mean of all the quantities.
You cannot view the components that are calculated by each action for this input file. Sorry cn2: COORDINATIONNUMBER
SPECIES
this keyword is used for colvars such as coordination number.
=1-10
SWITCH
the switching function that it used in the construction of the contact matrix
={RATIONAL R_0=1.0 D_MAX=8}
R_POWER
compulsory keyword
the power to which you want to raise the distance
=2
MEAN
( default=off ) calculate the mean of all the quantities.
You cannot view the components that are calculated by each action for this input file. Sorry PRINT
ARG
compulsory keyword
the labels of the values that you would like to print to the file
=cn0.mean,cn1.mean,cn2.mean
STRIDE
compulsory keyword ( default=1 )
the frequency with which the quantities of interest should be output
=1
FILE
the name of the file on which to output these quantities
=cn_out You cannot view the components that are calculated by each action for this input file. Sorry
Glossary of keywords and components
Description of components
Quantity
Description
.#!value
the coordination numbers of the specified atoms
In addition the following quantities can be calculated by employing the keywords listed below
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
moment
MOMENTS
the moments of the distribution
The atoms involved can be specified using
SPECIES
this keyword is used for colvars such as coordination number. In that context it specifies that plumed should calculate one coordination number for each of the atoms specified. Each of these coordination numbers specifies how many of the other specified atoms are within a certain cutoff of the central atom. You can specify the atoms here as another multicolvar action or using a MultiColvarFilter or ActionVolume action. When you do so the quantity is calculated for those atoms specified in the previous multicolvar. This is useful if you would like to calculate the Steinhardt parameter for those atoms that have a coordination number more than four for example
Or alternatively by using
SPECIESA
this keyword is used for colvars such as the coordination number. In that context it species that plumed should calculate one coordination number for each of the atoms specified in SPECIESA. Each of these cooordination numbers specifies how many of the atoms specifies using SPECIESB is within the specified cutoff. As with the species keyword the input can also be specified using the label of another multicolvar
SPECIESB
this keyword is used for colvars such as the coordination number. It must appear with SPECIESA. For a full explanation see the documentation for that keyword
Compulsory keywords
NN
( default=6 ) The n parameter of the switching function
MM
( default=0 ) The m parameter of the switching function; 0 implies 2*NN
D_0
( default=0.0 ) The d_0 parameter of the switching function
R_0
The r_0 parameter of the switching function
R_POWER
the power to which you want to raise the distance
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.
LOWMEM
( default=off ) this flag does nothing and is present only to ensure back-compatibility
SWITCH
the switching function that it used in the construction of the contact matrix
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.
MOMENTS
the list of moments that you would like to calculate