Skip to content

Module: symfunc

Description Usage
tools for calculating symmetry functions that measure the degree of order in the coordination sphere around atoms
Authors: Gareth Tribello used in 14 tutorialsused in 65 eggs

Details

The actions in this module can be used to calculate symmetry functions that measure the degree of order in the coordination sphere around the atoms and molecules that make up your system. The methods within this class are typically used to investigate nucleation of solids from the liquid phase.

Notice that each symmetry function you calculate can be allocated to a particular position in space; namely, the position of the central atom whose coordination sphere has been used in the calculation of the symmetry function. This fact has been used in the papers cited below to:

  • calculate average values for the symmetry function in particular parts of the simulation cell by using this module together with the volumes module.
  • calculate average values for the symmetry function in the largest cluster by using this module together with the clusters module.
  • calculate phase field models that provide a smooth representation of the average value of the CV as a function of position by using this module together with the gridtools module.
  • calculate the gradient of the phase field representation of the CV as a function of position by using the module together with the gridtools module.
  • calculate the position of the interface between the solid and liquid parts of the simulation cell by using this module together with the together with the gridtools and contour modules.

Notice that from version 2.10 onwards many of the symmetry functions in this class (particularly the Steinhardt Parameters) have been implemented as shortcuts. The implementations that PLUMED provides from these methods are thus very flexible and allow you to calculate the many subtle variationts of this technique for determining the degree of order in the system that have been used in the literature.

You will get a colossal speedup by specifying the D_MAX keyword in all switching functions that act on distances. D_MAX tells PLUMED that the switching function is strictly zero if the distance is greater than this value. As a result PLUMED knows that it does not need to calculate these zero terms in what are essentially sums with a very large number of terms. In fact when D_MAX is set PLUMED uses linked lists when calculating these coordination numbers, which is what gives you such a dramatic increase in performance.

Actions

The following actions are part of this module

Name Description Tags
ATOMIC_SMAC Calculate the atomic smac CV MCOLVAR
COORDINATIONNUMBER Calculate the coordination numbers of atoms so that you can then calculate functions of the distribution of MCOLVAR
COORDINATION_MOMENTS Calculate moments of the distribution of distances in the first coordination sphere MCOLVAR
COORDINATION_SHELL_AVERAGE Calculate an arbitrary function of all the bond vectors in the first coordination sphere of an atom and take an average MCOLVAR
COORDINATION_SHELL_FUNCTION Calculate an arbitrary function of all the bond vectors in the first coordination sphere of an atom MCOLVAR
CYLINDRICAL_HARMONIC Calculate the cylindrical harmonic function MCOLVAR
FCCUBIC Measure how similar the environment around atoms is to that found in a FCC structure. MCOLVAR
FCCUBIC_FUNC Measure how similar the environment around atoms is to that found in a FCC structure. MCOLVAR
GSYMFUNC_THREEBODY Calculate functions of the coordinates of the coordinates of all pairs of bonds in the first coordination sphere of an atom COLVAR
HEXACTIC_PARAMETER Calculate the hexatic order parameter MCOLVAR
LOCAL_AVERAGE Calculate averages over spherical regions centered on atoms MCOLVARF
LOCAL_CRYSTALINITY Calculate the local crystalinity symmetry function MCOLVAR
LOCAL_Q1 Calculate the local degree of order around an atoms by taking the average dot product between the q_1 vector on the central atom and the q_3 vector on the atoms in the first coordination sphere. MCOLVARF
LOCAL_Q3 Calculate the local degree of order around an atoms by taking the average dot product between the q_3 vector on the central atom and the q_3 vector on the atoms in the first coordination sphere. MCOLVARF
LOCAL_Q4 Calculate the local degree of order around an atoms by taking the average dot product between the q_4 vector on the central atom and the q_4 vector on the atoms in the first coordination sphere. MCOLVARF
LOCAL_Q6 Calculate the local degree of order around an atoms by taking the average dot product between the q_6 vector on the central atom and the q_6 vector on the atoms in the first coordination sphere. MCOLVARF
Q1 Calculate 1st order Steinhardt parameters MCOLVAR
Q3 Calculate 3rd order Steinhardt parameters. MCOLVAR
Q4 Calculate fourth order Steinhardt parameters. MCOLVAR
Q6 Calculate sixth order Steinhardt parameters. MCOLVAR
SIMPLECUBIC Calculate whether or not the coordination spheres of atoms are arranged as they would be in a simple cubic structure. MCOLVAR
SMAC Calculate the SMAC order parameter for a set of molecules MCOLVAR
SPHERICAL_HARMONIC Calculate the values of all the spherical harmonic funtions for a particular value of l. MCOLVAR
TETRAHEDRAL Calculate the degree to which the environment about ions has a tetrahedral order. MCOLVAR
TETRA_ANGULAR Calculate the angular tetra CV MCOLVAR
TETRA_RADIAL Calculate the radial tetra CV MCOLVAR

References

More information about this module is available in the following articles: