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.
Measure how similar the environment around atoms is to that found in a FCC structure.
This CV was introduced in this article [4] and again in this article [33] This CV essentially determines whether the environment around any given atom is similar to that found in the FCC structure or not. The function that is used to make this determination is as follows:
In this expression \(x_{ij}\), \(y_{ij}\) and \(z_{ij}\) are the \(x\), \(y\) and \(z\) components of the vector connecting atom \(i\) to atom \(j\) and \(r_{ij}\) is the magnitude of this vector. \(\sigma(r_{ij})\) is a switchingfunction that acts on the distance between atom \(i\) and atom \(j\) and its inclusion in the numerator and the denominator of the above expression as well as the fact that we are summing over all of the other atoms in the system ensures that we are calculating an average of the function of \(x_{ij}\), \(y_{ij}\) and \(z_{ij}\) for the atoms in the first coordination sphere around atom \(i\). Lastly, \(\alpha\) is a parameter that can be set by the user, which by default is equal to three. The values of \(a\) and \(b\) are calculated from \(\alpha\) using:
This quantity is once again a multicolvar so you can compute it for multiple atoms using a single PLUMED action and then compute the average value for the atoms in your system, the number of atoms that have an \(s_i\) value that is more that some target and so on. Notice also that you can rotate the reference frame if you are using a non-standard unit cell.
Examples
The following input calculates the FCCUBIC parameter for the 64 atoms in the system and then calculates and prints the average value for this quantity.
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-64 The GROUP action with label d_grp defines a group of atoms so that they can be referred to later in the inputd_mat: CONTACT_MATRIX
GROUP
specifies the list of atoms that should be assumed indistinguishable.
=1-64
SWITCH
specify the switching function to use between two sets of indistinguishable atoms.
=RATIONAL,D_0=3.0,R_0=1.5
COMPONENTS
( default=off ) also calculate the components of the vector connecting the atoms
in the contact matrix
The CONTACT_MATRIX action with label d_mat
Glossary of keywords and components
Description of components
Quantity
Description
.#!value
the symmetry function for each 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
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
FUNCTION
the function of the bond vectors that you would like to evaluate
PHI
( default=0.0 ) The Euler rotational angle phi
THETA
( default=0.0 ) The Euler rotational angle theta
PSI
( default=0.0 ) The Euler rotational angle psi
ALPHA
( default=3.0 ) The alpha parameter of the angular function that is used for FCCUBIC
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.