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

Calculate the vectors connecting a pair of atoms in order to represent the orientation of a molecule.

At its simplest this command can be used to calculate the average length of an internal vector in a collection of different molecules. When used in conjunction with MutiColvarFunctions in can be used to do a variety of more complex tasks.

Examples

The following input tells plumed to calculate the distances between two of the atoms in a molecule. This is done for the same set of atoms four different molecules and the average separation is then calculated.

Click on the labels of the actions for more information on what each action computes
mm: MOLECULES MOL1The numerical indices of the atoms in the molecule. =1,2 MOL2The numerical indices of the atoms in the molecule. =3,4 MOL3The numerical indices of the atoms in the molecule. =5,6 MOL4The numerical indices of the atoms in the molecule. =7,8 MEANtake the mean of these variables.
PRINT ARGthe input for this action is the scalar output from one or more other actions. =mm.mean FILEthe name of the file on which to output these quantities =colvar

Glossary of keywords and components
Description of components

When the label of this action is used as the input for a second you are not referring to a scalar quantity as you are in regular collective variables. The label is used to reference the full set of vectors calculated by the action. This is usual when using MultiColvar functions. Generally when doing this the previously calculated multicolvar will be referenced using the DATA keyword rather than ARG.

This Action can be used to calculate the following scalar quantities directly. These quantities are calculated by employing the keywords listed below. These quantities can then be referenced elsewhere in the input file by using this Action's label followed by a dot and the name of the quantity. All of them can be calculated multiple times with different parameters. In this case the quantities calculated can be referenced elsewhere in the input by using the name of the quantity followed by a numerical identifier e.g. label.lessthan-1, label.lessthan-2 etc. When doing this and, for clarity we have made it so that the user can set the label for the components. As such by using the LABEL keyword in the description of the keyword input you can customize the component name. In addition, you can calculate all of these scalar functions for one particular component of the calculated vector by making use of the COMPONENT keyword. The first component is used to refer to the norm of the vector. The individual components can then be referenced using the numbers 2, 3, and so on. So as an example MEAN1={COMPONENT=1} calculates the average vector norm. MEAN2={COMPONENT=2} by contrast calculates the mean for all of the first components of the vectors.

 Quantity Keyword Description vmean VMEAN the norm of the mean vector. The output component can be referred to elsewhere in the input file by using the label.vmean mean MEAN the mean value. The output component can be referred to elsewhere in the input file by using the label.mean
The atoms involved can be specified using
 MOL The numerical indices of the atoms in the molecule. The orientation of the molecule is equal to the vector connecting the first two atoms specified. If a third atom is specified its position is used to specify where the molecule is. If a third atom is not present the molecule is assumed to be at the center of the vector connecting the first two atoms. You can use multiple instances of this keyword i.e. MOL1, MOL2, MOL3...
Options
 NUMERICAL_DERIVATIVES ( default=off ) calculate the derivatives for these quantities numerically NOPBC ( default=off ) ignore the periodic boundary conditions when calculating distances SERIAL ( default=off ) do the calculation in serial. Do not use MPI LOWMEM ( default=off ) lower the memory requirements TIMINGS ( default=off ) output information on the timings of the various parts of the calculation MEAN take the mean of these variables. The final value can be referenced using label.mean. You can use multiple instances of this keyword i.e. MEAN1, MEAN2, MEAN3... The corresponding values are then referenced using label.mean-1, label.mean-2, label.mean-3... VMEAN calculate the norm of the mean vector. The final value can be referenced using label.vmean. You can use multiple instances of this keyword i.e. VMEAN1, VMEAN2, VMEAN3... The corresponding values are then referenced using label.vmean-1, label.vmean-2, label.vmean-3...