Steinhardt parameters in PLUMED
The Steinhardt parameters are arguably some of the most complicated collective variables to use in PLUMED. These variables are difficult to use
because researchers use a variety of subtly different variations on the same basic concept. When you are trying
to reproduce the values quoted in a particular paper you often find that you need to spend time comparing the choices that were made in the paper with the
choices that have been used in the code you are employing. To resolve this problem I have tried to use the new shortcut features that I have implemented in
PLUMED to make the implementation of the Steinhardt parameters in PLUMED a little more transparent. Hopefully this more transparent and piecemeal implementation
allows users to implement and use all the variations in the literature by modifying the template input files that are generated by the shortcut actions
that can be used to run the most commonly used Steinhardt variants.
In the following article I will thus explain how the Steinhardt parameters have been implemented and the variety of things that you can do within them.
Calculating the Steinhardt parameter for a single atom
The Steinhardt parameter is an example of a symmetry function. In other words, it is a function of the position of the atoms in the first coordination sphere around
a central atom. If we have a system of $N$ indistinguishable atoms we can thus calculate $N$ separate instances of the Steinhardt parameter.
Steinhardt parameters are complicated as the spherical harmonics are used to calculate them. Consequently,
when we calculate the Steinhardt parameter for atom $i$ we evaluate $(2l + 1)$ complex quntities as follows:
\[q_{lm}(i) = \frac{\sum_{j \ne i} \sigma(r_{ij})Y_l^m(\theta_{ij},\phi_{ij}) }{ \sum_{j \ne i} \sigma(r_{ij})}\]
In this expression the sums run over all the specified atoms. $\sigma(r_{ij})$ is a switching function that acts on the distance, $r_{ij}$, between atom $i$ and atom $j$.
$Y_l^m(\theta_{ij},\phi_{ij})$ is the spherical harmonic, which is a function of the angles $\theta_{ij}$ and $\phi_{ij}$ the vector that connects atom $i$ to atom $j$
and the $x$ and $z$ axis of the lab frame respectively.
We can calculate $q_{lm}(i)$ values for atom 1 in PLUMED using an input like the one shown below. Here I am using $l=1$ so as to keep the input short.
Click on the labels of the actions for more information on what each action computes
cmatThe CONTACT_MATRIX action with label cmat calculates the following quantities: Quantity | Type | Description |
cmat.w | matrix | a matrix containing the weights for the bonds between each pair of atoms |
cmat.x | matrix | the projection of the bond on the x axis |
cmat.y | matrix | the projection of the bond on the y axis |
cmat.z | matrix | the projection of the bond on the z axis |
: CONTACT_MATRIXAdjacency matrix in which two atoms are adjacent if they are within a certain cutoff. More details GROUPAwhen you are calculating the adjacency matrix between two sets of atoms this keyword is used to specify the atoms along with the keyword GROUPB=1 GROUPBwhen you are calculating the adjacency matrix between two sets of atoms this keyword is used to specify the atoms along with the keyword GROUPA=2-100 COMPONENTS also calculate the components of the vectors connecting the atoms in the contact matrix SWITCHthe input for the switching function that acts upon the distance between each pair of atoms. Options for this keyword are explained in the documentation for LESS_THAN.={RATIONAL D_0=2.0 R_0=1.0}
onesThe ONES action with label ones calculates the following quantities: Quantity | Type | Description |
ones | vector | a vector of ones with the required number of elements |
: ONESCreate a constant vector with all elements equal to one This action is a shortcut. More details SIZEthe number of ones that you would like to create=99
# ones: ONES SIZE=99
onesThe CONSTANT action with label ones calculates the following quantities: Quantity | Type | Description |
ones | vector | the constant value that was read from the plumed input |
: CONSTANTCreate a constant value that can be passed to actions More details NOLOG do not report all the read in scalars in the log VALUESthe numbers that are in your constant value=1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
# --- End of included input ---
coordThe MATRIX_VECTOR_PRODUCT action with label coord calculates the following quantities: Quantity | Type | Description |
coord | vector | the vector that is obtained by taking the product between the matrix and the vector that were input |
: MATRIX_VECTOR_PRODUCTCalculate the product of the matrix and the vector More details ARGthe label for the matrix and the vector/scalar that are being multiplied=cmat.w,ones
shThe SPHERICAL_HARMONIC action with label sh calculates the following quantities: Quantity | Type | Description |
sh.rm-n1 | matrix | the real parts of the spherical harmonic values with the m value given This is the n1th of these quantities |
sh.rm-0 | matrix | the real parts of the spherical harmonic values with the m value given This is the 0th of these quantities |
sh.rm-p1 | matrix | the real parts of the spherical harmonic values with the m value given This is the p1th of these quantities |
sh.im-n1 | matrix | the real parts of the spherical harmonic values with the m value given This is the n1th of these quantities |
sh.im-0 | matrix | the real parts of the spherical harmonic values with the m value given This is the 0th of these quantities |
sh.im-p1 | matrix | the real parts of the spherical harmonic values with the m value given This is the p1th of these quantities |
: SPHERICAL_HARMONICCalculate the values of all the spherical harmonic funtions for a particular value of l. More details ARGthe values input to this function=cmat.x,cmat.y,cmat.z,cmat.w Lthe value of the angular momentum=1
spThe MATRIX_VECTOR_PRODUCT action with label sp calculates the following quantities: Quantity | Type | Description |
sp.rm-n1 | vector | the product of the matrix sh.rm-n1 and the vector ones |
sp.rm-0 | vector | the product of the matrix sh.rm-0 and the vector ones |
sp.rm-p1 | vector | the product of the matrix sh.rm-p1 and the vector ones |
sp.im-n1 | vector | the product of the matrix sh.im-n1 and the vector ones |
sp.im-0 | vector | the product of the matrix sh.im-0 and the vector ones |
sp.im-p1 | vector | the product of the matrix sh.im-p1 and the vector ones |
: MATRIX_VECTOR_PRODUCTCalculate the product of the matrix and the vector More details ARGthe label for the matrix and the vector/scalar that are being multiplied=sh.*,ones
q1-rmn-n1The CUSTOM action with label q1-rmn-n1 calculates the following quantities: Quantity | Type | Description |
q1-rmn-n1 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=sp.rm-n1,coord FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q1-imn-n1The CUSTOM action with label q1-imn-n1 calculates the following quantities: Quantity | Type | Description |
q1-imn-n1 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=sp.im-n1,coord FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q1-rmn-0The CUSTOM action with label q1-rmn-0 calculates the following quantities: Quantity | Type | Description |
q1-rmn-0 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=sp.rm-0,coord FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q1-imn-0The CUSTOM action with label q1-imn-0 calculates the following quantities: Quantity | Type | Description |
q1-imn-0 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=sp.im-0,coord FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q1-rmn-p1The CUSTOM action with label q1-rmn-p1 calculates the following quantities: Quantity | Type | Description |
q1-rmn-p1 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=sp.rm-p1,coord FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q1-imn-p1The CUSTOM action with label q1-imn-p1 calculates the following quantities: Quantity | Type | Description |
q1-imn-p1 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=sp.im-p1,coord FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
PRINTPrint quantities to a file. More details ARGthe labels of the values that you would like to print to the file=q1-rmn-n1,q1-imn-n1,q1-rmn-0,q1-imn-0,q1-rmn-p1,q1-imn-p1 FILEthe name of the file on which to output these quantities=colvar
The $q_{lm}(i)$ values that are output by the PLUMED input above are not rotationally invariant. We thus introduce $q_l(i)$ as follows:
\[q_{l}(i) = \sqrt{ \sum_{m=-l}^l | q_{lm}(i) |^2 }\]
This quantity can be calculated using the following PLUMED input:
Click on the labels of the actions for more information on what each action computes
cmatThe CONTACT_MATRIX action with label cmat calculates the following quantities: Quantity | Type | Description |
cmat.w | matrix | a matrix containing the weights for the bonds between each pair of atoms |
cmat.x | matrix | the projection of the bond on the x axis |
cmat.y | matrix | the projection of the bond on the y axis |
cmat.z | matrix | the projection of the bond on the z axis |
: CONTACT_MATRIXAdjacency matrix in which two atoms are adjacent if they are within a certain cutoff. More details GROUPAwhen you are calculating the adjacency matrix between two sets of atoms this keyword is used to specify the atoms along with the keyword GROUPB=1 GROUPBwhen you are calculating the adjacency matrix between two sets of atoms this keyword is used to specify the atoms along with the keyword GROUPA=2-100 COMPONENTS also calculate the components of the vectors connecting the atoms in the contact matrix SWITCHthe input for the switching function that acts upon the distance between each pair of atoms. Options for this keyword are explained in the documentation for LESS_THAN.={RATIONAL D_0=2.0 R_0=1.0}
onesThe ONES action with label ones calculates the following quantities: Quantity | Type | Description |
ones | vector | a vector of ones with the required number of elements |
: ONESCreate a constant vector with all elements equal to one This action is a shortcut. More details SIZEthe number of ones that you would like to create=99
# ones: ONES SIZE=99
onesThe CONSTANT action with label ones calculates the following quantities: Quantity | Type | Description |
ones | vector | the constant value that was read from the plumed input |
: CONSTANTCreate a constant value that can be passed to actions More details NOLOG do not report all the read in scalars in the log VALUESthe numbers that are in your constant value=1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
# --- End of included input ---
coordThe MATRIX_VECTOR_PRODUCT action with label coord calculates the following quantities: Quantity | Type | Description |
coord | vector | the vector that is obtained by taking the product between the matrix and the vector that were input |
: MATRIX_VECTOR_PRODUCTCalculate the product of the matrix and the vector More details ARGthe label for the matrix and the vector/scalar that are being multiplied=cmat.w,ones
shThe SPHERICAL_HARMONIC action with label sh calculates the following quantities: Quantity | Type | Description |
sh.rm-n1 | matrix | the real parts of the spherical harmonic values with the m value given This is the n1th of these quantities |
sh.rm-0 | matrix | the real parts of the spherical harmonic values with the m value given This is the 0th of these quantities |
sh.rm-p1 | matrix | the real parts of the spherical harmonic values with the m value given This is the p1th of these quantities |
sh.im-n1 | matrix | the real parts of the spherical harmonic values with the m value given This is the n1th of these quantities |
sh.im-0 | matrix | the real parts of the spherical harmonic values with the m value given This is the 0th of these quantities |
sh.im-p1 | matrix | the real parts of the spherical harmonic values with the m value given This is the p1th of these quantities |
: SPHERICAL_HARMONICCalculate the values of all the spherical harmonic funtions for a particular value of l. More details ARGthe values input to this function=cmat.x,cmat.y,cmat.z,cmat.w Lthe value of the angular momentum=1
spThe MATRIX_VECTOR_PRODUCT action with label sp calculates the following quantities: Quantity | Type | Description |
sp.rm-n1 | vector | the product of the matrix sh.rm-n1 and the vector ones |
sp.rm-0 | vector | the product of the matrix sh.rm-0 and the vector ones |
sp.rm-p1 | vector | the product of the matrix sh.rm-p1 and the vector ones |
sp.im-n1 | vector | the product of the matrix sh.im-n1 and the vector ones |
sp.im-0 | vector | the product of the matrix sh.im-0 and the vector ones |
sp.im-p1 | vector | the product of the matrix sh.im-p1 and the vector ones |
: MATRIX_VECTOR_PRODUCTCalculate the product of the matrix and the vector More details ARGthe label for the matrix and the vector/scalar that are being multiplied=sh.*,ones
q1-rmn-n1The CUSTOM action with label q1-rmn-n1 calculates the following quantities: Quantity | Type | Description |
q1-rmn-n1 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=sp.rm-n1,coord FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q1-imn-n1The CUSTOM action with label q1-imn-n1 calculates the following quantities: Quantity | Type | Description |
q1-imn-n1 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=sp.im-n1,coord FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q1-rmn-0The CUSTOM action with label q1-rmn-0 calculates the following quantities: Quantity | Type | Description |
q1-rmn-0 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=sp.rm-0,coord FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q1-imn-0The CUSTOM action with label q1-imn-0 calculates the following quantities: Quantity | Type | Description |
q1-imn-0 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=sp.im-0,coord FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q1-rmn-p1The CUSTOM action with label q1-rmn-p1 calculates the following quantities: Quantity | Type | Description |
q1-rmn-p1 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=sp.rm-p1,coord FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q1-imn-p1The CUSTOM action with label q1-imn-p1 calculates the following quantities: Quantity | Type | Description |
q1-imn-p1 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=sp.im-p1,coord FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q1_2The COMBINE action with label q1_2 calculates the following quantities: Quantity | Type | Description |
q1_2 | vector | the vector obtained by doing an element-wise application of a linear compbination to the input vectors |
: COMBINECalculate a polynomial combination of a set of other variables. More details PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO POWERS the powers to which you are raising each of the arguments in your function=2,2,2,2,2,2 ARGthe values input to this function=q1-rmn-n1,q1-imn-n1,q1-rmn-0,q1-imn-0,q1-rmn-p1,q1-imn-p1
q1The CUSTOM action with label q1 calculates the following quantities: Quantity | Type | Description |
q1 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=q1_2 FUNCthe function you wish to evaluate=sqrt(x) PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
PRINTPrint quantities to a file. More details ARGthe labels of the values that you would like to print to the file=q1 FILEthe name of the file on which to output these quantities=colvar
Alternatively, we could compute the following quantity:
Click on the labels of the actions for more information on what each action computes
cmatThe CONTACT_MATRIX action with label cmat calculates the following quantities: Quantity | Type | Description |
cmat.w | matrix | a matrix containing the weights for the bonds between each pair of atoms |
cmat.x | matrix | the projection of the bond on the x axis |
cmat.y | matrix | the projection of the bond on the y axis |
cmat.z | matrix | the projection of the bond on the z axis |
: CONTACT_MATRIXAdjacency matrix in which two atoms are adjacent if they are within a certain cutoff. More details GROUPAwhen you are calculating the adjacency matrix between two sets of atoms this keyword is used to specify the atoms along with the keyword GROUPB=1 GROUPBwhen you are calculating the adjacency matrix between two sets of atoms this keyword is used to specify the atoms along with the keyword GROUPA=2-100 COMPONENTS also calculate the components of the vectors connecting the atoms in the contact matrix SWITCHthe input for the switching function that acts upon the distance between each pair of atoms. Options for this keyword are explained in the documentation for LESS_THAN.={RATIONAL D_0=2.0 R_0=1.0}
onesThe ONES action with label ones calculates the following quantities: Quantity | Type | Description |
ones | vector | a vector of ones with the required number of elements |
: ONESCreate a constant vector with all elements equal to one This action is a shortcut. More details SIZEthe number of ones that you would like to create=99
# ones: ONES SIZE=99
onesThe CONSTANT action with label ones calculates the following quantities: Quantity | Type | Description |
ones | vector | the constant value that was read from the plumed input |
: CONSTANTCreate a constant value that can be passed to actions More details NOLOG do not report all the read in scalars in the log VALUESthe numbers that are in your constant value=1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
# --- End of included input ---
coordThe MATRIX_VECTOR_PRODUCT action with label coord calculates the following quantities: Quantity | Type | Description |
coord | vector | the vector that is obtained by taking the product between the matrix and the vector that were input |
: MATRIX_VECTOR_PRODUCTCalculate the product of the matrix and the vector More details ARGthe label for the matrix and the vector/scalar that are being multiplied=cmat.w,ones
shThe SPHERICAL_HARMONIC action with label sh calculates the following quantities: Quantity | Type | Description |
sh.rm-n1 | matrix | the real parts of the spherical harmonic values with the m value given This is the n1th of these quantities |
sh.rm-0 | matrix | the real parts of the spherical harmonic values with the m value given This is the 0th of these quantities |
sh.rm-p1 | matrix | the real parts of the spherical harmonic values with the m value given This is the p1th of these quantities |
sh.im-n1 | matrix | the real parts of the spherical harmonic values with the m value given This is the n1th of these quantities |
sh.im-0 | matrix | the real parts of the spherical harmonic values with the m value given This is the 0th of these quantities |
sh.im-p1 | matrix | the real parts of the spherical harmonic values with the m value given This is the p1th of these quantities |
: SPHERICAL_HARMONICCalculate the values of all the spherical harmonic funtions for a particular value of l. More details ARGthe values input to this function=cmat.x,cmat.y,cmat.z,cmat.w Lthe value of the angular momentum=1
spThe MATRIX_VECTOR_PRODUCT action with label sp calculates the following quantities: Quantity | Type | Description |
sp.rm-n1 | vector | the product of the matrix sh.rm-n1 and the vector ones |
sp.rm-0 | vector | the product of the matrix sh.rm-0 and the vector ones |
sp.rm-p1 | vector | the product of the matrix sh.rm-p1 and the vector ones |
sp.im-n1 | vector | the product of the matrix sh.im-n1 and the vector ones |
sp.im-0 | vector | the product of the matrix sh.im-0 and the vector ones |
sp.im-p1 | vector | the product of the matrix sh.im-p1 and the vector ones |
: MATRIX_VECTOR_PRODUCTCalculate the product of the matrix and the vector More details ARGthe label for the matrix and the vector/scalar that are being multiplied=sh.*,ones
q1_2The COMBINE action with label q1_2 calculates the following quantities: Quantity | Type | Description |
q1_2 | vector | the vector obtained by doing an element-wise application of a linear compbination to the input vectors |
: COMBINECalculate a polynomial combination of a set of other variables. More details PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO POWERS the powers to which you are raising each of the arguments in your function=2,2,2,2,2,2 ARGthe values input to this function=sp.rm-n1,sp.im-n1,sp.rm-0,sp.im-0,sp.rm-p1,sp.im-p1
q1The CUSTOM action with label q1 calculates the following quantities: Quantity | Type | Description |
q1 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=q1_2 FUNCthe function you wish to evaluate=sqrt(x) PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
anormThe CUSTOM action with label anorm calculates the following quantities: Quantity | Type | Description |
anorm | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=q1,coord FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
This input computes:
\[q_l(i) = \frac{1}{N(i)} \sqrt{\sum_{m=-1}^l N(i)^2 | q_{lm}(i) |^2} \qquad \textrm{where} \qquad N(i) = \sum_{j \ne i} \sigma(r_{ij})\]
This should be equivalent to what is computed by the first input but there may be some small differences in practise because of numerical error.
I only mention this alternative claculation method as this is done when the shortcut below is employed:
Click on the labels of the actions for more information on what each action computes
q1The Q1 action with label q1 calculates the following quantities: Quantity | Type | Description |
q1 | vector | the norms of the vectors of spherical harmonic coefficients |
: Q1Calculate 1st order Steinhardt parameters This action is a shortcut. More details SPECIESAthe list of atoms for which the symmetry function is being calculated=1 SPECIESBthe list of atoms that can be in the environments of each of the atoms for which the symmetry function is being calculated=2-100 SWITCHthe switching function that it used in the construction of the contact matrix. Options for this keyword are explained in the documentation for LESS_THAN.={RATIONAL D_0=2.0 R_0=1.0}
# q1: Q1 SPECIESA=1 SPECIESB=2-100 SWITCH={RATIONAL D_0=2.0 R_0=1.0}
q1_grpThe GROUP action with label q1_grp calculates the following quantities: Quantity | Type | Description |
q1_grp | atoms | indices of atoms specified in GROUP |
: GROUPDefine a group of atoms so that a particular list of atoms can be referenced with a single label in definitions of CVs or virtual atoms. More details ATOMSthe numerical indexes for the set of atoms in the group=1
q1_matThe CONTACT_MATRIX action with label q1_mat calculates the following quantities: Quantity | Type | Description |
q1_mat.w | matrix | a matrix containing the weights for the bonds between each pair of atoms |
q1_mat.x | matrix | the projection of the bond on the x axis |
q1_mat.y | matrix | the projection of the bond on the y axis |
q1_mat.z | matrix | the projection of the bond on the z axis |
: CONTACT_MATRIXAdjacency matrix in which two atoms are adjacent if they are within a certain cutoff. More details GROUPAwhen you are calculating the adjacency matrix between two sets of atoms this keyword is used to specify the atoms along with the keyword GROUPB=1 GROUPBwhen you are calculating the adjacency matrix between two sets of atoms this keyword is used to specify the atoms along with the keyword GROUPA=2-100 SWITCHthe input for the switching function that acts upon the distance between each pair of atoms. Options for this keyword are explained in the documentation for LESS_THAN.={RATIONAL D_0=2.0 R_0=1.0} COMPONENTS also calculate the components of the vectors connecting the atoms in the contact matrix
q1_shThe SPHERICAL_HARMONIC action with label q1_sh calculates the following quantities: Quantity | Type | Description |
q1_sh.rm-n1 | matrix | the real parts of the spherical harmonic values with the m value given This is the n1th of these quantities |
q1_sh.rm-0 | matrix | the real parts of the spherical harmonic values with the m value given This is the 0th of these quantities |
q1_sh.rm-p1 | matrix | the real parts of the spherical harmonic values with the m value given This is the p1th of these quantities |
q1_sh.im-n1 | matrix | the real parts of the spherical harmonic values with the m value given This is the n1th of these quantities |
q1_sh.im-0 | matrix | the real parts of the spherical harmonic values with the m value given This is the 0th of these quantities |
q1_sh.im-p1 | matrix | the real parts of the spherical harmonic values with the m value given This is the p1th of these quantities |
: SPHERICAL_HARMONICCalculate the values of all the spherical harmonic funtions for a particular value of l. More details ARGthe values input to this function=q1_mat.x,q1_mat.y,q1_mat.z,q1_mat.w Lthe value of the angular momentum=1
q1_denom_onesThe CONSTANT action with label q1_denom_ones calculates the following quantities: Quantity | Type | Description |
q1_denom_ones | vector | the constant value that was read from the plumed input |
: ONESCreate a constant vector with all elements equal to one More details SIZEthe number of ones that you would like to create=99
q1_denomThe MATRIX_VECTOR_PRODUCT action with label q1_denom calculates the following quantities: Quantity | Type | Description |
q1_denom | vector | the vector that is obtained by taking the product between the matrix and the vector that were input |
: MATRIX_VECTOR_PRODUCTCalculate the product of the matrix and the vector More details ARGthe label for the matrix and the vector/scalar that are being multiplied=q1_mat.w,q1_denom_ones
q1_spThe MATRIX_VECTOR_PRODUCT action with label q1_sp calculates the following quantities: Quantity | Type | Description |
q1_sp.rm-n1 | vector | the product of the matrix q1_sh.rm-n1 and the vector q1_denom_ones |
q1_sp.rm-0 | vector | the product of the matrix q1_sh.rm-0 and the vector q1_denom_ones |
q1_sp.rm-p1 | vector | the product of the matrix q1_sh.rm-p1 and the vector q1_denom_ones |
q1_sp.im-n1 | vector | the product of the matrix q1_sh.im-n1 and the vector q1_denom_ones |
q1_sp.im-0 | vector | the product of the matrix q1_sh.im-0 and the vector q1_denom_ones |
q1_sp.im-p1 | vector | the product of the matrix q1_sh.im-p1 and the vector q1_denom_ones |
: MATRIX_VECTOR_PRODUCTCalculate the product of the matrix and the vector More details ARGthe label for the matrix and the vector/scalar that are being multiplied=q1_sh.*,q1_denom_ones
q1_norm2The COMBINE action with label q1_norm2 calculates the following quantities: Quantity | Type | Description |
q1_norm2 | vector | the vector obtained by doing an element-wise application of a linear compbination to the input vectors |
: COMBINECalculate a polynomial combination of a set of other variables. More details PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO POWERS the powers to which you are raising each of the arguments in your function=2,2,2,2,2,2 ARGthe values input to this function=q1_sp.rm-n1,q1_sp.im-n1,q1_sp.rm-0,q1_sp.im-0,q1_sp.rm-p1,q1_sp.im-p1
q1_normThe CUSTOM action with label q1_norm calculates the following quantities: Quantity | Type | Description |
q1_norm | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=q1_norm2 FUNCthe function you wish to evaluate=sqrt(x) PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q1The CUSTOM action with label q1 calculates the following quantities: Quantity | Type | Description |
q1 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=q1_norm,q1_denom FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
# --- End of included input --- PRINTPrint quantities to a file. More details ARGthe labels of the values that you would like to print to the file=q1 FILEthe name of the file on which to output these quantities=colvar
As you can see the Q1 action in this second input expands to the input above.
Calculating the Steinhardt parameters for multiple atoms
Consider the following input for calculating Steinhardt parameters:
Click on the labels of the actions for more information on what each action computes
q4The Q4 action with label q4 calculates the following quantities: Quantity | Type | Description |
q4 | vector | the norms of the vectors of spherical harmonic coefficients |
: Q4Calculate fourth order Steinhardt parameters. This action is a shortcut. More details SPECIESthe list of atoms for which the symmetry function is being calculated and the atoms that can be in the environments=1-100 SWITCHthe switching function that it used in the construction of the contact matrix. Options for this keyword are explained in the documentation for LESS_THAN.={RATIONAL D_0=2.0 R_0=1.0}
# q4: Q4 SPECIES=1-100 SWITCH={RATIONAL D_0=2.0 R_0=1.0}
q4_grpThe GROUP action with label q4_grp calculates the following quantities: Quantity | Type | Description |
q4_grp | atoms | indices of atoms specified in GROUP |
: GROUPDefine a group of atoms so that a particular list of atoms can be referenced with a single label in definitions of CVs or virtual atoms. More details ATOMSthe numerical indexes for the set of atoms in the group=1-100
q4_matThe CONTACT_MATRIX action with label q4_mat calculates the following quantities: Quantity | Type | Description |
q4_mat.w | matrix | a matrix containing the weights for the bonds between each pair of atoms |
q4_mat.x | matrix | the projection of the bond on the x axis |
q4_mat.y | matrix | the projection of the bond on the y axis |
q4_mat.z | matrix | the projection of the bond on the z axis |
: CONTACT_MATRIXAdjacency matrix in which two atoms are adjacent if they are within a certain cutoff. More details GROUPspecifies the list of atoms that should be assumed indistinguishable=1-100 SWITCHthe input for the switching function that acts upon the distance between each pair of atoms. Options for this keyword are explained in the documentation for LESS_THAN.={RATIONAL D_0=2.0 R_0=1.0} COMPONENTS also calculate the components of the vectors connecting the atoms in the contact matrix
q4_shThe SPHERICAL_HARMONIC action with label q4_sh calculates the following quantities: Quantity | Type | Description |
q4_sh.rm-n4 | matrix | the real parts of the spherical harmonic values with the m value given This is the n4th of these quantities |
q4_sh.rm-n3 | matrix | the real parts of the spherical harmonic values with the m value given This is the n3th of these quantities |
q4_sh.rm-n2 | matrix | the real parts of the spherical harmonic values with the m value given This is the n2th of these quantities |
q4_sh.rm-n1 | matrix | the real parts of the spherical harmonic values with the m value given This is the n1th of these quantities |
q4_sh.rm-0 | matrix | the real parts of the spherical harmonic values with the m value given This is the 0th of these quantities |
q4_sh.rm-p1 | matrix | the real parts of the spherical harmonic values with the m value given This is the p1th of these quantities |
q4_sh.rm-p2 | matrix | the real parts of the spherical harmonic values with the m value given This is the p2th of these quantities |
q4_sh.rm-p3 | matrix | the real parts of the spherical harmonic values with the m value given This is the p3th of these quantities |
q4_sh.rm-p4 | matrix | the real parts of the spherical harmonic values with the m value given This is the p4th of these quantities |
q4_sh.im-n4 | matrix | the real parts of the spherical harmonic values with the m value given This is the n4th of these quantities |
q4_sh.im-n3 | matrix | the real parts of the spherical harmonic values with the m value given This is the n3th of these quantities |
q4_sh.im-n2 | matrix | the real parts of the spherical harmonic values with the m value given This is the n2th of these quantities |
q4_sh.im-n1 | matrix | the real parts of the spherical harmonic values with the m value given This is the n1th of these quantities |
q4_sh.im-0 | matrix | the real parts of the spherical harmonic values with the m value given This is the 0th of these quantities |
q4_sh.im-p1 | matrix | the real parts of the spherical harmonic values with the m value given This is the p1th of these quantities |
q4_sh.im-p2 | matrix | the real parts of the spherical harmonic values with the m value given This is the p2th of these quantities |
q4_sh.im-p3 | matrix | the real parts of the spherical harmonic values with the m value given This is the p3th of these quantities |
q4_sh.im-p4 | matrix | the real parts of the spherical harmonic values with the m value given This is the p4th of these quantities |
: SPHERICAL_HARMONICCalculate the values of all the spherical harmonic funtions for a particular value of l. More details ARGthe values input to this function=q4_mat.x,q4_mat.y,q4_mat.z,q4_mat.w Lthe value of the angular momentum=4
q4_denom_onesThe CONSTANT action with label q4_denom_ones calculates the following quantities: Quantity | Type | Description |
q4_denom_ones | vector | the constant value that was read from the plumed input |
: ONESCreate a constant vector with all elements equal to one More details SIZEthe number of ones that you would like to create=100
q4_denomThe MATRIX_VECTOR_PRODUCT action with label q4_denom calculates the following quantities: Quantity | Type | Description |
q4_denom | vector | the vector that is obtained by taking the product between the matrix and the vector that were input |
: MATRIX_VECTOR_PRODUCTCalculate the product of the matrix and the vector More details ARGthe label for the matrix and the vector/scalar that are being multiplied=q4_mat.w,q4_denom_ones
q4_spThe MATRIX_VECTOR_PRODUCT action with label q4_sp calculates the following quantities: Quantity | Type | Description |
q4_sp.rm-n4 | vector | the product of the matrix q4_sh.rm-n4 and the vector q4_denom_ones |
q4_sp.rm-n3 | vector | the product of the matrix q4_sh.rm-n3 and the vector q4_denom_ones |
q4_sp.rm-n2 | vector | the product of the matrix q4_sh.rm-n2 and the vector q4_denom_ones |
q4_sp.rm-n1 | vector | the product of the matrix q4_sh.rm-n1 and the vector q4_denom_ones |
q4_sp.rm-0 | vector | the product of the matrix q4_sh.rm-0 and the vector q4_denom_ones |
q4_sp.rm-p1 | vector | the product of the matrix q4_sh.rm-p1 and the vector q4_denom_ones |
q4_sp.rm-p2 | vector | the product of the matrix q4_sh.rm-p2 and the vector q4_denom_ones |
q4_sp.rm-p3 | vector | the product of the matrix q4_sh.rm-p3 and the vector q4_denom_ones |
q4_sp.rm-p4 | vector | the product of the matrix q4_sh.rm-p4 and the vector q4_denom_ones |
q4_sp.im-n4 | vector | the product of the matrix q4_sh.im-n4 and the vector q4_denom_ones |
q4_sp.im-n3 | vector | the product of the matrix q4_sh.im-n3 and the vector q4_denom_ones |
q4_sp.im-n2 | vector | the product of the matrix q4_sh.im-n2 and the vector q4_denom_ones |
q4_sp.im-n1 | vector | the product of the matrix q4_sh.im-n1 and the vector q4_denom_ones |
q4_sp.im-0 | vector | the product of the matrix q4_sh.im-0 and the vector q4_denom_ones |
q4_sp.im-p1 | vector | the product of the matrix q4_sh.im-p1 and the vector q4_denom_ones |
q4_sp.im-p2 | vector | the product of the matrix q4_sh.im-p2 and the vector q4_denom_ones |
q4_sp.im-p3 | vector | the product of the matrix q4_sh.im-p3 and the vector q4_denom_ones |
q4_sp.im-p4 | vector | the product of the matrix q4_sh.im-p4 and the vector q4_denom_ones |
: MATRIX_VECTOR_PRODUCTCalculate the product of the matrix and the vector More details ARGthe label for the matrix and the vector/scalar that are being multiplied=q4_sh.*,q4_denom_ones
q4_norm2The COMBINE action with label q4_norm2 calculates the following quantities: Quantity | Type | Description |
q4_norm2 | vector | the vector obtained by doing an element-wise application of a linear compbination to the input vectors |
: COMBINECalculate a polynomial combination of a set of other variables. More details PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO POWERS the powers to which you are raising each of the arguments in your function=2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2 ARGthe values input to this function=q4_sp.rm-n4,q4_sp.im-n4,q4_sp.rm-n3,q4_sp.im-n3,q4_sp.rm-n2,q4_sp.im-n2,q4_sp.rm-n1,q4_sp.im-n1,q4_sp.rm-0,q4_sp.im-0,q4_sp.rm-p1,q4_sp.im-p1,q4_sp.rm-p2,q4_sp.im-p2,q4_sp.rm-p3,q4_sp.im-p3,q4_sp.rm-p4,q4_sp.im-p4
q4_normThe CUSTOM action with label q4_norm calculates the following quantities: Quantity | Type | Description |
q4_norm | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=q4_norm2 FUNCthe function you wish to evaluate=sqrt(x) PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q4The CUSTOM action with label q4 calculates the following quantities: Quantity | Type | Description |
q4 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=q4_norm,q4_denom FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
# --- End of included input --- PRINTPrint quantities to a file. More details ARGthe labels of the values that you would like to print to the file=q4 FILEthe name of the file on which to output these quantities=colvar
The colvar file that is output by this action will contain 100 $q_l(i)$ values for each time step. If you look at the expanded version of the input you can see that it has the same
structure as the inputs that we looked at for calculating the $q_l(i)$ for a single atom in the previous section. The difference is in the contact matrix that is calculated in the
first line of the input. When we are calculating a single $q_l(i)$ value this is a $1 \times 99$ matrix. For the input above the contact matrix is a $100 \times 100$
matrix. When we do the MATRIX_VECTOR_PRODUCT we thus have a series of vectors with 100 elements (i.e. one element for each atom). The vectors output by this action are this size as there are 100 rows
in the constact matrix and not just one.
The expanded version of the input file is clear because when we apply the SPHERICAL_HARMONIC operation we do it element-wise. The user can use this action as if it is generating $2(2l+1)$ matrices with the
same shape as the CONTACT_MATRIX by applying computing $\sigma(r_{ij})Y_l^m(\theta_{ij},\phi_{ij})$ for each bond vector. (PLUMED is (obviously) not computing the Steinhardt parameter in this way as that would
be horribly inneficient.) They are thus free to do many different things with the vectors that are computed.
Calculating functions of the distribution of Steinhardt Parameters
When you use the shortcut actions Q1, Q3, Q4 and Q6 you can use keywords such as MEAN, LOWEST, LESS_THAN, MORE_THAN to calculate functions of the distribution of $q_l(i)$ values in the same way that you would use
these keywords with other symmetry functions such as COORDINATIONNUMBERS. When you use these keywords with Steinhardt parameters there are subtleties in the literature that you should be know about. These subtleties
are easily understood if you look at the full inputs that PLUMED generates when you use these shortcuts. Lets start by considering the following input:
Click on the labels of the actions for more information on what each action computes
cmatThe CONTACT_MATRIX action with label cmat calculates the following quantities: Quantity | Type | Description |
cmat.w | matrix | a matrix containing the weights for the bonds between each pair of atoms |
cmat.x | matrix | the projection of the bond on the x axis |
cmat.y | matrix | the projection of the bond on the y axis |
cmat.z | matrix | the projection of the bond on the z axis |
: CONTACT_MATRIXAdjacency matrix in which two atoms are adjacent if they are within a certain cutoff. More details GROUPspecifies the list of atoms that should be assumed indistinguishable=1-100 COMPONENTS also calculate the components of the vectors connecting the atoms in the contact matrix SWITCHthe input for the switching function that acts upon the distance between each pair of atoms. Options for this keyword are explained in the documentation for LESS_THAN.={RATIONAL D_0=2.0 R_0=1.0}
onesThe ONES action with label ones calculates the following quantities: Quantity | Type | Description |
ones | vector | a vector of ones with the required number of elements |
: ONESCreate a constant vector with all elements equal to one This action is a shortcut. More details SIZEthe number of ones that you would like to create=100
# ones: ONES SIZE=100
onesThe CONSTANT action with label ones calculates the following quantities: Quantity | Type | Description |
ones | vector | the constant value that was read from the plumed input |
: CONSTANTCreate a constant value that can be passed to actions More details NOLOG do not report all the read in scalars in the log VALUESthe numbers that are in your constant value=1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
# --- End of included input ---
coordThe MATRIX_VECTOR_PRODUCT action with label coord calculates the following quantities: Quantity | Type | Description |
coord | vector | the vector that is obtained by taking the product between the matrix and the vector that were input |
: MATRIX_VECTOR_PRODUCTCalculate the product of the matrix and the vector More details ARGthe label for the matrix and the vector/scalar that are being multiplied=cmat.w,ones
shThe SPHERICAL_HARMONIC action with label sh calculates the following quantities: Quantity | Type | Description |
sh.rm-n1 | matrix | the real parts of the spherical harmonic values with the m value given This is the n1th of these quantities |
sh.rm-0 | matrix | the real parts of the spherical harmonic values with the m value given This is the 0th of these quantities |
sh.rm-p1 | matrix | the real parts of the spherical harmonic values with the m value given This is the p1th of these quantities |
sh.im-n1 | matrix | the real parts of the spherical harmonic values with the m value given This is the n1th of these quantities |
sh.im-0 | matrix | the real parts of the spherical harmonic values with the m value given This is the 0th of these quantities |
sh.im-p1 | matrix | the real parts of the spherical harmonic values with the m value given This is the p1th of these quantities |
: SPHERICAL_HARMONICCalculate the values of all the spherical harmonic funtions for a particular value of l. More details ARGthe values input to this function=cmat.x,cmat.y,cmat.z,cmat.w Lthe value of the angular momentum=1
spThe MATRIX_VECTOR_PRODUCT action with label sp calculates the following quantities: Quantity | Type | Description |
sp.rm-n1 | vector | the product of the matrix sh.rm-n1 and the vector ones |
sp.rm-0 | vector | the product of the matrix sh.rm-0 and the vector ones |
sp.rm-p1 | vector | the product of the matrix sh.rm-p1 and the vector ones |
sp.im-n1 | vector | the product of the matrix sh.im-n1 and the vector ones |
sp.im-0 | vector | the product of the matrix sh.im-0 and the vector ones |
sp.im-p1 | vector | the product of the matrix sh.im-p1 and the vector ones |
: MATRIX_VECTOR_PRODUCTCalculate the product of the matrix and the vector More details ARGthe label for the matrix and the vector/scalar that are being multiplied=sh.*,ones
q1-rmn-n1The CUSTOM action with label q1-rmn-n1 calculates the following quantities: Quantity | Type | Description |
q1-rmn-n1 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=sp.rm-n1,coord FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q1-imn-n1The CUSTOM action with label q1-imn-n1 calculates the following quantities: Quantity | Type | Description |
q1-imn-n1 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=sp.im-n1,coord FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q1-rmn-0The CUSTOM action with label q1-rmn-0 calculates the following quantities: Quantity | Type | Description |
q1-rmn-0 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=sp.rm-0,coord FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q1-imn-0The CUSTOM action with label q1-imn-0 calculates the following quantities: Quantity | Type | Description |
q1-imn-0 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=sp.im-0,coord FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q1-rmn-p1The CUSTOM action with label q1-rmn-p1 calculates the following quantities: Quantity | Type | Description |
q1-rmn-p1 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=sp.rm-p1,coord FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q1-imn-p1The CUSTOM action with label q1-imn-p1 calculates the following quantities: Quantity | Type | Description |
q1-imn-p1 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=sp.im-p1,coord FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q1_2The COMBINE action with label q1_2 calculates the following quantities: Quantity | Type | Description |
q1_2 | vector | the vector obtained by doing an element-wise application of a linear compbination to the input vectors |
: COMBINECalculate a polynomial combination of a set of other variables. More details PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO POWERS the powers to which you are raising each of the arguments in your function=2,2,2,2,2,2 ARGthe values input to this function=q1-rmn-n1,q1-imn-n1,q1-rmn-0,q1-imn-0,q1-rmn-p1,q1-imn-p1
q1The CUSTOM action with label q1 calculates the following quantities: Quantity | Type | Description |
q1 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=q1_2 FUNCthe function you wish to evaluate=sqrt(x) PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q1_meanThe MEAN action with label q1_mean calculates the following quantities: Quantity | Type | Description |
q1_mean | scalar | the mean of all the elements in the input vector |
: MEANCalculate the arithmetic mean of the elements in a vector More details ARGthe values input to this function=q1 PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
PRINTPrint quantities to a file. More details ARGthe labels of the values that you would like to print to the file=q1_mean FILEthe name of the file on which to output these quantities=colvar
The average that is being calculated here is:
\[\langle q_l \rangle = \frac{1}{N} \sum_{i=1}^N q_l(i)\]
which is also what is computed if we use the following shortcut:
Click on the labels of the actions for more information on what each action computes
q1The Q1 action with label q1 calculates the following quantities: Quantity | Type | Description |
q1 | vector | the norms of the vectors of spherical harmonic coefficients |
q1_mean | scalar | the mean of the colvars |
: Q1Calculate 1st order Steinhardt parameters This action is a shortcut. More details SPECIESthe list of atoms for which the symmetry function is being calculated and the atoms that can be in the environments=1-100 SWITCHthe switching function that it used in the construction of the contact matrix. Options for this keyword are explained in the documentation for LESS_THAN.={RATIONAL D_0=2.0 R_0=1.0} MEAN calculate the mean of all the quantities
# q1: Q1 SPECIES=1-100 SWITCH={RATIONAL D_0=2.0 R_0=1.0} MEAN
q1_grpThe GROUP action with label q1_grp calculates the following quantities: Quantity | Type | Description |
q1_grp | atoms | indices of atoms specified in GROUP |
: GROUPDefine a group of atoms so that a particular list of atoms can be referenced with a single label in definitions of CVs or virtual atoms. More details ATOMSthe numerical indexes for the set of atoms in the group=1-100
q1_matThe CONTACT_MATRIX action with label q1_mat calculates the following quantities: Quantity | Type | Description |
q1_mat.w | matrix | a matrix containing the weights for the bonds between each pair of atoms |
q1_mat.x | matrix | the projection of the bond on the x axis |
q1_mat.y | matrix | the projection of the bond on the y axis |
q1_mat.z | matrix | the projection of the bond on the z axis |
: CONTACT_MATRIXAdjacency matrix in which two atoms are adjacent if they are within a certain cutoff. More details GROUPspecifies the list of atoms that should be assumed indistinguishable=1-100 SWITCHthe input for the switching function that acts upon the distance between each pair of atoms. Options for this keyword are explained in the documentation for LESS_THAN.={RATIONAL D_0=2.0 R_0=1.0} COMPONENTS also calculate the components of the vectors connecting the atoms in the contact matrix
q1_shThe SPHERICAL_HARMONIC action with label q1_sh calculates the following quantities: Quantity | Type | Description |
q1_sh.rm-n1 | matrix | the real parts of the spherical harmonic values with the m value given This is the n1th of these quantities |
q1_sh.rm-0 | matrix | the real parts of the spherical harmonic values with the m value given This is the 0th of these quantities |
q1_sh.rm-p1 | matrix | the real parts of the spherical harmonic values with the m value given This is the p1th of these quantities |
q1_sh.im-n1 | matrix | the real parts of the spherical harmonic values with the m value given This is the n1th of these quantities |
q1_sh.im-0 | matrix | the real parts of the spherical harmonic values with the m value given This is the 0th of these quantities |
q1_sh.im-p1 | matrix | the real parts of the spherical harmonic values with the m value given This is the p1th of these quantities |
: SPHERICAL_HARMONICCalculate the values of all the spherical harmonic funtions for a particular value of l. More details ARGthe values input to this function=q1_mat.x,q1_mat.y,q1_mat.z,q1_mat.w Lthe value of the angular momentum=1
q1_denom_onesThe CONSTANT action with label q1_denom_ones calculates the following quantities: Quantity | Type | Description |
q1_denom_ones | vector | the constant value that was read from the plumed input |
: ONESCreate a constant vector with all elements equal to one More details SIZEthe number of ones that you would like to create=100
q1_denomThe MATRIX_VECTOR_PRODUCT action with label q1_denom calculates the following quantities: Quantity | Type | Description |
q1_denom | vector | the vector that is obtained by taking the product between the matrix and the vector that were input |
: MATRIX_VECTOR_PRODUCTCalculate the product of the matrix and the vector More details ARGthe label for the matrix and the vector/scalar that are being multiplied=q1_mat.w,q1_denom_ones
q1_spThe MATRIX_VECTOR_PRODUCT action with label q1_sp calculates the following quantities: Quantity | Type | Description |
q1_sp.rm-n1 | vector | the product of the matrix q1_sh.rm-n1 and the vector q1_denom_ones |
q1_sp.rm-0 | vector | the product of the matrix q1_sh.rm-0 and the vector q1_denom_ones |
q1_sp.rm-p1 | vector | the product of the matrix q1_sh.rm-p1 and the vector q1_denom_ones |
q1_sp.im-n1 | vector | the product of the matrix q1_sh.im-n1 and the vector q1_denom_ones |
q1_sp.im-0 | vector | the product of the matrix q1_sh.im-0 and the vector q1_denom_ones |
q1_sp.im-p1 | vector | the product of the matrix q1_sh.im-p1 and the vector q1_denom_ones |
: MATRIX_VECTOR_PRODUCTCalculate the product of the matrix and the vector More details ARGthe label for the matrix and the vector/scalar that are being multiplied=q1_sh.*,q1_denom_ones
q1_norm2The COMBINE action with label q1_norm2 calculates the following quantities: Quantity | Type | Description |
q1_norm2 | vector | the vector obtained by doing an element-wise application of a linear compbination to the input vectors |
: COMBINECalculate a polynomial combination of a set of other variables. More details PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO POWERS the powers to which you are raising each of the arguments in your function=2,2,2,2,2,2 ARGthe values input to this function=q1_sp.rm-n1,q1_sp.im-n1,q1_sp.rm-0,q1_sp.im-0,q1_sp.rm-p1,q1_sp.im-p1
q1_normThe CUSTOM action with label q1_norm calculates the following quantities: Quantity | Type | Description |
q1_norm | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=q1_norm2 FUNCthe function you wish to evaluate=sqrt(x) PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q1The CUSTOM action with label q1 calculates the following quantities: Quantity | Type | Description |
q1 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=q1_norm,q1_denom FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q1_meanThe MEAN action with label q1_mean calculates the following quantities: Quantity | Type | Description |
q1_mean | scalar | the mean of all the elements in the input vector |
: MEANCalculate the arithmetic mean of the elements in a vector More details ARGthe values input to this function=q1 PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
# --- End of included input --- PRINTPrint quantities to a file. More details ARGthe labels of the values that you would like to print to the file=q1_mean FILEthe name of the file on which to output these quantities=colvar
We do not need to average the $q_l(i)$ values. We could instead calculate the average of the $q_{lm}(i)$ values and the magnitude of the resulting vector like this:
Click on the labels of the actions for more information on what each action computes
cmatThe CONTACT_MATRIX action with label cmat calculates the following quantities: Quantity | Type | Description |
cmat.w | matrix | a matrix containing the weights for the bonds between each pair of atoms |
cmat.x | matrix | the projection of the bond on the x axis |
cmat.y | matrix | the projection of the bond on the y axis |
cmat.z | matrix | the projection of the bond on the z axis |
: CONTACT_MATRIXAdjacency matrix in which two atoms are adjacent if they are within a certain cutoff. More details GROUPspecifies the list of atoms that should be assumed indistinguishable=1-100 COMPONENTS also calculate the components of the vectors connecting the atoms in the contact matrix SWITCHthe input for the switching function that acts upon the distance between each pair of atoms. Options for this keyword are explained in the documentation for LESS_THAN.={RATIONAL D_0=2.0 R_0=1.0}
onesThe ONES action with label ones calculates the following quantities: Quantity | Type | Description |
ones | vector | a vector of ones with the required number of elements |
: ONESCreate a constant vector with all elements equal to one This action is a shortcut. More details SIZEthe number of ones that you would like to create=100
# ones: ONES SIZE=100
onesThe CONSTANT action with label ones calculates the following quantities: Quantity | Type | Description |
ones | vector | the constant value that was read from the plumed input |
: CONSTANTCreate a constant value that can be passed to actions More details NOLOG do not report all the read in scalars in the log VALUESthe numbers that are in your constant value=1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
# --- End of included input ---
coordThe MATRIX_VECTOR_PRODUCT action with label coord calculates the following quantities: Quantity | Type | Description |
coord | vector | the vector that is obtained by taking the product between the matrix and the vector that were input |
: MATRIX_VECTOR_PRODUCTCalculate the product of the matrix and the vector More details ARGthe label for the matrix and the vector/scalar that are being multiplied=cmat.w,ones
shThe SPHERICAL_HARMONIC action with label sh calculates the following quantities: Quantity | Type | Description |
sh.rm-n1 | matrix | the real parts of the spherical harmonic values with the m value given This is the n1th of these quantities |
sh.rm-0 | matrix | the real parts of the spherical harmonic values with the m value given This is the 0th of these quantities |
sh.rm-p1 | matrix | the real parts of the spherical harmonic values with the m value given This is the p1th of these quantities |
sh.im-n1 | matrix | the real parts of the spherical harmonic values with the m value given This is the n1th of these quantities |
sh.im-0 | matrix | the real parts of the spherical harmonic values with the m value given This is the 0th of these quantities |
sh.im-p1 | matrix | the real parts of the spherical harmonic values with the m value given This is the p1th of these quantities |
: SPHERICAL_HARMONICCalculate the values of all the spherical harmonic funtions for a particular value of l. More details ARGthe values input to this function=cmat.x,cmat.y,cmat.z,cmat.w Lthe value of the angular momentum=1
spThe MATRIX_VECTOR_PRODUCT action with label sp calculates the following quantities: Quantity | Type | Description |
sp.rm-n1 | vector | the product of the matrix sh.rm-n1 and the vector ones |
sp.rm-0 | vector | the product of the matrix sh.rm-0 and the vector ones |
sp.rm-p1 | vector | the product of the matrix sh.rm-p1 and the vector ones |
sp.im-n1 | vector | the product of the matrix sh.im-n1 and the vector ones |
sp.im-0 | vector | the product of the matrix sh.im-0 and the vector ones |
sp.im-p1 | vector | the product of the matrix sh.im-p1 and the vector ones |
: MATRIX_VECTOR_PRODUCTCalculate the product of the matrix and the vector More details ARGthe label for the matrix and the vector/scalar that are being multiplied=sh.*,ones
q1-rmn-n1The CUSTOM action with label q1-rmn-n1 calculates the following quantities: Quantity | Type | Description |
q1-rmn-n1 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=sp.rm-n1,coord FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q1-imn-n1The CUSTOM action with label q1-imn-n1 calculates the following quantities: Quantity | Type | Description |
q1-imn-n1 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=sp.im-n1,coord FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q1-rmn-0The CUSTOM action with label q1-rmn-0 calculates the following quantities: Quantity | Type | Description |
q1-rmn-0 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=sp.rm-0,coord FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q1-imn-0The CUSTOM action with label q1-imn-0 calculates the following quantities: Quantity | Type | Description |
q1-imn-0 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=sp.im-0,coord FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q1-rmn-p1The CUSTOM action with label q1-rmn-p1 calculates the following quantities: Quantity | Type | Description |
q1-rmn-p1 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=sp.rm-p1,coord FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q1-imn-p1The CUSTOM action with label q1-imn-p1 calculates the following quantities: Quantity | Type | Description |
q1-imn-p1 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=sp.im-p1,coord FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q1-rms-n1The MEAN action with label q1-rms-n1 calculates the following quantities: Quantity | Type | Description |
q1-rms-n1 | scalar | the mean of all the elements in the input vector |
: MEANCalculate the arithmetic mean of the elements in a vector More details ARGthe values input to this function=q1-rmn-n1 PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q1-ims-n1The MEAN action with label q1-ims-n1 calculates the following quantities: Quantity | Type | Description |
q1-ims-n1 | scalar | the mean of all the elements in the input vector |
: MEANCalculate the arithmetic mean of the elements in a vector More details ARGthe values input to this function=q1-imn-n1 PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q1-rms-0The MEAN action with label q1-rms-0 calculates the following quantities: Quantity | Type | Description |
q1-rms-0 | scalar | the mean of all the elements in the input vector |
: MEANCalculate the arithmetic mean of the elements in a vector More details ARGthe values input to this function=q1-rmn-0 PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q1-ims-0The MEAN action with label q1-ims-0 calculates the following quantities: Quantity | Type | Description |
q1-ims-0 | scalar | the mean of all the elements in the input vector |
: MEANCalculate the arithmetic mean of the elements in a vector More details ARGthe values input to this function=q1-imn-0 PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q1-rms-p1The MEAN action with label q1-rms-p1 calculates the following quantities: Quantity | Type | Description |
q1-rms-p1 | scalar | the mean of all the elements in the input vector |
: MEANCalculate the arithmetic mean of the elements in a vector More details ARGthe values input to this function=q1-rmn-p1 PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q1-ims-p1The MEAN action with label q1-ims-p1 calculates the following quantities: Quantity | Type | Description |
q1-ims-p1 | scalar | the mean of all the elements in the input vector |
: MEANCalculate the arithmetic mean of the elements in a vector More details ARGthe values input to this function=q1-imn-p1 PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q1_mean2The COMBINE action with label q1_mean2 calculates the following quantities: Quantity | Type | Description |
q1_mean2 | scalar | a linear compbination |
: COMBINECalculate a polynomial combination of a set of other variables. More details PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO POWERS the powers to which you are raising each of the arguments in your function=2,2,2,2,2,2 ARGthe values input to this function=q1-rms-n1,q1-ims-n1,q1-rms-0,q1-ims-0,q1-rms-p1,q1-ims-p1
q1_meanThe CUSTOM action with label q1_mean calculates the following quantities: Quantity | Type | Description |
q1_mean | scalar | an arbitrary function |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=q1_mean2 FUNCthe function you wish to evaluate=sqrt(x) PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
PRINTPrint quantities to a file. More details ARGthe labels of the values that you would like to print to the file=q1_mean FILEthe name of the file on which to output these quantities=colvar
The quantity that has been computed by this input is:
\[\langle q_l \rangle = \sqrt{ \sum_{m=-l}^l | \langle q_{lm} \rangle |^2 } \qquad \textrm{where} \qquad \langle q_{lm} \rangle = \frac{1}{N} \sum_{i=1}^N q_{lm}(i)\]
This quantity can also be calculated using the following shortcut input:
Click on the labels of the actions for more information on what each action computes
q1The Q1 action with label q1 calculates the following quantities: Quantity | Type | Description |
q1 | vector | the norms of the vectors of spherical harmonic coefficients |
: Q1Calculate 1st order Steinhardt parameters This action is a shortcut. More details SPECIESthe list of atoms for which the symmetry function is being calculated and the atoms that can be in the environments=1-100 SWITCHthe switching function that it used in the construction of the contact matrix. Options for this keyword are explained in the documentation for LESS_THAN.={RATIONAL D_0=2.0 R_0=1.0} VMEAN calculate the norm of the mean vector
# q1: Q1 SPECIES=1-100 SWITCH={RATIONAL D_0=2.0 R_0=1.0} VMEAN
q1_grpThe GROUP action with label q1_grp calculates the following quantities: Quantity | Type | Description |
q1_grp | atoms | indices of atoms specified in GROUP |
: GROUPDefine a group of atoms so that a particular list of atoms can be referenced with a single label in definitions of CVs or virtual atoms. More details ATOMSthe numerical indexes for the set of atoms in the group=1-100
q1_matThe CONTACT_MATRIX action with label q1_mat calculates the following quantities: Quantity | Type | Description |
q1_mat.w | matrix | a matrix containing the weights for the bonds between each pair of atoms |
q1_mat.x | matrix | the projection of the bond on the x axis |
q1_mat.y | matrix | the projection of the bond on the y axis |
q1_mat.z | matrix | the projection of the bond on the z axis |
: CONTACT_MATRIXAdjacency matrix in which two atoms are adjacent if they are within a certain cutoff. More details GROUPspecifies the list of atoms that should be assumed indistinguishable=1-100 SWITCHthe input for the switching function that acts upon the distance between each pair of atoms. Options for this keyword are explained in the documentation for LESS_THAN.={RATIONAL D_0=2.0 R_0=1.0} COMPONENTS also calculate the components of the vectors connecting the atoms in the contact matrix
q1_shThe SPHERICAL_HARMONIC action with label q1_sh calculates the following quantities: Quantity | Type | Description |
q1_sh.rm-n1 | matrix | the real parts of the spherical harmonic values with the m value given This is the n1th of these quantities |
q1_sh.rm-0 | matrix | the real parts of the spherical harmonic values with the m value given This is the 0th of these quantities |
q1_sh.rm-p1 | matrix | the real parts of the spherical harmonic values with the m value given This is the p1th of these quantities |
q1_sh.im-n1 | matrix | the real parts of the spherical harmonic values with the m value given This is the n1th of these quantities |
q1_sh.im-0 | matrix | the real parts of the spherical harmonic values with the m value given This is the 0th of these quantities |
q1_sh.im-p1 | matrix | the real parts of the spherical harmonic values with the m value given This is the p1th of these quantities |
: SPHERICAL_HARMONICCalculate the values of all the spherical harmonic funtions for a particular value of l. More details ARGthe values input to this function=q1_mat.x,q1_mat.y,q1_mat.z,q1_mat.w Lthe value of the angular momentum=1
q1_denom_onesThe CONSTANT action with label q1_denom_ones calculates the following quantities: Quantity | Type | Description |
q1_denom_ones | vector | the constant value that was read from the plumed input |
: ONESCreate a constant vector with all elements equal to one More details SIZEthe number of ones that you would like to create=100
q1_denomThe MATRIX_VECTOR_PRODUCT action with label q1_denom calculates the following quantities: Quantity | Type | Description |
q1_denom | vector | the vector that is obtained by taking the product between the matrix and the vector that were input |
: MATRIX_VECTOR_PRODUCTCalculate the product of the matrix and the vector More details ARGthe label for the matrix and the vector/scalar that are being multiplied=q1_mat.w,q1_denom_ones
q1_spThe MATRIX_VECTOR_PRODUCT action with label q1_sp calculates the following quantities: Quantity | Type | Description |
q1_sp.rm-n1 | vector | the product of the matrix q1_sh.rm-n1 and the vector q1_denom_ones |
q1_sp.rm-0 | vector | the product of the matrix q1_sh.rm-0 and the vector q1_denom_ones |
q1_sp.rm-p1 | vector | the product of the matrix q1_sh.rm-p1 and the vector q1_denom_ones |
q1_sp.im-n1 | vector | the product of the matrix q1_sh.im-n1 and the vector q1_denom_ones |
q1_sp.im-0 | vector | the product of the matrix q1_sh.im-0 and the vector q1_denom_ones |
q1_sp.im-p1 | vector | the product of the matrix q1_sh.im-p1 and the vector q1_denom_ones |
: MATRIX_VECTOR_PRODUCTCalculate the product of the matrix and the vector More details ARGthe label for the matrix and the vector/scalar that are being multiplied=q1_sh.*,q1_denom_ones
q1_rmn-n1The CUSTOM action with label q1_rmn-n1 calculates the following quantities: Quantity | Type | Description |
q1_rmn-n1 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=q1_sp.rm-n1,q1_denom FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q1_imn-n1The CUSTOM action with label q1_imn-n1 calculates the following quantities: Quantity | Type | Description |
q1_imn-n1 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=q1_sp.im-n1,q1_denom FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q1_rmn-0The CUSTOM action with label q1_rmn-0 calculates the following quantities: Quantity | Type | Description |
q1_rmn-0 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=q1_sp.rm-0,q1_denom FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q1_imn-0The CUSTOM action with label q1_imn-0 calculates the following quantities: Quantity | Type | Description |
q1_imn-0 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=q1_sp.im-0,q1_denom FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q1_rmn-p1The CUSTOM action with label q1_rmn-p1 calculates the following quantities: Quantity | Type | Description |
q1_rmn-p1 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=q1_sp.rm-p1,q1_denom FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q1_imn-p1The CUSTOM action with label q1_imn-p1 calculates the following quantities: Quantity | Type | Description |
q1_imn-p1 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=q1_sp.im-p1,q1_denom FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q1_rms-n1The MEAN action with label q1_rms-n1 calculates the following quantities: Quantity | Type | Description |
q1_rms-n1 | scalar | the mean of all the elements in the input vector |
: MEANCalculate the arithmetic mean of the elements in a vector More details ARGthe values input to this function=q1_rmn-n1 PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q1_ims-n1The MEAN action with label q1_ims-n1 calculates the following quantities: Quantity | Type | Description |
q1_ims-n1 | scalar | the mean of all the elements in the input vector |
: MEANCalculate the arithmetic mean of the elements in a vector More details ARGthe values input to this function=q1_imn-n1 PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q1_rms-0The MEAN action with label q1_rms-0 calculates the following quantities: Quantity | Type | Description |
q1_rms-0 | scalar | the mean of all the elements in the input vector |
: MEANCalculate the arithmetic mean of the elements in a vector More details ARGthe values input to this function=q1_rmn-0 PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q1_ims-0The MEAN action with label q1_ims-0 calculates the following quantities: Quantity | Type | Description |
q1_ims-0 | scalar | the mean of all the elements in the input vector |
: MEANCalculate the arithmetic mean of the elements in a vector More details ARGthe values input to this function=q1_imn-0 PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q1_rms-p1The MEAN action with label q1_rms-p1 calculates the following quantities: Quantity | Type | Description |
q1_rms-p1 | scalar | the mean of all the elements in the input vector |
: MEANCalculate the arithmetic mean of the elements in a vector More details ARGthe values input to this function=q1_rmn-p1 PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q1_ims-p1The MEAN action with label q1_ims-p1 calculates the following quantities: Quantity | Type | Description |
q1_ims-p1 | scalar | the mean of all the elements in the input vector |
: MEANCalculate the arithmetic mean of the elements in a vector More details ARGthe values input to this function=q1_imn-p1 PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q1_vmean2The COMBINE action with label q1_vmean2 calculates the following quantities: Quantity | Type | Description |
q1_vmean2 | scalar | a linear compbination |
: COMBINECalculate a polynomial combination of a set of other variables. More details PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO POWERS the powers to which you are raising each of the arguments in your function=2,2,2,2,2,2 ARGthe values input to this function=q1_rms-n1,q1_ims-n1,q1_rms-0,q1_ims-0,q1_rms-p1,q1_ims-p1
q1_vmeanThe CUSTOM action with label q1_vmean calculates the following quantities: Quantity | Type | Description |
q1_vmean | scalar | an arbitrary function |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=q1_vmean2 FUNCthe function you wish to evaluate=sqrt(x) PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q1_norm2The COMBINE action with label q1_norm2 calculates the following quantities: Quantity | Type | Description |
q1_norm2 | vector | the vector obtained by doing an element-wise application of a linear compbination to the input vectors |
: COMBINECalculate a polynomial combination of a set of other variables. More details PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO POWERS the powers to which you are raising each of the arguments in your function=2,2,2,2,2,2 ARGthe values input to this function=q1_sp.rm-n1,q1_sp.im-n1,q1_sp.rm-0,q1_sp.im-0,q1_sp.rm-p1,q1_sp.im-p1
q1_normThe CUSTOM action with label q1_norm calculates the following quantities: Quantity | Type | Description |
q1_norm | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=q1_norm2 FUNCthe function you wish to evaluate=sqrt(x) PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q1The CUSTOM action with label q1 calculates the following quantities: Quantity | Type | Description |
q1 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=q1_norm,q1_denom FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
# --- End of included input --- PRINTPrint quantities to a file. More details ARGthe labels of the values that you would like to print to the file=q1_vmean FILEthe name of the file on which to output these quantities=colvar
These are probably not the only two ways of averaging over all the Steinhardt parameters. I hope, however, that from these two examples you can see just how much
flexibility can be achieved by only modifying the input file.
Calculating Leichner-Delago-style Steinhardt order parameters
In this paper Leichner and Delago proposed calculating local averages of the Steinhardt parameters. In PLUMED you can calculate these
order parameters using the following shortcut action:
Click on the labels of the actions for more information on what each action computes
q6The Q6 action with label q6 calculates the following quantities: Quantity | Type | Description |
q6 | vector | the norms of the vectors of spherical harmonic coefficients |
: Q6Calculate sixth order Steinhardt parameters. This action is a shortcut. More details SPECIESthe list of atoms for which the symmetry function is being calculated and the atoms that can be in the environments=1-100 SWITCHthe switching function that it used in the construction of the contact matrix. Options for this keyword are explained in the documentation for LESS_THAN.={RATIONAL D_0=2.0 R_0=1.0}
# q6: Q6 SPECIES=1-100 SWITCH={RATIONAL D_0=2.0 R_0=1.0}
q6_grpThe GROUP action with label q6_grp calculates the following quantities: Quantity | Type | Description |
q6_grp | atoms | indices of atoms specified in GROUP |
: GROUPDefine a group of atoms so that a particular list of atoms can be referenced with a single label in definitions of CVs or virtual atoms. More details ATOMSthe numerical indexes for the set of atoms in the group=1-100
q6_matThe CONTACT_MATRIX action with label q6_mat calculates the following quantities: Quantity | Type | Description |
q6_mat.w | matrix | a matrix containing the weights for the bonds between each pair of atoms |
q6_mat.x | matrix | the projection of the bond on the x axis |
q6_mat.y | matrix | the projection of the bond on the y axis |
q6_mat.z | matrix | the projection of the bond on the z axis |
: CONTACT_MATRIXAdjacency matrix in which two atoms are adjacent if they are within a certain cutoff. More details GROUPspecifies the list of atoms that should be assumed indistinguishable=1-100 SWITCHthe input for the switching function that acts upon the distance between each pair of atoms. Options for this keyword are explained in the documentation for LESS_THAN.={RATIONAL D_0=2.0 R_0=1.0} COMPONENTS also calculate the components of the vectors connecting the atoms in the contact matrix
q6_shThe SPHERICAL_HARMONIC action with label q6_sh calculates the following quantities: Quantity | Type | Description |
q6_sh.rm-n6 | matrix | the real parts of the spherical harmonic values with the m value given This is the n6th of these quantities |
q6_sh.rm-n5 | matrix | the real parts of the spherical harmonic values with the m value given This is the n5th of these quantities |
q6_sh.rm-n4 | matrix | the real parts of the spherical harmonic values with the m value given This is the n4th of these quantities |
q6_sh.rm-n3 | matrix | the real parts of the spherical harmonic values with the m value given This is the n3th of these quantities |
q6_sh.rm-n2 | matrix | the real parts of the spherical harmonic values with the m value given This is the n2th of these quantities |
q6_sh.rm-n1 | matrix | the real parts of the spherical harmonic values with the m value given This is the n1th of these quantities |
q6_sh.rm-0 | matrix | the real parts of the spherical harmonic values with the m value given This is the 0th of these quantities |
q6_sh.rm-p1 | matrix | the real parts of the spherical harmonic values with the m value given This is the p1th of these quantities |
q6_sh.rm-p2 | matrix | the real parts of the spherical harmonic values with the m value given This is the p2th of these quantities |
q6_sh.rm-p3 | matrix | the real parts of the spherical harmonic values with the m value given This is the p3th of these quantities |
q6_sh.rm-p4 | matrix | the real parts of the spherical harmonic values with the m value given This is the p4th of these quantities |
q6_sh.rm-p5 | matrix | the real parts of the spherical harmonic values with the m value given This is the p5th of these quantities |
q6_sh.rm-p6 | matrix | the real parts of the spherical harmonic values with the m value given This is the p6th of these quantities |
q6_sh.im-n6 | matrix | the real parts of the spherical harmonic values with the m value given This is the n6th of these quantities |
q6_sh.im-n5 | matrix | the real parts of the spherical harmonic values with the m value given This is the n5th of these quantities |
q6_sh.im-n4 | matrix | the real parts of the spherical harmonic values with the m value given This is the n4th of these quantities |
q6_sh.im-n3 | matrix | the real parts of the spherical harmonic values with the m value given This is the n3th of these quantities |
q6_sh.im-n2 | matrix | the real parts of the spherical harmonic values with the m value given This is the n2th of these quantities |
q6_sh.im-n1 | matrix | the real parts of the spherical harmonic values with the m value given This is the n1th of these quantities |
q6_sh.im-0 | matrix | the real parts of the spherical harmonic values with the m value given This is the 0th of these quantities |
q6_sh.im-p1 | matrix | the real parts of the spherical harmonic values with the m value given This is the p1th of these quantities |
q6_sh.im-p2 | matrix | the real parts of the spherical harmonic values with the m value given This is the p2th of these quantities |
q6_sh.im-p3 | matrix | the real parts of the spherical harmonic values with the m value given This is the p3th of these quantities |
q6_sh.im-p4 | matrix | the real parts of the spherical harmonic values with the m value given This is the p4th of these quantities |
q6_sh.im-p5 | matrix | the real parts of the spherical harmonic values with the m value given This is the p5th of these quantities |
q6_sh.im-p6 | matrix | the real parts of the spherical harmonic values with the m value given This is the p6th of these quantities |
: SPHERICAL_HARMONICCalculate the values of all the spherical harmonic funtions for a particular value of l. More details ARGthe values input to this function=q6_mat.x,q6_mat.y,q6_mat.z,q6_mat.w Lthe value of the angular momentum=6
q6_denom_onesThe CONSTANT action with label q6_denom_ones calculates the following quantities: Quantity | Type | Description |
q6_denom_ones | vector | the constant value that was read from the plumed input |
: ONESCreate a constant vector with all elements equal to one More details SIZEthe number of ones that you would like to create=100
q6_denomThe MATRIX_VECTOR_PRODUCT action with label q6_denom calculates the following quantities: Quantity | Type | Description |
q6_denom | vector | the vector that is obtained by taking the product between the matrix and the vector that were input |
: MATRIX_VECTOR_PRODUCTCalculate the product of the matrix and the vector More details ARGthe label for the matrix and the vector/scalar that are being multiplied=q6_mat.w,q6_denom_ones
q6_spThe MATRIX_VECTOR_PRODUCT action with label q6_sp calculates the following quantities: Quantity | Type | Description |
q6_sp.rm-n6 | vector | the product of the matrix q6_sh.rm-n6 and the vector q6_denom_ones |
q6_sp.rm-n5 | vector | the product of the matrix q6_sh.rm-n5 and the vector q6_denom_ones |
q6_sp.rm-n4 | vector | the product of the matrix q6_sh.rm-n4 and the vector q6_denom_ones |
q6_sp.rm-n3 | vector | the product of the matrix q6_sh.rm-n3 and the vector q6_denom_ones |
q6_sp.rm-n2 | vector | the product of the matrix q6_sh.rm-n2 and the vector q6_denom_ones |
q6_sp.rm-n1 | vector | the product of the matrix q6_sh.rm-n1 and the vector q6_denom_ones |
q6_sp.rm-0 | vector | the product of the matrix q6_sh.rm-0 and the vector q6_denom_ones |
q6_sp.rm-p1 | vector | the product of the matrix q6_sh.rm-p1 and the vector q6_denom_ones |
q6_sp.rm-p2 | vector | the product of the matrix q6_sh.rm-p2 and the vector q6_denom_ones |
q6_sp.rm-p3 | vector | the product of the matrix q6_sh.rm-p3 and the vector q6_denom_ones |
q6_sp.rm-p4 | vector | the product of the matrix q6_sh.rm-p4 and the vector q6_denom_ones |
q6_sp.rm-p5 | vector | the product of the matrix q6_sh.rm-p5 and the vector q6_denom_ones |
q6_sp.rm-p6 | vector | the product of the matrix q6_sh.rm-p6 and the vector q6_denom_ones |
q6_sp.im-n6 | vector | the product of the matrix q6_sh.im-n6 and the vector q6_denom_ones |
q6_sp.im-n5 | vector | the product of the matrix q6_sh.im-n5 and the vector q6_denom_ones |
q6_sp.im-n4 | vector | the product of the matrix q6_sh.im-n4 and the vector q6_denom_ones |
q6_sp.im-n3 | vector | the product of the matrix q6_sh.im-n3 and the vector q6_denom_ones |
q6_sp.im-n2 | vector | the product of the matrix q6_sh.im-n2 and the vector q6_denom_ones |
q6_sp.im-n1 | vector | the product of the matrix q6_sh.im-n1 and the vector q6_denom_ones |
q6_sp.im-0 | vector | the product of the matrix q6_sh.im-0 and the vector q6_denom_ones |
q6_sp.im-p1 | vector | the product of the matrix q6_sh.im-p1 and the vector q6_denom_ones |
q6_sp.im-p2 | vector | the product of the matrix q6_sh.im-p2 and the vector q6_denom_ones |
q6_sp.im-p3 | vector | the product of the matrix q6_sh.im-p3 and the vector q6_denom_ones |
q6_sp.im-p4 | vector | the product of the matrix q6_sh.im-p4 and the vector q6_denom_ones |
q6_sp.im-p5 | vector | the product of the matrix q6_sh.im-p5 and the vector q6_denom_ones |
q6_sp.im-p6 | vector | the product of the matrix q6_sh.im-p6 and the vector q6_denom_ones |
: MATRIX_VECTOR_PRODUCTCalculate the product of the matrix and the vector More details ARGthe label for the matrix and the vector/scalar that are being multiplied=q6_sh.*,q6_denom_ones
q6_norm2The COMBINE action with label q6_norm2 calculates the following quantities: Quantity | Type | Description |
q6_norm2 | vector | the vector obtained by doing an element-wise application of a linear compbination to the input vectors |
: COMBINECalculate a polynomial combination of a set of other variables. More details PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO POWERS the powers to which you are raising each of the arguments in your function=2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2 ARGthe values input to this function=q6_sp.rm-n6,q6_sp.im-n6,q6_sp.rm-n5,q6_sp.im-n5,q6_sp.rm-n4,q6_sp.im-n4,q6_sp.rm-n3,q6_sp.im-n3,q6_sp.rm-n2,q6_sp.im-n2,q6_sp.rm-n1,q6_sp.im-n1,q6_sp.rm-0,q6_sp.im-0,q6_sp.rm-p1,q6_sp.im-p1,q6_sp.rm-p2,q6_sp.im-p2,q6_sp.rm-p3,q6_sp.im-p3,q6_sp.rm-p4,q6_sp.im-p4,q6_sp.rm-p5,q6_sp.im-p5,q6_sp.rm-p6,q6_sp.im-p6
q6_normThe CUSTOM action with label q6_norm calculates the following quantities: Quantity | Type | Description |
q6_norm | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=q6_norm2 FUNCthe function you wish to evaluate=sqrt(x) PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q6The CUSTOM action with label q6 calculates the following quantities: Quantity | Type | Description |
q6 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=q6_norm,q6_denom FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
# --- End of included input ---
lq6The LOCAL_AVERAGE action with label lq6 calculates the following quantities: Quantity | Type | Description |
lq6 | vector | the values of the local averages |
: LOCAL_AVERAGECalculate averages over spherical regions centered on atoms This action is a shortcut. More details SPECIESthe list of atoms for which the symmetry function is being calculated and the atoms that can be in the environments=q6 SWITCHthe switching function that it used in the construction of the contact matrix. Options for this keyword are explained in the documentation for LESS_THAN.={RATIONAL D_0=3.0 R_0=1.5}
# lq6: LOCAL_AVERAGE SPECIES=q6 SWITCH={RATIONAL D_0=3.0 R_0=1.5}
lq6_grpThe GROUP action with label lq6_grp calculates the following quantities: Quantity | Type | Description |
lq6_grp | atoms | indices of atoms specified in GROUP |
: GROUPDefine a group of atoms so that a particular list of atoms can be referenced with a single label in definitions of CVs or virtual atoms. More details ATOMSthe numerical indexes for the set of atoms in the group=q6
lq6_matThe CONTACT_MATRIX action with label lq6_mat calculates the following quantities: Quantity | Type | Description |
lq6_mat | matrix | a matrix containing the weights for the bonds between each pair of atoms |
: CONTACT_MATRIXAdjacency matrix in which two atoms are adjacent if they are within a certain cutoff. More details GROUPspecifies the list of atoms that should be assumed indistinguishable=q6 SWITCHthe input for the switching function that acts upon the distance between each pair of atoms. Options for this keyword are explained in the documentation for LESS_THAN.={RATIONAL D_0=3.0 R_0=1.5}
lq6_onesThe CONSTANT action with label lq6_ones calculates the following quantities: Quantity | Type | Description |
lq6_ones | vector | the constant value that was read from the plumed input |
: ONESCreate a constant vector with all elements equal to one More details SIZEthe number of ones that you would like to create=100
lq6_coordThe MATRIX_VECTOR_PRODUCT action with label lq6_coord calculates the following quantities: Quantity | Type | Description |
lq6_coord | vector | the vector that is obtained by taking the product between the matrix and the vector that were input |
: MATRIX_VECTOR_PRODUCTCalculate the product of the matrix and the vector More details ARGthe label for the matrix and the vector/scalar that are being multiplied=lq6_mat,lq6_ones
q6_rmn-n6The CUSTOM action with label q6_rmn-n6 calculates the following quantities: Quantity | Type | Description |
q6_rmn-n6 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=q6_sp.rm-n6,q6_denom FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q6_imn-n6The CUSTOM action with label q6_imn-n6 calculates the following quantities: Quantity | Type | Description |
q6_imn-n6 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=q6_sp.im-n6,q6_denom FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q6_rmn-n5The CUSTOM action with label q6_rmn-n5 calculates the following quantities: Quantity | Type | Description |
q6_rmn-n5 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=q6_sp.rm-n5,q6_denom FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q6_imn-n5The CUSTOM action with label q6_imn-n5 calculates the following quantities: Quantity | Type | Description |
q6_imn-n5 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=q6_sp.im-n5,q6_denom FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q6_rmn-n4The CUSTOM action with label q6_rmn-n4 calculates the following quantities: Quantity | Type | Description |
q6_rmn-n4 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=q6_sp.rm-n4,q6_denom FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q6_imn-n4The CUSTOM action with label q6_imn-n4 calculates the following quantities: Quantity | Type | Description |
q6_imn-n4 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=q6_sp.im-n4,q6_denom FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q6_rmn-n3The CUSTOM action with label q6_rmn-n3 calculates the following quantities: Quantity | Type | Description |
q6_rmn-n3 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=q6_sp.rm-n3,q6_denom FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q6_imn-n3The CUSTOM action with label q6_imn-n3 calculates the following quantities: Quantity | Type | Description |
q6_imn-n3 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=q6_sp.im-n3,q6_denom FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q6_rmn-n2The CUSTOM action with label q6_rmn-n2 calculates the following quantities: Quantity | Type | Description |
q6_rmn-n2 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=q6_sp.rm-n2,q6_denom FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q6_imn-n2The CUSTOM action with label q6_imn-n2 calculates the following quantities: Quantity | Type | Description |
q6_imn-n2 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=q6_sp.im-n2,q6_denom FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q6_rmn-n1The CUSTOM action with label q6_rmn-n1 calculates the following quantities: Quantity | Type | Description |
q6_rmn-n1 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=q6_sp.rm-n1,q6_denom FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q6_imn-n1The CUSTOM action with label q6_imn-n1 calculates the following quantities: Quantity | Type | Description |
q6_imn-n1 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=q6_sp.im-n1,q6_denom FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q6_rmn-0The CUSTOM action with label q6_rmn-0 calculates the following quantities: Quantity | Type | Description |
q6_rmn-0 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=q6_sp.rm-0,q6_denom FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q6_imn-0The CUSTOM action with label q6_imn-0 calculates the following quantities: Quantity | Type | Description |
q6_imn-0 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=q6_sp.im-0,q6_denom FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q6_rmn-p1The CUSTOM action with label q6_rmn-p1 calculates the following quantities: Quantity | Type | Description |
q6_rmn-p1 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=q6_sp.rm-p1,q6_denom FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q6_imn-p1The CUSTOM action with label q6_imn-p1 calculates the following quantities: Quantity | Type | Description |
q6_imn-p1 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=q6_sp.im-p1,q6_denom FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q6_rmn-p2The CUSTOM action with label q6_rmn-p2 calculates the following quantities: Quantity | Type | Description |
q6_rmn-p2 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=q6_sp.rm-p2,q6_denom FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q6_imn-p2The CUSTOM action with label q6_imn-p2 calculates the following quantities: Quantity | Type | Description |
q6_imn-p2 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=q6_sp.im-p2,q6_denom FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q6_rmn-p3The CUSTOM action with label q6_rmn-p3 calculates the following quantities: Quantity | Type | Description |
q6_rmn-p3 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=q6_sp.rm-p3,q6_denom FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q6_imn-p3The CUSTOM action with label q6_imn-p3 calculates the following quantities: Quantity | Type | Description |
q6_imn-p3 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=q6_sp.im-p3,q6_denom FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q6_rmn-p4The CUSTOM action with label q6_rmn-p4 calculates the following quantities: Quantity | Type | Description |
q6_rmn-p4 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=q6_sp.rm-p4,q6_denom FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q6_imn-p4The CUSTOM action with label q6_imn-p4 calculates the following quantities: Quantity | Type | Description |
q6_imn-p4 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=q6_sp.im-p4,q6_denom FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q6_rmn-p5The CUSTOM action with label q6_rmn-p5 calculates the following quantities: Quantity | Type | Description |
q6_rmn-p5 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=q6_sp.rm-p5,q6_denom FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q6_imn-p5The CUSTOM action with label q6_imn-p5 calculates the following quantities: Quantity | Type | Description |
q6_imn-p5 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=q6_sp.im-p5,q6_denom FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q6_rmn-p6The CUSTOM action with label q6_rmn-p6 calculates the following quantities: Quantity | Type | Description |
q6_rmn-p6 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=q6_sp.rm-p6,q6_denom FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q6_imn-p6The CUSTOM action with label q6_imn-p6 calculates the following quantities: Quantity | Type | Description |
q6_imn-p6 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=q6_sp.im-p6,q6_denom FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
lq6_vstackThe VSTACK action with label lq6_vstack calculates the following quantities: Quantity | Type | Description |
lq6_vstack | matrix | a matrix that contains the input vectors in its columns |
: VSTACKCreate a matrix by stacking vectors together More details ARGthe values that you would like to stack together to construct the output matrix=q6_rmn-n6,q6_imn-n6,q6_rmn-n5,q6_imn-n5,q6_rmn-n4,q6_imn-n4,q6_rmn-n3,q6_imn-n3,q6_rmn-n2,q6_imn-n2,q6_rmn-n1,q6_imn-n1,q6_rmn-0,q6_imn-0,q6_rmn-p1,q6_imn-p1,q6_rmn-p2,q6_imn-p2,q6_rmn-p3,q6_imn-p3,q6_rmn-p4,q6_imn-p4,q6_rmn-p5,q6_imn-p5,q6_rmn-p6,q6_imn-p6
lq6_prodThe MATRIX_VECTOR_PRODUCT action with label lq6_prod calculates the following quantities: Quantity | Type | Description |
lq6_prod.q6_rmn-n6 | vector | the product of the matrix lq6_mat and the vector q6_rmn-n6 |
lq6_prod.q6_imn-n6 | vector | the product of the matrix lq6_mat and the vector q6_imn-n6 |
lq6_prod.q6_rmn-n5 | vector | the product of the matrix lq6_mat and the vector q6_rmn-n5 |
lq6_prod.q6_imn-n5 | vector | the product of the matrix lq6_mat and the vector q6_imn-n5 |
lq6_prod.q6_rmn-n4 | vector | the product of the matrix lq6_mat and the vector q6_rmn-n4 |
lq6_prod.q6_imn-n4 | vector | the product of the matrix lq6_mat and the vector q6_imn-n4 |
lq6_prod.q6_rmn-n3 | vector | the product of the matrix lq6_mat and the vector q6_rmn-n3 |
lq6_prod.q6_imn-n3 | vector | the product of the matrix lq6_mat and the vector q6_imn-n3 |
lq6_prod.q6_rmn-n2 | vector | the product of the matrix lq6_mat and the vector q6_rmn-n2 |
lq6_prod.q6_imn-n2 | vector | the product of the matrix lq6_mat and the vector q6_imn-n2 |
lq6_prod.q6_rmn-n1 | vector | the product of the matrix lq6_mat and the vector q6_rmn-n1 |
lq6_prod.q6_imn-n1 | vector | the product of the matrix lq6_mat and the vector q6_imn-n1 |
lq6_prod.q6_rmn-0 | vector | the product of the matrix lq6_mat and the vector q6_rmn-0 |
lq6_prod.q6_imn-0 | vector | the product of the matrix lq6_mat and the vector q6_imn-0 |
lq6_prod.q6_rmn-p1 | vector | the product of the matrix lq6_mat and the vector q6_rmn-p1 |
lq6_prod.q6_imn-p1 | vector | the product of the matrix lq6_mat and the vector q6_imn-p1 |
lq6_prod.q6_rmn-p2 | vector | the product of the matrix lq6_mat and the vector q6_rmn-p2 |
lq6_prod.q6_imn-p2 | vector | the product of the matrix lq6_mat and the vector q6_imn-p2 |
lq6_prod.q6_rmn-p3 | vector | the product of the matrix lq6_mat and the vector q6_rmn-p3 |
lq6_prod.q6_imn-p3 | vector | the product of the matrix lq6_mat and the vector q6_imn-p3 |
lq6_prod.q6_rmn-p4 | vector | the product of the matrix lq6_mat and the vector q6_rmn-p4 |
lq6_prod.q6_imn-p4 | vector | the product of the matrix lq6_mat and the vector q6_imn-p4 |
lq6_prod.q6_rmn-p5 | vector | the product of the matrix lq6_mat and the vector q6_rmn-p5 |
lq6_prod.q6_imn-p5 | vector | the product of the matrix lq6_mat and the vector q6_imn-p5 |
lq6_prod.q6_rmn-p6 | vector | the product of the matrix lq6_mat and the vector q6_rmn-p6 |
lq6_prod.q6_imn-p6 | vector | the product of the matrix lq6_mat and the vector q6_imn-p6 |
: MATRIX_VECTOR_PRODUCTCalculate the product of the matrix and the vector More details ARGthe label for the matrix and the vector/scalar that are being multiplied=lq6_mat,q6_rmn-n6,q6_imn-n6,q6_rmn-n5,q6_imn-n5,q6_rmn-n4,q6_imn-n4,q6_rmn-n3,q6_imn-n3,q6_rmn-n2,q6_imn-n2,q6_rmn-n1,q6_imn-n1,q6_rmn-0,q6_imn-0,q6_rmn-p1,q6_imn-p1,q6_rmn-p2,q6_imn-p2,q6_rmn-p3,q6_imn-p3,q6_rmn-p4,q6_imn-p4,q6_rmn-p5,q6_imn-p5,q6_rmn-p6,q6_imn-p6
lq6_vpstackThe VSTACK action with label lq6_vpstack calculates the following quantities: Quantity | Type | Description |
lq6_vpstack | matrix | a matrix that contains the input vectors in its columns |
: VSTACKCreate a matrix by stacking vectors together More details ARGthe values that you would like to stack together to construct the output matrix=lq6_prod.q6_rmn-n6,lq6_prod.q6_imn-n6,lq6_prod.q6_rmn-n5,lq6_prod.q6_imn-n5,lq6_prod.q6_rmn-n4,lq6_prod.q6_imn-n4,lq6_prod.q6_rmn-n3,lq6_prod.q6_imn-n3,lq6_prod.q6_rmn-n2,lq6_prod.q6_imn-n2,lq6_prod.q6_rmn-n1,lq6_prod.q6_imn-n1,lq6_prod.q6_rmn-0,lq6_prod.q6_imn-0,lq6_prod.q6_rmn-p1,lq6_prod.q6_imn-p1,lq6_prod.q6_rmn-p2,lq6_prod.q6_imn-p2,lq6_prod.q6_rmn-p3,lq6_prod.q6_imn-p3,lq6_prod.q6_rmn-p4,lq6_prod.q6_imn-p4,lq6_prod.q6_rmn-p5,lq6_prod.q6_imn-p5,lq6_prod.q6_rmn-p6,lq6_prod.q6_imn-p6
lq6_lonesThe CONSTANT action with label lq6_lones calculates the following quantities: Quantity | Type | Description |
lq6_lones | vector | the constant value that was read from the plumed input |
: ONESCreate a constant vector with all elements equal to one More details SIZEthe number of ones that you would like to create=26
lq6_unormThe OUTER_PRODUCT action with label lq6_unorm calculates the following quantities: Quantity | Type | Description |
lq6_unorm | matrix | a matrix containing the outer product of the two input vectors that was obtained using the function that was input |
: OUTER_PRODUCTCalculate the outer product matrix of two vectors More details ARGthe labels of the two vectors from which the outer product is being computed=lq6_coord,lq6_lones
lq6_avThe CUSTOM action with label lq6_av calculates the following quantities: Quantity | Type | Description |
lq6_av | matrix | the matrix obtained by doing an element-wise application of an arbitrary function to the input matrix |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=lq6_vpstack,lq6_vstack,lq6_unorm FUNCthe function you wish to evaluate=(x+y)/(1+z) PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
lq6_av2The CUSTOM action with label lq6_av2 calculates the following quantities: Quantity | Type | Description |
lq6_av2 | matrix | the matrix obtained by doing an element-wise application of an arbitrary function to the input matrix |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=lq6_av FUNCthe function you wish to evaluate=x*x PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
lq6_2The MATRIX_VECTOR_PRODUCT action with label lq6_2 calculates the following quantities: Quantity | Type | Description |
lq6_2 | vector | the vector that is obtained by taking the product between the matrix and the vector that were input |
: MATRIX_VECTOR_PRODUCTCalculate the product of the matrix and the vector More details ARGthe label for the matrix and the vector/scalar that are being multiplied=lq6_av2,lq6_lones
lq6The CUSTOM action with label lq6 calculates the following quantities: Quantity | Type | Description |
lq6 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=lq6_2 FUNCthe function you wish to evaluate=sqrt(x) PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
# --- End of included input ---
PRINTPrint quantities to a file. More details ARGthe labels of the values that you would like to print to the file=lq6 FILEthe name of the file on which to output these quantities=colvar
The expanded version of this shortcut looks rather complicated so lets consider a simpler calculation first. In the following input I am calculating a locally averaged
value for the coordination number:
Click on the labels of the actions for more information on what each action computes
cmatThe CONTACT_MATRIX action with label cmat calculates the following quantities: Quantity | Type | Description |
cmat | matrix | a matrix containing the weights for the bonds between each pair of atoms |
: CONTACT_MATRIXAdjacency matrix in which two atoms are adjacent if they are within a certain cutoff. More details GROUPspecifies the list of atoms that should be assumed indistinguishable=1-100 SWITCHthe input for the switching function that acts upon the distance between each pair of atoms. Options for this keyword are explained in the documentation for LESS_THAN.={RATIONAL D_0=2.0 R_0=1.0}
onesThe ONES action with label ones calculates the following quantities: Quantity | Type | Description |
ones | vector | a vector of ones with the required number of elements |
: ONESCreate a constant vector with all elements equal to one This action is a shortcut. More details SIZEthe number of ones that you would like to create=100
# ones: ONES SIZE=100
onesThe CONSTANT action with label ones calculates the following quantities: Quantity | Type | Description |
ones | vector | the constant value that was read from the plumed input |
: CONSTANTCreate a constant value that can be passed to actions More details NOLOG do not report all the read in scalars in the log VALUESthe numbers that are in your constant value=1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
# --- End of included input --- coordThe MATRIX_VECTOR_PRODUCT action with label coord calculates the following quantities: Quantity | Type | Description |
coord | vector | the vector that is obtained by taking the product between the matrix and the vector that were input |
: MATRIX_VECTOR_PRODUCTCalculate the product of the matrix and the vector More details ARGthe label for the matrix and the vector/scalar that are being multiplied=cmat,ones
cmat2The CONTACT_MATRIX action with label cmat2 calculates the following quantities: Quantity | Type | Description |
cmat2 | matrix | a matrix containing the weights for the bonds between each pair of atoms |
: CONTACT_MATRIXAdjacency matrix in which two atoms are adjacent if they are within a certain cutoff. More details GROUPspecifies the list of atoms that should be assumed indistinguishable=1-100 SWITCHthe input for the switching function that acts upon the distance between each pair of atoms. Options for this keyword are explained in the documentation for LESS_THAN.={RATIONAL D_0=2.0 R_0=1.0}
coord2The MATRIX_VECTOR_PRODUCT action with label coord2 calculates the following quantities: Quantity | Type | Description |
coord2 | vector | the vector that is obtained by taking the product between the matrix and the vector that were input |
: MATRIX_VECTOR_PRODUCTCalculate the product of the matrix and the vector More details ARGthe label for the matrix and the vector/scalar that are being multiplied=cmat2,ones
prodThe MATRIX_VECTOR_PRODUCT action with label prod calculates the following quantities: Quantity | Type | Description |
prod | vector | the vector that is obtained by taking the product between the matrix and the vector that were input |
: MATRIX_VECTOR_PRODUCTCalculate the product of the matrix and the vector More details ARGthe label for the matrix and the vector/scalar that are being multiplied=cmat2,coord
lavThe CUSTOM action with label lav calculates the following quantities: Quantity | Type | Description |
lav | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=prod,coord,coord2 FUNCthe function you wish to evaluate=(x+y)/(1+z) PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
PRINTPrint quantities to a file. More details ARGthe labels of the values that you would like to print to the file=lav FILEthe name of the file on which to output these quantities=colvar
The point I want to make with this input is that the heart of this process of taking a local average of a symmetry function involves multiplying the vector of symmetry function
values by a contact matrix. In other words, the locally averaged coordination number $\widehat{c}(i)$ can be computed as:
\[\widehat{c}(i) = \frac{c(i) + \sum_{j\ne i} \sigma(r_{ij})c(j)}{1 + \sum_{j\ne i} \sigma(r_{ij})}\]
where $\sigma(r_{ij})$ is a switching function that acts on the distance $r_{ij}$ between atom $i$ and atom $j$ and $c(i)$ is the coordination number of atom $i$.
With that in mind lets now consder the full input for the Leichner and Delago order parameters, which is as follows:
Click on the labels of the actions for more information on what each action computes
cmatThe CONTACT_MATRIX action with label cmat calculates the following quantities: Quantity | Type | Description |
cmat.w | matrix | a matrix containing the weights for the bonds between each pair of atoms |
cmat.x | matrix | the projection of the bond on the x axis |
cmat.y | matrix | the projection of the bond on the y axis |
cmat.z | matrix | the projection of the bond on the z axis |
: CONTACT_MATRIXAdjacency matrix in which two atoms are adjacent if they are within a certain cutoff. More details GROUPspecifies the list of atoms that should be assumed indistinguishable=1-100 COMPONENTS also calculate the components of the vectors connecting the atoms in the contact matrix SWITCHthe input for the switching function that acts upon the distance between each pair of atoms. Options for this keyword are explained in the documentation for LESS_THAN.={RATIONAL D_0=2.0 R_0=1.0}
onesThe ONES action with label ones calculates the following quantities: Quantity | Type | Description |
ones | vector | a vector of ones with the required number of elements |
: ONESCreate a constant vector with all elements equal to one This action is a shortcut. More details SIZEthe number of ones that you would like to create=100
# ones: ONES SIZE=100
onesThe CONSTANT action with label ones calculates the following quantities: Quantity | Type | Description |
ones | vector | the constant value that was read from the plumed input |
: CONSTANTCreate a constant value that can be passed to actions More details NOLOG do not report all the read in scalars in the log VALUESthe numbers that are in your constant value=1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
# --- End of included input --- coordThe MATRIX_VECTOR_PRODUCT action with label coord calculates the following quantities: Quantity | Type | Description |
coord | vector | the vector that is obtained by taking the product between the matrix and the vector that were input |
: MATRIX_VECTOR_PRODUCTCalculate the product of the matrix and the vector More details ARGthe label for the matrix and the vector/scalar that are being multiplied=cmat.w,ones
shThe SPHERICAL_HARMONIC action with label sh calculates the following quantities: Quantity | Type | Description |
sh.rm-n1 | matrix | the real parts of the spherical harmonic values with the m value given This is the n1th of these quantities |
sh.rm-0 | matrix | the real parts of the spherical harmonic values with the m value given This is the 0th of these quantities |
sh.rm-p1 | matrix | the real parts of the spherical harmonic values with the m value given This is the p1th of these quantities |
sh.im-n1 | matrix | the real parts of the spherical harmonic values with the m value given This is the n1th of these quantities |
sh.im-0 | matrix | the real parts of the spherical harmonic values with the m value given This is the 0th of these quantities |
sh.im-p1 | matrix | the real parts of the spherical harmonic values with the m value given This is the p1th of these quantities |
: SPHERICAL_HARMONICCalculate the values of all the spherical harmonic funtions for a particular value of l. More details ARGthe values input to this function=cmat.x,cmat.y,cmat.z,cmat.w Lthe value of the angular momentum=1
spThe MATRIX_VECTOR_PRODUCT action with label sp calculates the following quantities: Quantity | Type | Description |
sp.rm-n1 | vector | the product of the matrix sh.rm-n1 and the vector ones |
sp.rm-0 | vector | the product of the matrix sh.rm-0 and the vector ones |
sp.rm-p1 | vector | the product of the matrix sh.rm-p1 and the vector ones |
sp.im-n1 | vector | the product of the matrix sh.im-n1 and the vector ones |
sp.im-0 | vector | the product of the matrix sh.im-0 and the vector ones |
sp.im-p1 | vector | the product of the matrix sh.im-p1 and the vector ones |
: MATRIX_VECTOR_PRODUCTCalculate the product of the matrix and the vector More details ARGthe label for the matrix and the vector/scalar that are being multiplied=sh.*,ones
q1-rmn-n1The CUSTOM action with label q1-rmn-n1 calculates the following quantities: Quantity | Type | Description |
q1-rmn-n1 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=sp.rm-n1,coord FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q1-imn-n1The CUSTOM action with label q1-imn-n1 calculates the following quantities: Quantity | Type | Description |
q1-imn-n1 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=sp.im-n1,coord FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q1-rmn-0The CUSTOM action with label q1-rmn-0 calculates the following quantities: Quantity | Type | Description |
q1-rmn-0 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=sp.rm-0,coord FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q1-imn-0The CUSTOM action with label q1-imn-0 calculates the following quantities: Quantity | Type | Description |
q1-imn-0 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=sp.im-0,coord FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q1-rmn-p1The CUSTOM action with label q1-rmn-p1 calculates the following quantities: Quantity | Type | Description |
q1-rmn-p1 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=sp.rm-p1,coord FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q1-imn-p1The CUSTOM action with label q1-imn-p1 calculates the following quantities: Quantity | Type | Description |
q1-imn-p1 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=sp.im-p1,coord FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
cmat2The CONTACT_MATRIX action with label cmat2 calculates the following quantities: Quantity | Type | Description |
cmat2 | matrix | a matrix containing the weights for the bonds between each pair of atoms |
: CONTACT_MATRIXAdjacency matrix in which two atoms are adjacent if they are within a certain cutoff. More details GROUPspecifies the list of atoms that should be assumed indistinguishable=1-100 SWITCHthe input for the switching function that acts upon the distance between each pair of atoms. Options for this keyword are explained in the documentation for LESS_THAN.={RATIONAL D_0=2.0 R_0=1.0}
coord2The MATRIX_VECTOR_PRODUCT action with label coord2 calculates the following quantities: Quantity | Type | Description |
coord2 | vector | the vector that is obtained by taking the product between the matrix and the vector that were input |
: MATRIX_VECTOR_PRODUCTCalculate the product of the matrix and the vector More details ARGthe label for the matrix and the vector/scalar that are being multiplied=cmat2,ones
stackThe VSTACK action with label stack calculates the following quantities: Quantity | Type | Description |
stack | matrix | a matrix that contains the input vectors in its columns |
: VSTACKCreate a matrix by stacking vectors together More details ARGthe values that you would like to stack together to construct the output matrix=q1-rmn-n1,q1-imn-n1,q1-rmn-0,q1-imn-0,q1-rmn-p1,q1-imn-p1
prodThe MATRIX_VECTOR_PRODUCT action with label prod calculates the following quantities: Quantity | Type | Description |
prod.q1-rmn-n1 | vector | the product of the matrix cmat2 and the vector q1-rmn-n1 |
prod.q1-imn-n1 | vector | the product of the matrix cmat2 and the vector q1-imn-n1 |
prod.q1-rmn-0 | vector | the product of the matrix cmat2 and the vector q1-rmn-0 |
prod.q1-imn-0 | vector | the product of the matrix cmat2 and the vector q1-imn-0 |
prod.q1-rmn-p1 | vector | the product of the matrix cmat2 and the vector q1-rmn-p1 |
prod.q1-imn-p1 | vector | the product of the matrix cmat2 and the vector q1-imn-p1 |
: MATRIX_VECTOR_PRODUCTCalculate the product of the matrix and the vector More details ARGthe label for the matrix and the vector/scalar that are being multiplied=cmat2,q1-rmn-n1,q1-imn-n1,q1-rmn-0,q1-imn-0,q1-rmn-p1,q1-imn-p1
vpstackThe VSTACK action with label vpstack calculates the following quantities: Quantity | Type | Description |
vpstack | matrix | a matrix that contains the input vectors in its columns |
: VSTACKCreate a matrix by stacking vectors together More details ARGthe values that you would like to stack together to construct the output matrix=prod.q1-rmn-n1,prod.q1-imn-n1,prod.q1-rmn-0,prod.q1-imn-0,prod.q1-rmn-p1,prod.q1-imn-p1
lonesThe ONES action with label lones calculates the following quantities: Quantity | Type | Description |
lones | vector | a vector of ones with the required number of elements |
: ONESCreate a constant vector with all elements equal to one This action is a shortcut. More details SIZEthe number of ones that you would like to create=6
# lones: ONES SIZE=6
lonesThe CONSTANT action with label lones calculates the following quantities: Quantity | Type | Description |
lones | vector | the constant value that was read from the plumed input |
: CONSTANTCreate a constant value that can be passed to actions More details NOLOG do not report all the read in scalars in the log VALUESthe numbers that are in your constant value=1,1,1,1,1,1
# --- End of included input --- unormThe OUTER_PRODUCT action with label unorm calculates the following quantities: Quantity | Type | Description |
unorm | matrix | a matrix containing the outer product of the two input vectors that was obtained using the function that was input |
: OUTER_PRODUCTCalculate the outer product matrix of two vectors This action has hidden defaults. More details ARGthe labels of the two vectors from which the outer product is being computed=coord2,lones
unorm: OUTER_PRODUCTCalculate the outer product matrix of two vectors This action uses the defaults shown here. More details ARGthe labels of the two vectors from which the outer product is being computed=coord2,lones FUNC the function of the input vectors that should be put in the elements of the outer product=x*y
avThe CUSTOM action with label av calculates the following quantities: Quantity | Type | Description |
av | matrix | the matrix obtained by doing an element-wise application of an arbitrary function to the input matrix |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=vpstack,vpstack,unorm FUNCthe function you wish to evaluate=(x+y)/(1+z) PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
av2The CUSTOM action with label av2 calculates the following quantities: Quantity | Type | Description |
av2 | matrix | the matrix obtained by doing an element-wise application of an arbitrary function to the input matrix |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=av FUNCthe function you wish to evaluate=x*x PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
aq1_2The MATRIX_VECTOR_PRODUCT action with label aq1_2 calculates the following quantities: Quantity | Type | Description |
aq1_2 | vector | the vector that is obtained by taking the product between the matrix and the vector that were input |
: MATRIX_VECTOR_PRODUCTCalculate the product of the matrix and the vector More details ARGthe label for the matrix and the vector/scalar that are being multiplied=av2,lones
aq1The CUSTOM action with label aq1 calculates the following quantities: Quantity | Type | Description |
aq1 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=aq1_2 FUNCthe function you wish to evaluate=sqrt(x) PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
PRINTPrint quantities to a file. More details ARGthe labels of the values that you would like to print to the file=aq1 FILEthe name of the file on which to output these quantities=colvar
Notice that we do the same here as we did with the coordination number input. In other words, we calculate locally-averaged versions of the $q_{lm}(i)$ parameters using:
\[\widehat{q}{lm}(i) = \frac{q_{lm}(i) + \sum_{j\ne i} \sigma(r_{ij})q_{lm}(j)}{1 + \sum_{j\ne i} \sigma(r_{ij})}\]
The final, locally-averaged version of $\widehat{q}_l(i)$ is then defined as:
\[\widehat{q}_{l}(i) = \sqrt{ \sum_{m=-l}^l | \widehat{q}_{lm}(i) |^2 }\]
which is the familiar summing over the $l$ values that we have seen in earlier sectioms to make the final symmetry function rotationally invariant.
Calculating ten-Wolde-Frenkel-style Steinhard order parameters
Before discussing how the ten-Wolde-Frenkel order parameters are computed it is useful to introduce yet another variant on the Steinhardt parameter. This variant is computed as follows
\[\overline{q}_{lm}(i) = \frac{1}{\overline{q}_l} \sum_{j \ne i } \sigma(r_{ij})Y_l^m(\theta_{ij},\phi_{ij}) \qquad \textrm{where} \qquad \overline{q}_l(i) = \sqrt{ \sum_{m=-l}^l |q_{lm}(i)|^2 }\]
As always $\sigma(r_{ij})$ is a switching function that acts on the distance, $r_{ij}$, between atom $i$ and atom $j$. $Y_l^m(\theta_{ij},\phi_{ij})$ is then the spherical harmonic function which depends
on the direction the bond between atom $i$ and atom $j$ point in. Notice that this version of the Steinhardt parameter has the followign property:
\[\sum_{m=-l}^l \overline{q}_{lm}(i)^{*} \overline{q}_{lm}(i) = 1\]
We can compute the $\overline{q}_{lm}(i)$ values in PLUMED using the following input:
Click on the labels of the actions for more information on what each action computes
cmatThe CONTACT_MATRIX action with label cmat calculates the following quantities: Quantity | Type | Description |
cmat.w | matrix | a matrix containing the weights for the bonds between each pair of atoms |
cmat.x | matrix | the projection of the bond on the x axis |
cmat.y | matrix | the projection of the bond on the y axis |
cmat.z | matrix | the projection of the bond on the z axis |
: CONTACT_MATRIXAdjacency matrix in which two atoms are adjacent if they are within a certain cutoff. More details GROUPspecifies the list of atoms that should be assumed indistinguishable=1-100 COMPONENTS also calculate the components of the vectors connecting the atoms in the contact matrix SWITCHthe input for the switching function that acts upon the distance between each pair of atoms. Options for this keyword are explained in the documentation for LESS_THAN.={RATIONAL D_0=2.0 R_0=1.0}
onesThe ONES action with label ones calculates the following quantities: Quantity | Type | Description |
ones | vector | a vector of ones with the required number of elements |
: ONESCreate a constant vector with all elements equal to one This action is a shortcut. More details SIZEthe number of ones that you would like to create=100
# ones: ONES SIZE=100
onesThe CONSTANT action with label ones calculates the following quantities: Quantity | Type | Description |
ones | vector | the constant value that was read from the plumed input |
: CONSTANTCreate a constant value that can be passed to actions More details NOLOG do not report all the read in scalars in the log VALUESthe numbers that are in your constant value=1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
# --- End of included input --- coordThe MATRIX_VECTOR_PRODUCT action with label coord calculates the following quantities: Quantity | Type | Description |
coord | vector | the vector that is obtained by taking the product between the matrix and the vector that were input |
: MATRIX_VECTOR_PRODUCTCalculate the product of the matrix and the vector More details ARGthe label for the matrix and the vector/scalar that are being multiplied=cmat.w,ones
shThe SPHERICAL_HARMONIC action with label sh calculates the following quantities: Quantity | Type | Description |
sh.rm-n1 | matrix | the real parts of the spherical harmonic values with the m value given This is the n1th of these quantities |
sh.rm-0 | matrix | the real parts of the spherical harmonic values with the m value given This is the 0th of these quantities |
sh.rm-p1 | matrix | the real parts of the spherical harmonic values with the m value given This is the p1th of these quantities |
sh.im-n1 | matrix | the real parts of the spherical harmonic values with the m value given This is the n1th of these quantities |
sh.im-0 | matrix | the real parts of the spherical harmonic values with the m value given This is the 0th of these quantities |
sh.im-p1 | matrix | the real parts of the spherical harmonic values with the m value given This is the p1th of these quantities |
: SPHERICAL_HARMONICCalculate the values of all the spherical harmonic funtions for a particular value of l. More details ARGthe values input to this function=cmat.x,cmat.y,cmat.z,cmat.w Lthe value of the angular momentum=1
spThe MATRIX_VECTOR_PRODUCT action with label sp calculates the following quantities: Quantity | Type | Description |
sp.rm-n1 | vector | the product of the matrix sh.rm-n1 and the vector ones |
sp.rm-0 | vector | the product of the matrix sh.rm-0 and the vector ones |
sp.rm-p1 | vector | the product of the matrix sh.rm-p1 and the vector ones |
sp.im-n1 | vector | the product of the matrix sh.im-n1 and the vector ones |
sp.im-0 | vector | the product of the matrix sh.im-0 and the vector ones |
sp.im-p1 | vector | the product of the matrix sh.im-p1 and the vector ones |
: MATRIX_VECTOR_PRODUCTCalculate the product of the matrix and the vector More details ARGthe label for the matrix and the vector/scalar that are being multiplied=sh.*,ones
q1_2The COMBINE action with label q1_2 calculates the following quantities: Quantity | Type | Description |
q1_2 | vector | the vector obtained by doing an element-wise application of a linear compbination to the input vectors |
: COMBINECalculate a polynomial combination of a set of other variables. More details PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO POWERS the powers to which you are raising each of the arguments in your function=2,2,2,2,2,2 ARGthe values input to this function=sp.rm-n1,sp.im-n1,sp.rm-0,sp.im-0,sp.rm-p1,sp.im-p1
q1The CUSTOM action with label q1 calculates the following quantities: Quantity | Type | Description |
q1 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=q1_2 FUNCthe function you wish to evaluate=sqrt(x) PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
stackThe VSTACK action with label stack calculates the following quantities: Quantity | Type | Description |
stack | matrix | a matrix that contains the input vectors in its columns |
: VSTACKCreate a matrix by stacking vectors together More details ARGthe values that you would like to stack together to construct the output matrix=sp.rm-n1,sp.im-n1,sp.rm-0,sp.im-0,sp.rm-p1,sp.im-p1
lonesThe ONES action with label lones calculates the following quantities: Quantity | Type | Description |
lones | vector | a vector of ones with the required number of elements |
: ONESCreate a constant vector with all elements equal to one This action is a shortcut. More details SIZEthe number of ones that you would like to create=6
# lones: ONES SIZE=6
lonesThe CONSTANT action with label lones calculates the following quantities: Quantity | Type | Description |
lones | vector | the constant value that was read from the plumed input |
: CONSTANTCreate a constant value that can be passed to actions More details NOLOG do not report all the read in scalars in the log VALUESthe numbers that are in your constant value=1,1,1,1,1,1
# --- End of included input --- unormThe OUTER_PRODUCT action with label unorm calculates the following quantities: Quantity | Type | Description |
unorm | matrix | a matrix containing the outer product of the two input vectors that was obtained using the function that was input |
: OUTER_PRODUCTCalculate the outer product matrix of two vectors This action has hidden defaults. More details ARGthe labels of the two vectors from which the outer product is being computed=q1,lones
unorm: OUTER_PRODUCTCalculate the outer product matrix of two vectors This action uses the defaults shown here. More details ARGthe labels of the two vectors from which the outer product is being computed=q1,lones FUNC the function of the input vectors that should be put in the elements of the outer product=x*y
oq1The CUSTOM action with label oq1 calculates the following quantities: Quantity | Type | Description |
oq1 | matrix | the matrix obtained by doing an element-wise application of an arbitrary function to the input matrix |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=stack,unorm FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
PRINTPrint quantities to a file. More details ARGthe labels of the values that you would like to print to the file=oq1 FILEthe name of the file on which to output these quantities=colvar
We introduce $\overline{q}_{lm}(i)$ as we can use the following inner product to measure the similarity between the environment around atom $i$ and the environment around atom $j$:
\[S_{ij} = \sum_{m=-l}^l \overline{q}_{lm}(i)^{*} \overline{q}_{lm}(j)\]
Notice furthermore that if we have $N$ atoms we can store all the real and imaginary parts of the $\overline{q}_{lm}(i)$ values in an $N \times 2l$ matrix $\mathbf{Q}$. The
inner product above can be computed for every pair of atoms in our system by doing the following piece of matrix algebra:
\[\mathbf{S} = \mathbf{Q} \mathbf{Q}^T\]
$S$ here is thus an $N\times N$ square matrix. To calculate this matrix in PLUMED you would do the following:
Click on the labels of the actions for more information on what each action computes
cmatThe CONTACT_MATRIX action with label cmat calculates the following quantities: Quantity | Type | Description |
cmat.w | matrix | a matrix containing the weights for the bonds between each pair of atoms |
cmat.x | matrix | the projection of the bond on the x axis |
cmat.y | matrix | the projection of the bond on the y axis |
cmat.z | matrix | the projection of the bond on the z axis |
: CONTACT_MATRIXAdjacency matrix in which two atoms are adjacent if they are within a certain cutoff. More details GROUPspecifies the list of atoms that should be assumed indistinguishable=1-100 COMPONENTS also calculate the components of the vectors connecting the atoms in the contact matrix SWITCHthe input for the switching function that acts upon the distance between each pair of atoms. Options for this keyword are explained in the documentation for LESS_THAN.={RATIONAL D_0=2.0 R_0=1.0}
onesThe ONES action with label ones calculates the following quantities: Quantity | Type | Description |
ones | vector | a vector of ones with the required number of elements |
: ONESCreate a constant vector with all elements equal to one This action is a shortcut. More details SIZEthe number of ones that you would like to create=100
# ones: ONES SIZE=100
onesThe CONSTANT action with label ones calculates the following quantities: Quantity | Type | Description |
ones | vector | the constant value that was read from the plumed input |
: CONSTANTCreate a constant value that can be passed to actions More details NOLOG do not report all the read in scalars in the log VALUESthe numbers that are in your constant value=1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
# --- End of included input --- coordThe MATRIX_VECTOR_PRODUCT action with label coord calculates the following quantities: Quantity | Type | Description |
coord | vector | the vector that is obtained by taking the product between the matrix and the vector that were input |
: MATRIX_VECTOR_PRODUCTCalculate the product of the matrix and the vector More details ARGthe label for the matrix and the vector/scalar that are being multiplied=cmat.w,ones
shThe SPHERICAL_HARMONIC action with label sh calculates the following quantities: Quantity | Type | Description |
sh.rm-n1 | matrix | the real parts of the spherical harmonic values with the m value given This is the n1th of these quantities |
sh.rm-0 | matrix | the real parts of the spherical harmonic values with the m value given This is the 0th of these quantities |
sh.rm-p1 | matrix | the real parts of the spherical harmonic values with the m value given This is the p1th of these quantities |
sh.im-n1 | matrix | the real parts of the spherical harmonic values with the m value given This is the n1th of these quantities |
sh.im-0 | matrix | the real parts of the spherical harmonic values with the m value given This is the 0th of these quantities |
sh.im-p1 | matrix | the real parts of the spherical harmonic values with the m value given This is the p1th of these quantities |
: SPHERICAL_HARMONICCalculate the values of all the spherical harmonic funtions for a particular value of l. More details ARGthe values input to this function=cmat.x,cmat.y,cmat.z,cmat.w Lthe value of the angular momentum=1
spThe MATRIX_VECTOR_PRODUCT action with label sp calculates the following quantities: Quantity | Type | Description |
sp.rm-n1 | vector | the product of the matrix sh.rm-n1 and the vector ones |
sp.rm-0 | vector | the product of the matrix sh.rm-0 and the vector ones |
sp.rm-p1 | vector | the product of the matrix sh.rm-p1 and the vector ones |
sp.im-n1 | vector | the product of the matrix sh.im-n1 and the vector ones |
sp.im-0 | vector | the product of the matrix sh.im-0 and the vector ones |
sp.im-p1 | vector | the product of the matrix sh.im-p1 and the vector ones |
: MATRIX_VECTOR_PRODUCTCalculate the product of the matrix and the vector More details ARGthe label for the matrix and the vector/scalar that are being multiplied=sh.*,ones
q1_2The COMBINE action with label q1_2 calculates the following quantities: Quantity | Type | Description |
q1_2 | vector | the vector obtained by doing an element-wise application of a linear compbination to the input vectors |
: COMBINECalculate a polynomial combination of a set of other variables. More details PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO POWERS the powers to which you are raising each of the arguments in your function=2,2,2,2,2,2 ARGthe values input to this function=sp.rm-n1,sp.im-n1,sp.rm-0,sp.im-0,sp.rm-p1,sp.im-p1
q1The CUSTOM action with label q1 calculates the following quantities: Quantity | Type | Description |
q1 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=q1_2 FUNCthe function you wish to evaluate=sqrt(x) PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
stackThe VSTACK action with label stack calculates the following quantities: Quantity | Type | Description |
stack | matrix | a matrix that contains the input vectors in its columns |
: VSTACKCreate a matrix by stacking vectors together More details ARGthe values that you would like to stack together to construct the output matrix=sp.rm-n1,sp.im-n1,sp.rm-0,sp.im-0,sp.rm-p1,sp.im-p1
lonesThe ONES action with label lones calculates the following quantities: Quantity | Type | Description |
lones | vector | a vector of ones with the required number of elements |
: ONESCreate a constant vector with all elements equal to one This action is a shortcut. More details SIZEthe number of ones that you would like to create=6
# lones: ONES SIZE=6
lonesThe CONSTANT action with label lones calculates the following quantities: Quantity | Type | Description |
lones | vector | the constant value that was read from the plumed input |
: CONSTANTCreate a constant value that can be passed to actions More details NOLOG do not report all the read in scalars in the log VALUESthe numbers that are in your constant value=1,1,1,1,1,1
# --- End of included input --- unormThe OUTER_PRODUCT action with label unorm calculates the following quantities: Quantity | Type | Description |
unorm | matrix | a matrix containing the outer product of the two input vectors that was obtained using the function that was input |
: OUTER_PRODUCTCalculate the outer product matrix of two vectors This action has hidden defaults. More details ARGthe labels of the two vectors from which the outer product is being computed=q1,lones
unorm: OUTER_PRODUCTCalculate the outer product matrix of two vectors This action uses the defaults shown here. More details ARGthe labels of the two vectors from which the outer product is being computed=q1,lones FUNC the function of the input vectors that should be put in the elements of the outer product=x*y
oq1The CUSTOM action with label oq1 calculates the following quantities: Quantity | Type | Description |
oq1 | matrix | the matrix obtained by doing an element-wise application of an arbitrary function to the input matrix |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=stack,unorm FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
oq1TThe TRANSPOSE action with label oq1T calculates the following quantities: Quantity | Type | Description |
oq1T | matrix | the transpose of the input matrix |
: TRANSPOSECalculate the transpose of a matrix More details ARGthe label of the vector or matrix that should be transposed=oq1
sThe MATRIX_PRODUCT action with label s calculates the following quantities: Quantity | Type | Description |
s | matrix | the product of the two input matrices |
: MATRIX_PRODUCTCalculate the product of two matrices More details ARGthe label of the two matrices from which the product is calculated=oq1,oq1T
PRINTPrint quantities to a file. More details ARGthe labels of the values that you would like to print to the file=s FILEthe name of the file on which to output these quantities=colvar
The matrix $\mathbf{S}$ defined above is not the one used when you are computing the ten-Wolde and Frenkel style order parametres. Element $i,j$ of the matrix, $\mathbf{F}$, that is used when computing the ten-Wolde and Frenkel style order
parameters is large when atoms $i$ and $j$ are within a certain cutoff of each other AND when the environment around the two atoms are similar. Element $i,j$ of this matrix is thus computed as:
\[F_{ij} = \sigma(r_{ij}) \sum_{m=-l}^l \overline{q}_{lm}(i)^{*} \overline{q}_{lm}(j)\]
where $\sigma$ is a switching function that acts on the distance $r_{ij}$ between atom $i$ and atom $j$. The full matrix can be computed in PLUMED using the following input:
Click on the labels of the actions for more information on what each action computes
cmatThe CONTACT_MATRIX action with label cmat calculates the following quantities: Quantity | Type | Description |
cmat.w | matrix | a matrix containing the weights for the bonds between each pair of atoms |
cmat.x | matrix | the projection of the bond on the x axis |
cmat.y | matrix | the projection of the bond on the y axis |
cmat.z | matrix | the projection of the bond on the z axis |
: CONTACT_MATRIXAdjacency matrix in which two atoms are adjacent if they are within a certain cutoff. More details GROUPspecifies the list of atoms that should be assumed indistinguishable=1-100 COMPONENTS also calculate the components of the vectors connecting the atoms in the contact matrix SWITCHthe input for the switching function that acts upon the distance between each pair of atoms. Options for this keyword are explained in the documentation for LESS_THAN.={RATIONAL D_0=2.0 R_0=1.0}
onesThe ONES action with label ones calculates the following quantities: Quantity | Type | Description |
ones | vector | a vector of ones with the required number of elements |
: ONESCreate a constant vector with all elements equal to one This action is a shortcut. More details SIZEthe number of ones that you would like to create=100
# ones: ONES SIZE=100
onesThe CONSTANT action with label ones calculates the following quantities: Quantity | Type | Description |
ones | vector | the constant value that was read from the plumed input |
: CONSTANTCreate a constant value that can be passed to actions More details NOLOG do not report all the read in scalars in the log VALUESthe numbers that are in your constant value=1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
# --- End of included input --- coordThe MATRIX_VECTOR_PRODUCT action with label coord calculates the following quantities: Quantity | Type | Description |
coord | vector | the vector that is obtained by taking the product between the matrix and the vector that were input |
: MATRIX_VECTOR_PRODUCTCalculate the product of the matrix and the vector More details ARGthe label for the matrix and the vector/scalar that are being multiplied=cmat.w,ones
shThe SPHERICAL_HARMONIC action with label sh calculates the following quantities: Quantity | Type | Description |
sh.rm-n1 | matrix | the real parts of the spherical harmonic values with the m value given This is the n1th of these quantities |
sh.rm-0 | matrix | the real parts of the spherical harmonic values with the m value given This is the 0th of these quantities |
sh.rm-p1 | matrix | the real parts of the spherical harmonic values with the m value given This is the p1th of these quantities |
sh.im-n1 | matrix | the real parts of the spherical harmonic values with the m value given This is the n1th of these quantities |
sh.im-0 | matrix | the real parts of the spherical harmonic values with the m value given This is the 0th of these quantities |
sh.im-p1 | matrix | the real parts of the spherical harmonic values with the m value given This is the p1th of these quantities |
: SPHERICAL_HARMONICCalculate the values of all the spherical harmonic funtions for a particular value of l. More details ARGthe values input to this function=cmat.x,cmat.y,cmat.z,cmat.w Lthe value of the angular momentum=1
spThe MATRIX_VECTOR_PRODUCT action with label sp calculates the following quantities: Quantity | Type | Description |
sp.rm-n1 | vector | the product of the matrix sh.rm-n1 and the vector ones |
sp.rm-0 | vector | the product of the matrix sh.rm-0 and the vector ones |
sp.rm-p1 | vector | the product of the matrix sh.rm-p1 and the vector ones |
sp.im-n1 | vector | the product of the matrix sh.im-n1 and the vector ones |
sp.im-0 | vector | the product of the matrix sh.im-0 and the vector ones |
sp.im-p1 | vector | the product of the matrix sh.im-p1 and the vector ones |
: MATRIX_VECTOR_PRODUCTCalculate the product of the matrix and the vector More details ARGthe label for the matrix and the vector/scalar that are being multiplied=sh.*,ones
q1_2The COMBINE action with label q1_2 calculates the following quantities: Quantity | Type | Description |
q1_2 | vector | the vector obtained by doing an element-wise application of a linear compbination to the input vectors |
: COMBINECalculate a polynomial combination of a set of other variables. More details PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO POWERS the powers to which you are raising each of the arguments in your function=2,2,2,2,2,2 ARGthe values input to this function=sp.rm-n1,sp.im-n1,sp.rm-0,sp.im-0,sp.rm-p1,sp.im-p1
q1The CUSTOM action with label q1 calculates the following quantities: Quantity | Type | Description |
q1 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=q1_2 FUNCthe function you wish to evaluate=sqrt(x) PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
stackThe VSTACK action with label stack calculates the following quantities: Quantity | Type | Description |
stack | matrix | a matrix that contains the input vectors in its columns |
: VSTACKCreate a matrix by stacking vectors together More details ARGthe values that you would like to stack together to construct the output matrix=sp.rm-n1,sp.im-n1,sp.rm-0,sp.im-0,sp.rm-p1,sp.im-p1
lonesThe ONES action with label lones calculates the following quantities: Quantity | Type | Description |
lones | vector | a vector of ones with the required number of elements |
: ONESCreate a constant vector with all elements equal to one This action is a shortcut. More details SIZEthe number of ones that you would like to create=6
# lones: ONES SIZE=6
lonesThe CONSTANT action with label lones calculates the following quantities: Quantity | Type | Description |
lones | vector | the constant value that was read from the plumed input |
: CONSTANTCreate a constant value that can be passed to actions More details NOLOG do not report all the read in scalars in the log VALUESthe numbers that are in your constant value=1,1,1,1,1,1
# --- End of included input --- unormThe OUTER_PRODUCT action with label unorm calculates the following quantities: Quantity | Type | Description |
unorm | matrix | a matrix containing the outer product of the two input vectors that was obtained using the function that was input |
: OUTER_PRODUCTCalculate the outer product matrix of two vectors This action has hidden defaults. More details ARGthe labels of the two vectors from which the outer product is being computed=q1,lones
unorm: OUTER_PRODUCTCalculate the outer product matrix of two vectors This action uses the defaults shown here. More details ARGthe labels of the two vectors from which the outer product is being computed=q1,lones FUNC the function of the input vectors that should be put in the elements of the outer product=x*y
oq1The CUSTOM action with label oq1 calculates the following quantities: Quantity | Type | Description |
oq1 | matrix | the matrix obtained by doing an element-wise application of an arbitrary function to the input matrix |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=stack,unorm FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
oq1TThe TRANSPOSE action with label oq1T calculates the following quantities: Quantity | Type | Description |
oq1T | matrix | the transpose of the input matrix |
: TRANSPOSECalculate the transpose of a matrix More details ARGthe label of the vector or matrix that should be transposed=oq1
cmat2The CONTACT_MATRIX action with label cmat2 calculates the following quantities: Quantity | Type | Description |
cmat2 | matrix | a matrix containing the weights for the bonds between each pair of atoms |
: CONTACT_MATRIXAdjacency matrix in which two atoms are adjacent if they are within a certain cutoff. More details GROUPspecifies the list of atoms that should be assumed indistinguishable=1-100 SWITCHthe input for the switching function that acts upon the distance between each pair of atoms. Options for this keyword are explained in the documentation for LESS_THAN.={RATIONAL D_0=2.0 R_0=1.0}
sThe MATRIX_PRODUCT action with label s calculates the following quantities: Quantity | Type | Description |
s | matrix | the product of the two input matrices |
: MATRIX_PRODUCTCalculate the product of two matrices More details ARGthe label of the two matrices from which the product is calculated=oq1,oq1T
fThe CUSTOM action with label f calculates the following quantities: Quantity | Type | Description |
f | matrix | the matrix obtained by doing an element-wise application of an arbitrary function to the input matrix |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=cmat2,s FUNCthe function you wish to evaluate=x*y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
PRINTPrint quantities to a file. More details ARGthe labels of the values that you would like to print to the file=f FILEthe name of the file on which to output these quantities=colvar
Once you ahve computed the matrix $F$ there are many things that you can do with it. You can for instance sum all the elements of the matrix using an input like this:
Click on the labels of the actions for more information on what each action computes
cmatThe CONTACT_MATRIX action with label cmat calculates the following quantities: Quantity | Type | Description |
cmat.w | matrix | a matrix containing the weights for the bonds between each pair of atoms |
cmat.x | matrix | the projection of the bond on the x axis |
cmat.y | matrix | the projection of the bond on the y axis |
cmat.z | matrix | the projection of the bond on the z axis |
: CONTACT_MATRIXAdjacency matrix in which two atoms are adjacent if they are within a certain cutoff. More details GROUPspecifies the list of atoms that should be assumed indistinguishable=1-100 COMPONENTS also calculate the components of the vectors connecting the atoms in the contact matrix SWITCHthe input for the switching function that acts upon the distance between each pair of atoms. Options for this keyword are explained in the documentation for LESS_THAN.={RATIONAL D_0=2.0 R_0=1.0}
onesThe ONES action with label ones calculates the following quantities: Quantity | Type | Description |
ones | vector | a vector of ones with the required number of elements |
: ONESCreate a constant vector with all elements equal to one This action is a shortcut. More details SIZEthe number of ones that you would like to create=100
# ones: ONES SIZE=100
onesThe CONSTANT action with label ones calculates the following quantities: Quantity | Type | Description |
ones | vector | the constant value that was read from the plumed input |
: CONSTANTCreate a constant value that can be passed to actions More details NOLOG do not report all the read in scalars in the log VALUESthe numbers that are in your constant value=1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
# --- End of included input --- coordThe MATRIX_VECTOR_PRODUCT action with label coord calculates the following quantities: Quantity | Type | Description |
coord | vector | the vector that is obtained by taking the product between the matrix and the vector that were input |
: MATRIX_VECTOR_PRODUCTCalculate the product of the matrix and the vector More details ARGthe label for the matrix and the vector/scalar that are being multiplied=cmat.w,ones
shThe SPHERICAL_HARMONIC action with label sh calculates the following quantities: Quantity | Type | Description |
sh.rm-n1 | matrix | the real parts of the spherical harmonic values with the m value given This is the n1th of these quantities |
sh.rm-0 | matrix | the real parts of the spherical harmonic values with the m value given This is the 0th of these quantities |
sh.rm-p1 | matrix | the real parts of the spherical harmonic values with the m value given This is the p1th of these quantities |
sh.im-n1 | matrix | the real parts of the spherical harmonic values with the m value given This is the n1th of these quantities |
sh.im-0 | matrix | the real parts of the spherical harmonic values with the m value given This is the 0th of these quantities |
sh.im-p1 | matrix | the real parts of the spherical harmonic values with the m value given This is the p1th of these quantities |
: SPHERICAL_HARMONICCalculate the values of all the spherical harmonic funtions for a particular value of l. More details ARGthe values input to this function=cmat.x,cmat.y,cmat.z,cmat.w Lthe value of the angular momentum=1
spThe MATRIX_VECTOR_PRODUCT action with label sp calculates the following quantities: Quantity | Type | Description |
sp.rm-n1 | vector | the product of the matrix sh.rm-n1 and the vector ones |
sp.rm-0 | vector | the product of the matrix sh.rm-0 and the vector ones |
sp.rm-p1 | vector | the product of the matrix sh.rm-p1 and the vector ones |
sp.im-n1 | vector | the product of the matrix sh.im-n1 and the vector ones |
sp.im-0 | vector | the product of the matrix sh.im-0 and the vector ones |
sp.im-p1 | vector | the product of the matrix sh.im-p1 and the vector ones |
: MATRIX_VECTOR_PRODUCTCalculate the product of the matrix and the vector More details ARGthe label for the matrix and the vector/scalar that are being multiplied=sh.*,ones
q1_2The COMBINE action with label q1_2 calculates the following quantities: Quantity | Type | Description |
q1_2 | vector | the vector obtained by doing an element-wise application of a linear compbination to the input vectors |
: COMBINECalculate a polynomial combination of a set of other variables. More details PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO POWERS the powers to which you are raising each of the arguments in your function=2,2,2,2,2,2 ARGthe values input to this function=sp.rm-n1,sp.im-n1,sp.rm-0,sp.im-0,sp.rm-p1,sp.im-p1
q1The CUSTOM action with label q1 calculates the following quantities: Quantity | Type | Description |
q1 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=q1_2 FUNCthe function you wish to evaluate=sqrt(x) PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
stackThe VSTACK action with label stack calculates the following quantities: Quantity | Type | Description |
stack | matrix | a matrix that contains the input vectors in its columns |
: VSTACKCreate a matrix by stacking vectors together More details ARGthe values that you would like to stack together to construct the output matrix=sp.rm-n1,sp.im-n1,sp.rm-0,sp.im-0,sp.rm-p1,sp.im-p1
lonesThe ONES action with label lones calculates the following quantities: Quantity | Type | Description |
lones | vector | a vector of ones with the required number of elements |
: ONESCreate a constant vector with all elements equal to one This action is a shortcut. More details SIZEthe number of ones that you would like to create=6
# lones: ONES SIZE=6
lonesThe CONSTANT action with label lones calculates the following quantities: Quantity | Type | Description |
lones | vector | the constant value that was read from the plumed input |
: CONSTANTCreate a constant value that can be passed to actions More details NOLOG do not report all the read in scalars in the log VALUESthe numbers that are in your constant value=1,1,1,1,1,1
# --- End of included input --- unormThe OUTER_PRODUCT action with label unorm calculates the following quantities: Quantity | Type | Description |
unorm | matrix | a matrix containing the outer product of the two input vectors that was obtained using the function that was input |
: OUTER_PRODUCTCalculate the outer product matrix of two vectors This action has hidden defaults. More details ARGthe labels of the two vectors from which the outer product is being computed=q1,lones
unorm: OUTER_PRODUCTCalculate the outer product matrix of two vectors This action uses the defaults shown here. More details ARGthe labels of the two vectors from which the outer product is being computed=q1,lones FUNC the function of the input vectors that should be put in the elements of the outer product=x*y
oq1The CUSTOM action with label oq1 calculates the following quantities: Quantity | Type | Description |
oq1 | matrix | the matrix obtained by doing an element-wise application of an arbitrary function to the input matrix |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=stack,unorm FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
oq1TThe TRANSPOSE action with label oq1T calculates the following quantities: Quantity | Type | Description |
oq1T | matrix | the transpose of the input matrix |
: TRANSPOSECalculate the transpose of a matrix More details ARGthe label of the vector or matrix that should be transposed=oq1
cmat2The CONTACT_MATRIX action with label cmat2 calculates the following quantities: Quantity | Type | Description |
cmat2 | matrix | a matrix containing the weights for the bonds between each pair of atoms |
: CONTACT_MATRIXAdjacency matrix in which two atoms are adjacent if they are within a certain cutoff. More details GROUPspecifies the list of atoms that should be assumed indistinguishable=1-100 SWITCHthe input for the switching function that acts upon the distance between each pair of atoms. Options for this keyword are explained in the documentation for LESS_THAN.={RATIONAL D_0=2.0 R_0=1.0}
sThe MATRIX_PRODUCT action with label s calculates the following quantities: Quantity | Type | Description |
s | matrix | the product of the two input matrices |
: MATRIX_PRODUCTCalculate the product of two matrices More details ARGthe label of the two matrices from which the product is calculated=oq1,oq1T
fThe CUSTOM action with label f calculates the following quantities: Quantity | Type | Description |
f | matrix | the matrix obtained by doing an element-wise application of an arbitrary function to the input matrix |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=cmat2,s FUNCthe function you wish to evaluate=x*y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
fsThe SUM action with label fs calculates the following quantities: Quantity | Type | Description |
fs | scalar | the sum of all the elements in the input matrix |
: SUMCalculate the sum of the arguments More details ARGthe values input to this function=f PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
PRINTPrint quantities to a file. More details ARGthe labels of the values that you would like to print to the file=fs FILEthe name of the file on which to output these quantities=colvar
Some people prefer to apply a switching function to the elements of $F$ before summing like this:
Click on the labels of the actions for more information on what each action computes
cmatThe CONTACT_MATRIX action with label cmat calculates the following quantities: Quantity | Type | Description |
cmat.w | matrix | a matrix containing the weights for the bonds between each pair of atoms |
cmat.x | matrix | the projection of the bond on the x axis |
cmat.y | matrix | the projection of the bond on the y axis |
cmat.z | matrix | the projection of the bond on the z axis |
: CONTACT_MATRIXAdjacency matrix in which two atoms are adjacent if they are within a certain cutoff. More details GROUPspecifies the list of atoms that should be assumed indistinguishable=1-100 COMPONENTS also calculate the components of the vectors connecting the atoms in the contact matrix SWITCHthe input for the switching function that acts upon the distance between each pair of atoms. Options for this keyword are explained in the documentation for LESS_THAN.={RATIONAL D_0=2.0 R_0=1.0}
onesThe ONES action with label ones calculates the following quantities: Quantity | Type | Description |
ones | vector | a vector of ones with the required number of elements |
: ONESCreate a constant vector with all elements equal to one This action is a shortcut. More details SIZEthe number of ones that you would like to create=100
# ones: ONES SIZE=100
onesThe CONSTANT action with label ones calculates the following quantities: Quantity | Type | Description |
ones | vector | the constant value that was read from the plumed input |
: CONSTANTCreate a constant value that can be passed to actions More details NOLOG do not report all the read in scalars in the log VALUESthe numbers that are in your constant value=1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
# --- End of included input --- coordThe MATRIX_VECTOR_PRODUCT action with label coord calculates the following quantities: Quantity | Type | Description |
coord | vector | the vector that is obtained by taking the product between the matrix and the vector that were input |
: MATRIX_VECTOR_PRODUCTCalculate the product of the matrix and the vector More details ARGthe label for the matrix and the vector/scalar that are being multiplied=cmat.w,ones
shThe SPHERICAL_HARMONIC action with label sh calculates the following quantities: Quantity | Type | Description |
sh.rm-n1 | matrix | the real parts of the spherical harmonic values with the m value given This is the n1th of these quantities |
sh.rm-0 | matrix | the real parts of the spherical harmonic values with the m value given This is the 0th of these quantities |
sh.rm-p1 | matrix | the real parts of the spherical harmonic values with the m value given This is the p1th of these quantities |
sh.im-n1 | matrix | the real parts of the spherical harmonic values with the m value given This is the n1th of these quantities |
sh.im-0 | matrix | the real parts of the spherical harmonic values with the m value given This is the 0th of these quantities |
sh.im-p1 | matrix | the real parts of the spherical harmonic values with the m value given This is the p1th of these quantities |
: SPHERICAL_HARMONICCalculate the values of all the spherical harmonic funtions for a particular value of l. More details ARGthe values input to this function=cmat.x,cmat.y,cmat.z,cmat.w Lthe value of the angular momentum=1
spThe MATRIX_VECTOR_PRODUCT action with label sp calculates the following quantities: Quantity | Type | Description |
sp.rm-n1 | vector | the product of the matrix sh.rm-n1 and the vector ones |
sp.rm-0 | vector | the product of the matrix sh.rm-0 and the vector ones |
sp.rm-p1 | vector | the product of the matrix sh.rm-p1 and the vector ones |
sp.im-n1 | vector | the product of the matrix sh.im-n1 and the vector ones |
sp.im-0 | vector | the product of the matrix sh.im-0 and the vector ones |
sp.im-p1 | vector | the product of the matrix sh.im-p1 and the vector ones |
: MATRIX_VECTOR_PRODUCTCalculate the product of the matrix and the vector More details ARGthe label for the matrix and the vector/scalar that are being multiplied=sh.*,ones
q1_2The COMBINE action with label q1_2 calculates the following quantities: Quantity | Type | Description |
q1_2 | vector | the vector obtained by doing an element-wise application of a linear compbination to the input vectors |
: COMBINECalculate a polynomial combination of a set of other variables. More details PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO POWERS the powers to which you are raising each of the arguments in your function=2,2,2,2,2,2 ARGthe values input to this function=sp.rm-n1,sp.im-n1,sp.rm-0,sp.im-0,sp.rm-p1,sp.im-p1
q1The CUSTOM action with label q1 calculates the following quantities: Quantity | Type | Description |
q1 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=q1_2 FUNCthe function you wish to evaluate=sqrt(x) PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
stackThe VSTACK action with label stack calculates the following quantities: Quantity | Type | Description |
stack | matrix | a matrix that contains the input vectors in its columns |
: VSTACKCreate a matrix by stacking vectors together More details ARGthe values that you would like to stack together to construct the output matrix=sp.rm-n1,sp.im-n1,sp.rm-0,sp.im-0,sp.rm-p1,sp.im-p1
lonesThe ONES action with label lones calculates the following quantities: Quantity | Type | Description |
lones | vector | a vector of ones with the required number of elements |
: ONESCreate a constant vector with all elements equal to one This action is a shortcut. More details SIZEthe number of ones that you would like to create=6
# lones: ONES SIZE=6
lonesThe CONSTANT action with label lones calculates the following quantities: Quantity | Type | Description |
lones | vector | the constant value that was read from the plumed input |
: CONSTANTCreate a constant value that can be passed to actions More details NOLOG do not report all the read in scalars in the log VALUESthe numbers that are in your constant value=1,1,1,1,1,1
# --- End of included input --- unormThe OUTER_PRODUCT action with label unorm calculates the following quantities: Quantity | Type | Description |
unorm | matrix | a matrix containing the outer product of the two input vectors that was obtained using the function that was input |
: OUTER_PRODUCTCalculate the outer product matrix of two vectors This action has hidden defaults. More details ARGthe labels of the two vectors from which the outer product is being computed=q1,lones
unorm: OUTER_PRODUCTCalculate the outer product matrix of two vectors This action uses the defaults shown here. More details ARGthe labels of the two vectors from which the outer product is being computed=q1,lones FUNC the function of the input vectors that should be put in the elements of the outer product=x*y
oq1The CUSTOM action with label oq1 calculates the following quantities: Quantity | Type | Description |
oq1 | matrix | the matrix obtained by doing an element-wise application of an arbitrary function to the input matrix |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=stack,unorm FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
oq1TThe TRANSPOSE action with label oq1T calculates the following quantities: Quantity | Type | Description |
oq1T | matrix | the transpose of the input matrix |
: TRANSPOSECalculate the transpose of a matrix More details ARGthe label of the vector or matrix that should be transposed=oq1
cmat2The CONTACT_MATRIX action with label cmat2 calculates the following quantities: Quantity | Type | Description |
cmat2 | matrix | a matrix containing the weights for the bonds between each pair of atoms |
: CONTACT_MATRIXAdjacency matrix in which two atoms are adjacent if they are within a certain cutoff. More details GROUPspecifies the list of atoms that should be assumed indistinguishable=1-100 SWITCHthe input for the switching function that acts upon the distance between each pair of atoms. Options for this keyword are explained in the documentation for LESS_THAN.={RATIONAL D_0=2.0 R_0=1.0}
sThe MATRIX_PRODUCT action with label s calculates the following quantities: Quantity | Type | Description |
s | matrix | the product of the two input matrices |
: MATRIX_PRODUCTCalculate the product of two matrices More details ARGthe label of the two matrices from which the product is calculated=oq1,oq1T
fThe CUSTOM action with label f calculates the following quantities: Quantity | Type | Description |
f | matrix | the matrix obtained by doing an element-wise application of an arbitrary function to the input matrix |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=cmat2,s FUNCthe function you wish to evaluate=x*y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
fmtThe MORE_THAN action with label fmt calculates the following quantities: Quantity | Type | Description |
fmt | matrix | the matrix obtained by doing an element-wise application of a function that is one if the if the input is more than a threshold to the input matrix |
: MORE_THANUse a switching function to determine how many of the input variables are more than a certain cutoff. More details ARGthe values input to this function=f SWITCHThis keyword is used if you want to employ an alternative to the continuous swiching function defined above={RATIONAL R_0=0.5}
fsThe SUM action with label fs calculates the following quantities: Quantity | Type | Description |
fs | scalar | the sum of all the elements in the input matrix |
: SUMCalculate the sum of the arguments More details ARGthe values input to this function=fmt PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
PRINTPrint quantities to a file. More details ARGthe labels of the values that you would like to print to the file=fs FILEthe name of the file on which to output these quantities=colvar
You could even apply the switching function to $S$ and only then multiply the transformed version of $S$ by the second contact matrix.
Alternatively, you can calculate a new symmetry function for each of the atoms in your system by multiplying $F$ by a vector of all ones as following:
Click on the labels of the actions for more information on what each action computes
cmatThe CONTACT_MATRIX action with label cmat calculates the following quantities: Quantity | Type | Description |
cmat.w | matrix | a matrix containing the weights for the bonds between each pair of atoms |
cmat.x | matrix | the projection of the bond on the x axis |
cmat.y | matrix | the projection of the bond on the y axis |
cmat.z | matrix | the projection of the bond on the z axis |
: CONTACT_MATRIXAdjacency matrix in which two atoms are adjacent if they are within a certain cutoff. More details GROUPspecifies the list of atoms that should be assumed indistinguishable=1-100 COMPONENTS also calculate the components of the vectors connecting the atoms in the contact matrix SWITCHthe input for the switching function that acts upon the distance between each pair of atoms. Options for this keyword are explained in the documentation for LESS_THAN.={RATIONAL D_0=2.0 R_0=1.0}
onesThe ONES action with label ones calculates the following quantities: Quantity | Type | Description |
ones | vector | a vector of ones with the required number of elements |
: ONESCreate a constant vector with all elements equal to one This action is a shortcut. More details SIZEthe number of ones that you would like to create=100
# ones: ONES SIZE=100
onesThe CONSTANT action with label ones calculates the following quantities: Quantity | Type | Description |
ones | vector | the constant value that was read from the plumed input |
: CONSTANTCreate a constant value that can be passed to actions More details NOLOG do not report all the read in scalars in the log VALUESthe numbers that are in your constant value=1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
# --- End of included input --- coordThe MATRIX_VECTOR_PRODUCT action with label coord calculates the following quantities: Quantity | Type | Description |
coord | vector | the vector that is obtained by taking the product between the matrix and the vector that were input |
: MATRIX_VECTOR_PRODUCTCalculate the product of the matrix and the vector More details ARGthe label for the matrix and the vector/scalar that are being multiplied=cmat.w,ones
shThe SPHERICAL_HARMONIC action with label sh calculates the following quantities: Quantity | Type | Description |
sh.rm-n1 | matrix | the real parts of the spherical harmonic values with the m value given This is the n1th of these quantities |
sh.rm-0 | matrix | the real parts of the spherical harmonic values with the m value given This is the 0th of these quantities |
sh.rm-p1 | matrix | the real parts of the spherical harmonic values with the m value given This is the p1th of these quantities |
sh.im-n1 | matrix | the real parts of the spherical harmonic values with the m value given This is the n1th of these quantities |
sh.im-0 | matrix | the real parts of the spherical harmonic values with the m value given This is the 0th of these quantities |
sh.im-p1 | matrix | the real parts of the spherical harmonic values with the m value given This is the p1th of these quantities |
: SPHERICAL_HARMONICCalculate the values of all the spherical harmonic funtions for a particular value of l. More details ARGthe values input to this function=cmat.x,cmat.y,cmat.z,cmat.w Lthe value of the angular momentum=1
spThe MATRIX_VECTOR_PRODUCT action with label sp calculates the following quantities: Quantity | Type | Description |
sp.rm-n1 | vector | the product of the matrix sh.rm-n1 and the vector ones |
sp.rm-0 | vector | the product of the matrix sh.rm-0 and the vector ones |
sp.rm-p1 | vector | the product of the matrix sh.rm-p1 and the vector ones |
sp.im-n1 | vector | the product of the matrix sh.im-n1 and the vector ones |
sp.im-0 | vector | the product of the matrix sh.im-0 and the vector ones |
sp.im-p1 | vector | the product of the matrix sh.im-p1 and the vector ones |
: MATRIX_VECTOR_PRODUCTCalculate the product of the matrix and the vector More details ARGthe label for the matrix and the vector/scalar that are being multiplied=sh.*,ones
q1_2The COMBINE action with label q1_2 calculates the following quantities: Quantity | Type | Description |
q1_2 | vector | the vector obtained by doing an element-wise application of a linear compbination to the input vectors |
: COMBINECalculate a polynomial combination of a set of other variables. More details PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO POWERS the powers to which you are raising each of the arguments in your function=2,2,2,2,2,2 ARGthe values input to this function=sp.rm-n1,sp.im-n1,sp.rm-0,sp.im-0,sp.rm-p1,sp.im-p1
q1The CUSTOM action with label q1 calculates the following quantities: Quantity | Type | Description |
q1 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=q1_2 FUNCthe function you wish to evaluate=sqrt(x) PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
stackThe VSTACK action with label stack calculates the following quantities: Quantity | Type | Description |
stack | matrix | a matrix that contains the input vectors in its columns |
: VSTACKCreate a matrix by stacking vectors together More details ARGthe values that you would like to stack together to construct the output matrix=sp.rm-n1,sp.im-n1,sp.rm-0,sp.im-0,sp.rm-p1,sp.im-p1
lonesThe ONES action with label lones calculates the following quantities: Quantity | Type | Description |
lones | vector | a vector of ones with the required number of elements |
: ONESCreate a constant vector with all elements equal to one This action is a shortcut. More details SIZEthe number of ones that you would like to create=6
# lones: ONES SIZE=6
lonesThe CONSTANT action with label lones calculates the following quantities: Quantity | Type | Description |
lones | vector | the constant value that was read from the plumed input |
: CONSTANTCreate a constant value that can be passed to actions More details NOLOG do not report all the read in scalars in the log VALUESthe numbers that are in your constant value=1,1,1,1,1,1
# --- End of included input --- unormThe OUTER_PRODUCT action with label unorm calculates the following quantities: Quantity | Type | Description |
unorm | matrix | a matrix containing the outer product of the two input vectors that was obtained using the function that was input |
: OUTER_PRODUCTCalculate the outer product matrix of two vectors This action has hidden defaults. More details ARGthe labels of the two vectors from which the outer product is being computed=q1,lones
unorm: OUTER_PRODUCTCalculate the outer product matrix of two vectors This action uses the defaults shown here. More details ARGthe labels of the two vectors from which the outer product is being computed=q1,lones FUNC the function of the input vectors that should be put in the elements of the outer product=x*y
oq1The CUSTOM action with label oq1 calculates the following quantities: Quantity | Type | Description |
oq1 | matrix | the matrix obtained by doing an element-wise application of an arbitrary function to the input matrix |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=stack,unorm FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
oq1TThe TRANSPOSE action with label oq1T calculates the following quantities: Quantity | Type | Description |
oq1T | matrix | the transpose of the input matrix |
: TRANSPOSECalculate the transpose of a matrix More details ARGthe label of the vector or matrix that should be transposed=oq1
cmat2The CONTACT_MATRIX action with label cmat2 calculates the following quantities: Quantity | Type | Description |
cmat2 | matrix | a matrix containing the weights for the bonds between each pair of atoms |
: CONTACT_MATRIXAdjacency matrix in which two atoms are adjacent if they are within a certain cutoff. More details GROUPspecifies the list of atoms that should be assumed indistinguishable=1-100 SWITCHthe input for the switching function that acts upon the distance between each pair of atoms. Options for this keyword are explained in the documentation for LESS_THAN.={RATIONAL D_0=2.0 R_0=1.0}
sThe MATRIX_PRODUCT action with label s calculates the following quantities: Quantity | Type | Description |
s | matrix | the product of the two input matrices |
: MATRIX_PRODUCTCalculate the product of two matrices More details ARGthe label of the two matrices from which the product is calculated=oq1,oq1T
fThe CUSTOM action with label f calculates the following quantities: Quantity | Type | Description |
f | matrix | the matrix obtained by doing an element-wise application of an arbitrary function to the input matrix |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=cmat2,s FUNCthe function you wish to evaluate=x*y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
lq1The MATRIX_VECTOR_PRODUCT action with label lq1 calculates the following quantities: Quantity | Type | Description |
lq1 | vector | the vector that is obtained by taking the product between the matrix and the vector that were input |
: MATRIX_VECTOR_PRODUCTCalculate the product of the matrix and the vector More details ARGthe label for the matrix and the vector/scalar that are being multiplied=f,ones
PRINTPrint quantities to a file. More details ARGthe labels of the values that you would like to print to the file=lq1 FILEthe name of the file on which to output these quantities=colvar
There is a shortcut that does the same as this last input which works as follows:
Click on the labels of the actions for more information on what each action computes
q1The Q1 action with label q1 calculates the following quantities: Quantity | Type | Description |
q1 | vector | the norms of the vectors of spherical harmonic coefficients |
: Q1Calculate 1st order Steinhardt parameters This action is a shortcut. More details SPECIESthe list of atoms for which the symmetry function is being calculated and the atoms that can be in the environments=1-100 SWITCHthe switching function that it used in the construction of the contact matrix. Options for this keyword are explained in the documentation for LESS_THAN.={RATIONAL D_0=2.0 R_0=1.0}
# q1: Q1 SPECIES=1-100 SWITCH={RATIONAL D_0=2.0 R_0=1.0}
q1_grpThe GROUP action with label q1_grp calculates the following quantities: Quantity | Type | Description |
q1_grp | atoms | indices of atoms specified in GROUP |
: GROUPDefine a group of atoms so that a particular list of atoms can be referenced with a single label in definitions of CVs or virtual atoms. More details ATOMSthe numerical indexes for the set of atoms in the group=1-100
q1_matThe CONTACT_MATRIX action with label q1_mat calculates the following quantities: Quantity | Type | Description |
q1_mat.w | matrix | a matrix containing the weights for the bonds between each pair of atoms |
q1_mat.x | matrix | the projection of the bond on the x axis |
q1_mat.y | matrix | the projection of the bond on the y axis |
q1_mat.z | matrix | the projection of the bond on the z axis |
: CONTACT_MATRIXAdjacency matrix in which two atoms are adjacent if they are within a certain cutoff. More details GROUPspecifies the list of atoms that should be assumed indistinguishable=1-100 SWITCHthe input for the switching function that acts upon the distance between each pair of atoms. Options for this keyword are explained in the documentation for LESS_THAN.={RATIONAL D_0=2.0 R_0=1.0} COMPONENTS also calculate the components of the vectors connecting the atoms in the contact matrix
q1_shThe SPHERICAL_HARMONIC action with label q1_sh calculates the following quantities: Quantity | Type | Description |
q1_sh.rm-n1 | matrix | the real parts of the spherical harmonic values with the m value given This is the n1th of these quantities |
q1_sh.rm-0 | matrix | the real parts of the spherical harmonic values with the m value given This is the 0th of these quantities |
q1_sh.rm-p1 | matrix | the real parts of the spherical harmonic values with the m value given This is the p1th of these quantities |
q1_sh.im-n1 | matrix | the real parts of the spherical harmonic values with the m value given This is the n1th of these quantities |
q1_sh.im-0 | matrix | the real parts of the spherical harmonic values with the m value given This is the 0th of these quantities |
q1_sh.im-p1 | matrix | the real parts of the spherical harmonic values with the m value given This is the p1th of these quantities |
: SPHERICAL_HARMONICCalculate the values of all the spherical harmonic funtions for a particular value of l. More details ARGthe values input to this function=q1_mat.x,q1_mat.y,q1_mat.z,q1_mat.w Lthe value of the angular momentum=1
q1_denom_onesThe CONSTANT action with label q1_denom_ones calculates the following quantities: Quantity | Type | Description |
q1_denom_ones | vector | the constant value that was read from the plumed input |
: ONESCreate a constant vector with all elements equal to one More details SIZEthe number of ones that you would like to create=100
q1_denomThe MATRIX_VECTOR_PRODUCT action with label q1_denom calculates the following quantities: Quantity | Type | Description |
q1_denom | vector | the vector that is obtained by taking the product between the matrix and the vector that were input |
: MATRIX_VECTOR_PRODUCTCalculate the product of the matrix and the vector More details ARGthe label for the matrix and the vector/scalar that are being multiplied=q1_mat.w,q1_denom_ones
q1_spThe MATRIX_VECTOR_PRODUCT action with label q1_sp calculates the following quantities: Quantity | Type | Description |
q1_sp.rm-n1 | vector | the product of the matrix q1_sh.rm-n1 and the vector q1_denom_ones |
q1_sp.rm-0 | vector | the product of the matrix q1_sh.rm-0 and the vector q1_denom_ones |
q1_sp.rm-p1 | vector | the product of the matrix q1_sh.rm-p1 and the vector q1_denom_ones |
q1_sp.im-n1 | vector | the product of the matrix q1_sh.im-n1 and the vector q1_denom_ones |
q1_sp.im-0 | vector | the product of the matrix q1_sh.im-0 and the vector q1_denom_ones |
q1_sp.im-p1 | vector | the product of the matrix q1_sh.im-p1 and the vector q1_denom_ones |
: MATRIX_VECTOR_PRODUCTCalculate the product of the matrix and the vector More details ARGthe label for the matrix and the vector/scalar that are being multiplied=q1_sh.*,q1_denom_ones
q1_norm2The COMBINE action with label q1_norm2 calculates the following quantities: Quantity | Type | Description |
q1_norm2 | vector | the vector obtained by doing an element-wise application of a linear compbination to the input vectors |
: COMBINECalculate a polynomial combination of a set of other variables. More details PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO POWERS the powers to which you are raising each of the arguments in your function=2,2,2,2,2,2 ARGthe values input to this function=q1_sp.rm-n1,q1_sp.im-n1,q1_sp.rm-0,q1_sp.im-0,q1_sp.rm-p1,q1_sp.im-p1
q1_normThe CUSTOM action with label q1_norm calculates the following quantities: Quantity | Type | Description |
q1_norm | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=q1_norm2 FUNCthe function you wish to evaluate=sqrt(x) PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q1The CUSTOM action with label q1 calculates the following quantities: Quantity | Type | Description |
q1 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=q1_norm,q1_denom FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
# --- End of included input ---
lq1The LOCAL_Q1 action with label lq1 calculates the following quantities: Quantity | Type | Description |
lq1 | vector | the values of the local steinhardt parameters for the input atoms |
: LOCAL_Q1Calculate 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. This action is a shortcut. More details SPECIESthe label of the action that computes the Steinhardt parameters for which you would like to calculate local steinhardt parameters=q1 SWITCHThis keyword is used if you want to employ an alternative to the continuous swiching function defined above={RATIONAL D_0=2.0 R_0=1.0}
# lq1: LOCAL_Q1 SPECIES=q1 SWITCH={RATIONAL D_0=2.0 R_0=1.0}
lq1_uvecThe CONSTANT action with label lq1_uvec calculates the following quantities: Quantity | Type | Description |
lq1_uvec | vector | the constant value that was read from the plumed input |
: ONESCreate a constant vector with all elements equal to one More details SIZEthe number of ones that you would like to create=6
lq1_grpThe GROUP action with label lq1_grp calculates the following quantities: Quantity | Type | Description |
lq1_grp | atoms | indices of atoms specified in GROUP |
: GROUPDefine a group of atoms so that a particular list of atoms can be referenced with a single label in definitions of CVs or virtual atoms. More details ATOMSthe numerical indexes for the set of atoms in the group=q1
lq1_nmatThe OUTER_PRODUCT action with label lq1_nmat calculates the following quantities: Quantity | Type | Description |
lq1_nmat | matrix | a matrix containing the outer product of the two input vectors that was obtained using the function that was input |
: OUTER_PRODUCTCalculate the outer product matrix of two vectors More details ARGthe labels of the two vectors from which the outer product is being computed=q1_norm,lq1_uvec
lq1_uvecsThe VSTACK action with label lq1_uvecs calculates the following quantities: Quantity | Type | Description |
lq1_uvecs | matrix | a matrix that contains the input vectors in its columns |
: VSTACKCreate a matrix by stacking vectors together More details ARGthe values that you would like to stack together to construct the output matrix=q1_sp.rm-n1,q1_sp.im-n1,q1_sp.rm-0,q1_sp.im-0,q1_sp.rm-p1,q1_sp.im-p1
lq1_vecsThe CUSTOM action with label lq1_vecs calculates the following quantities: Quantity | Type | Description |
lq1_vecs | matrix | the matrix obtained by doing an element-wise application of an arbitrary function to the input matrix |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=lq1_uvecs,lq1_nmat FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
lq1_vecsTThe TRANSPOSE action with label lq1_vecsT calculates the following quantities: Quantity | Type | Description |
lq1_vecsT | matrix | the transpose of the input matrix |
: TRANSPOSECalculate the transpose of a matrix More details ARGthe label of the vector or matrix that should be transposed=lq1_vecs
lq1_cmapThe CONTACT_MATRIX action with label lq1_cmap calculates the following quantities: Quantity | Type | Description |
lq1_cmap | matrix | a matrix containing the weights for the bonds between each pair of atoms |
: CONTACT_MATRIXAdjacency matrix in which two atoms are adjacent if they are within a certain cutoff. More details GROUPspecifies the list of atoms that should be assumed indistinguishable=q1 SWITCHthe input for the switching function that acts upon the distance between each pair of atoms. Options for this keyword are explained in the documentation for LESS_THAN.={RATIONAL D_0=2.0 R_0=1.0}
lq1_dpmatThe MATRIX_PRODUCT action with label lq1_dpmat calculates the following quantities: Quantity | Type | Description |
lq1_dpmat | matrix | the product of the two input matrices |
: MATRIX_PRODUCTCalculate the product of two matrices More details ARGthe label of the two matrices from which the product is calculated=lq1_vecs,lq1_vecsT
lq1_prodThe CUSTOM action with label lq1_prod calculates the following quantities: Quantity | Type | Description |
lq1_prod | matrix | the matrix obtained by doing an element-wise application of an arbitrary function to the input matrix |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=lq1_cmap,lq1_dpmat FUNCthe function you wish to evaluate=x*y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
lq1_onesThe CONSTANT action with label lq1_ones calculates the following quantities: Quantity | Type | Description |
lq1_ones | vector | the constant value that was read from the plumed input |
: ONESCreate a constant vector with all elements equal to one More details SIZEthe number of ones that you would like to create=100
lq1The MATRIX_VECTOR_PRODUCT action with label lq1 calculates the following quantities: Quantity | Type | Description |
lq1 | vector | the vector that is obtained by taking the product between the matrix and the vector that were input |
: MATRIX_VECTOR_PRODUCTCalculate the product of the matrix and the vector More details ARGthe label for the matrix and the vector/scalar that are being multiplied=lq1_prod,lq1_ones
lq1_denomThe MATRIX_VECTOR_PRODUCT action with label lq1_denom calculates the following quantities: Quantity | Type | Description |
lq1_denom | vector | the vector that is obtained by taking the product between the matrix and the vector that were input |
: MATRIX_VECTOR_PRODUCTCalculate the product of the matrix and the vector More details ARGthe label for the matrix and the vector/scalar that are being multiplied=lq1_cmap,lq1_ones
lq1_avThe CUSTOM action with label lq1_av calculates the following quantities: Quantity | Type | Description |
lq1_av | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=lq1,lq1_denom FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
# --- End of included input ---
PRINTPrint quantities to a file. More details ARGthe labels of the values that you would like to print to the file=lq1 FILEthe name of the file on which to output these quantities=colvar
Please note that if you use the following input:
Click on the labels of the actions for more information on what each action computes
q1The Q1 action with label q1 calculates the following quantities: Quantity | Type | Description |
q1 | vector | the norms of the vectors of spherical harmonic coefficients |
: Q1Calculate 1st order Steinhardt parameters This action is a shortcut. More details SPECIESthe list of atoms for which the symmetry function is being calculated and the atoms that can be in the environments=1-100 SWITCHthe switching function that it used in the construction of the contact matrix. Options for this keyword are explained in the documentation for LESS_THAN.={RATIONAL D_0=2.0 R_0=1.0}
# q1: Q1 SPECIES=1-100 SWITCH={RATIONAL D_0=2.0 R_0=1.0}
q1_grpThe GROUP action with label q1_grp calculates the following quantities: Quantity | Type | Description |
q1_grp | atoms | indices of atoms specified in GROUP |
: GROUPDefine a group of atoms so that a particular list of atoms can be referenced with a single label in definitions of CVs or virtual atoms. More details ATOMSthe numerical indexes for the set of atoms in the group=1-100
q1_matThe CONTACT_MATRIX action with label q1_mat calculates the following quantities: Quantity | Type | Description |
q1_mat.w | matrix | a matrix containing the weights for the bonds between each pair of atoms |
q1_mat.x | matrix | the projection of the bond on the x axis |
q1_mat.y | matrix | the projection of the bond on the y axis |
q1_mat.z | matrix | the projection of the bond on the z axis |
: CONTACT_MATRIXAdjacency matrix in which two atoms are adjacent if they are within a certain cutoff. More details GROUPspecifies the list of atoms that should be assumed indistinguishable=1-100 SWITCHthe input for the switching function that acts upon the distance between each pair of atoms. Options for this keyword are explained in the documentation for LESS_THAN.={RATIONAL D_0=2.0 R_0=1.0} COMPONENTS also calculate the components of the vectors connecting the atoms in the contact matrix
q1_shThe SPHERICAL_HARMONIC action with label q1_sh calculates the following quantities: Quantity | Type | Description |
q1_sh.rm-n1 | matrix | the real parts of the spherical harmonic values with the m value given This is the n1th of these quantities |
q1_sh.rm-0 | matrix | the real parts of the spherical harmonic values with the m value given This is the 0th of these quantities |
q1_sh.rm-p1 | matrix | the real parts of the spherical harmonic values with the m value given This is the p1th of these quantities |
q1_sh.im-n1 | matrix | the real parts of the spherical harmonic values with the m value given This is the n1th of these quantities |
q1_sh.im-0 | matrix | the real parts of the spherical harmonic values with the m value given This is the 0th of these quantities |
q1_sh.im-p1 | matrix | the real parts of the spherical harmonic values with the m value given This is the p1th of these quantities |
: SPHERICAL_HARMONICCalculate the values of all the spherical harmonic funtions for a particular value of l. More details ARGthe values input to this function=q1_mat.x,q1_mat.y,q1_mat.z,q1_mat.w Lthe value of the angular momentum=1
q1_denom_onesThe CONSTANT action with label q1_denom_ones calculates the following quantities: Quantity | Type | Description |
q1_denom_ones | vector | the constant value that was read from the plumed input |
: ONESCreate a constant vector with all elements equal to one More details SIZEthe number of ones that you would like to create=100
q1_denomThe MATRIX_VECTOR_PRODUCT action with label q1_denom calculates the following quantities: Quantity | Type | Description |
q1_denom | vector | the vector that is obtained by taking the product between the matrix and the vector that were input |
: MATRIX_VECTOR_PRODUCTCalculate the product of the matrix and the vector More details ARGthe label for the matrix and the vector/scalar that are being multiplied=q1_mat.w,q1_denom_ones
q1_spThe MATRIX_VECTOR_PRODUCT action with label q1_sp calculates the following quantities: Quantity | Type | Description |
q1_sp.rm-n1 | vector | the product of the matrix q1_sh.rm-n1 and the vector q1_denom_ones |
q1_sp.rm-0 | vector | the product of the matrix q1_sh.rm-0 and the vector q1_denom_ones |
q1_sp.rm-p1 | vector | the product of the matrix q1_sh.rm-p1 and the vector q1_denom_ones |
q1_sp.im-n1 | vector | the product of the matrix q1_sh.im-n1 and the vector q1_denom_ones |
q1_sp.im-0 | vector | the product of the matrix q1_sh.im-0 and the vector q1_denom_ones |
q1_sp.im-p1 | vector | the product of the matrix q1_sh.im-p1 and the vector q1_denom_ones |
: MATRIX_VECTOR_PRODUCTCalculate the product of the matrix and the vector More details ARGthe label for the matrix and the vector/scalar that are being multiplied=q1_sh.*,q1_denom_ones
q1_norm2The COMBINE action with label q1_norm2 calculates the following quantities: Quantity | Type | Description |
q1_norm2 | vector | the vector obtained by doing an element-wise application of a linear compbination to the input vectors |
: COMBINECalculate a polynomial combination of a set of other variables. More details PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO POWERS the powers to which you are raising each of the arguments in your function=2,2,2,2,2,2 ARGthe values input to this function=q1_sp.rm-n1,q1_sp.im-n1,q1_sp.rm-0,q1_sp.im-0,q1_sp.rm-p1,q1_sp.im-p1
q1_normThe CUSTOM action with label q1_norm calculates the following quantities: Quantity | Type | Description |
q1_norm | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=q1_norm2 FUNCthe function you wish to evaluate=sqrt(x) PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q1The CUSTOM action with label q1 calculates the following quantities: Quantity | Type | Description |
q1 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=q1_norm,q1_denom FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
# --- End of included input ---
lq1The LOCAL_Q1 action with label lq1 calculates the following quantities: Quantity | Type | Description |
lq1 | vector | the values of the local steinhardt parameters for the input atoms |
lq1_mean | scalar | the mean of the colvars |
: LOCAL_Q1Calculate 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. This action is a shortcut. More details SPECIESthe label of the action that computes the Steinhardt parameters for which you would like to calculate local steinhardt parameters=q1 SWITCHThis keyword is used if you want to employ an alternative to the continuous swiching function defined above={RATIONAL D_0=2.0 R_0=1.0} MEAN calculate the mean of all the quantities
# lq1: LOCAL_Q1 SPECIES=q1 SWITCH={RATIONAL D_0=2.0 R_0=1.0} MEAN
lq1_uvecThe CONSTANT action with label lq1_uvec calculates the following quantities: Quantity | Type | Description |
lq1_uvec | vector | the constant value that was read from the plumed input |
: ONESCreate a constant vector with all elements equal to one More details SIZEthe number of ones that you would like to create=6
lq1_grpThe GROUP action with label lq1_grp calculates the following quantities: Quantity | Type | Description |
lq1_grp | atoms | indices of atoms specified in GROUP |
: GROUPDefine a group of atoms so that a particular list of atoms can be referenced with a single label in definitions of CVs or virtual atoms. More details ATOMSthe numerical indexes for the set of atoms in the group=q1
lq1_nmatThe OUTER_PRODUCT action with label lq1_nmat calculates the following quantities: Quantity | Type | Description |
lq1_nmat | matrix | a matrix containing the outer product of the two input vectors that was obtained using the function that was input |
: OUTER_PRODUCTCalculate the outer product matrix of two vectors More details ARGthe labels of the two vectors from which the outer product is being computed=q1_norm,lq1_uvec
lq1_uvecsThe VSTACK action with label lq1_uvecs calculates the following quantities: Quantity | Type | Description |
lq1_uvecs | matrix | a matrix that contains the input vectors in its columns |
: VSTACKCreate a matrix by stacking vectors together More details ARGthe values that you would like to stack together to construct the output matrix=q1_sp.rm-n1,q1_sp.im-n1,q1_sp.rm-0,q1_sp.im-0,q1_sp.rm-p1,q1_sp.im-p1
lq1_vecsThe CUSTOM action with label lq1_vecs calculates the following quantities: Quantity | Type | Description |
lq1_vecs | matrix | the matrix obtained by doing an element-wise application of an arbitrary function to the input matrix |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=lq1_uvecs,lq1_nmat FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
lq1_vecsTThe TRANSPOSE action with label lq1_vecsT calculates the following quantities: Quantity | Type | Description |
lq1_vecsT | matrix | the transpose of the input matrix |
: TRANSPOSECalculate the transpose of a matrix More details ARGthe label of the vector or matrix that should be transposed=lq1_vecs
lq1_cmapThe CONTACT_MATRIX action with label lq1_cmap calculates the following quantities: Quantity | Type | Description |
lq1_cmap | matrix | a matrix containing the weights for the bonds between each pair of atoms |
: CONTACT_MATRIXAdjacency matrix in which two atoms are adjacent if they are within a certain cutoff. More details GROUPspecifies the list of atoms that should be assumed indistinguishable=q1 SWITCHthe input for the switching function that acts upon the distance between each pair of atoms. Options for this keyword are explained in the documentation for LESS_THAN.={RATIONAL D_0=2.0 R_0=1.0}
lq1_dpmatThe MATRIX_PRODUCT action with label lq1_dpmat calculates the following quantities: Quantity | Type | Description |
lq1_dpmat | matrix | the product of the two input matrices |
: MATRIX_PRODUCTCalculate the product of two matrices More details ARGthe label of the two matrices from which the product is calculated=lq1_vecs,lq1_vecsT
lq1_prodThe CUSTOM action with label lq1_prod calculates the following quantities: Quantity | Type | Description |
lq1_prod | matrix | the matrix obtained by doing an element-wise application of an arbitrary function to the input matrix |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=lq1_cmap,lq1_dpmat FUNCthe function you wish to evaluate=x*y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
lq1_onesThe CONSTANT action with label lq1_ones calculates the following quantities: Quantity | Type | Description |
lq1_ones | vector | the constant value that was read from the plumed input |
: ONESCreate a constant vector with all elements equal to one More details SIZEthe number of ones that you would like to create=100
lq1The MATRIX_VECTOR_PRODUCT action with label lq1 calculates the following quantities: Quantity | Type | Description |
lq1 | vector | the vector that is obtained by taking the product between the matrix and the vector that were input |
: MATRIX_VECTOR_PRODUCTCalculate the product of the matrix and the vector More details ARGthe label for the matrix and the vector/scalar that are being multiplied=lq1_prod,lq1_ones
lq1_denomThe MATRIX_VECTOR_PRODUCT action with label lq1_denom calculates the following quantities: Quantity | Type | Description |
lq1_denom | vector | the vector that is obtained by taking the product between the matrix and the vector that were input |
: MATRIX_VECTOR_PRODUCTCalculate the product of the matrix and the vector More details ARGthe label for the matrix and the vector/scalar that are being multiplied=lq1_cmap,lq1_ones
lq1_avThe CUSTOM action with label lq1_av calculates the following quantities: Quantity | Type | Description |
lq1_av | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=lq1,lq1_denom FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
lq1_meanThe MEAN action with label lq1_mean calculates the following quantities: Quantity | Type | Description |
lq1_mean | scalar | the mean of all the elements in the input vector |
: MEANCalculate the arithmetic mean of the elements in a vector More details ARGthe values input to this function=lq1_av PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
# --- End of included input ---
PRINTPrint quantities to a file. More details ARGthe labels of the values that you would like to print to the file=lq1.mean FILEthe name of the file on which to output these quantities=colvar
the quantity in the vector that is averaged is:
\[s_i = \frac{ \sum_j F_{ij} }{ \sum_j \sigma(r_{ij}) }\]
This is not the same vector that is output in the last but one example input above. If you would like to output a vector that contains all the values for the quantity above you can calculate it using the following long input:
Click on the labels of the actions for more information on what each action computes
cmatThe CONTACT_MATRIX action with label cmat calculates the following quantities: Quantity | Type | Description |
cmat.w | matrix | a matrix containing the weights for the bonds between each pair of atoms |
cmat.x | matrix | the projection of the bond on the x axis |
cmat.y | matrix | the projection of the bond on the y axis |
cmat.z | matrix | the projection of the bond on the z axis |
: CONTACT_MATRIXAdjacency matrix in which two atoms are adjacent if they are within a certain cutoff. More details GROUPspecifies the list of atoms that should be assumed indistinguishable=1-100 COMPONENTS also calculate the components of the vectors connecting the atoms in the contact matrix SWITCHthe input for the switching function that acts upon the distance between each pair of atoms. Options for this keyword are explained in the documentation for LESS_THAN.={RATIONAL D_0=2.0 R_0=1.0}
onesThe ONES action with label ones calculates the following quantities: Quantity | Type | Description |
ones | vector | a vector of ones with the required number of elements |
: ONESCreate a constant vector with all elements equal to one This action is a shortcut. More details SIZEthe number of ones that you would like to create=100
# ones: ONES SIZE=100
onesThe CONSTANT action with label ones calculates the following quantities: Quantity | Type | Description |
ones | vector | the constant value that was read from the plumed input |
: CONSTANTCreate a constant value that can be passed to actions More details NOLOG do not report all the read in scalars in the log VALUESthe numbers that are in your constant value=1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
# --- End of included input --- coordThe MATRIX_VECTOR_PRODUCT action with label coord calculates the following quantities: Quantity | Type | Description |
coord | vector | the vector that is obtained by taking the product between the matrix and the vector that were input |
: MATRIX_VECTOR_PRODUCTCalculate the product of the matrix and the vector More details ARGthe label for the matrix and the vector/scalar that are being multiplied=cmat.w,ones
shThe SPHERICAL_HARMONIC action with label sh calculates the following quantities: Quantity | Type | Description |
sh.rm-n1 | matrix | the real parts of the spherical harmonic values with the m value given This is the n1th of these quantities |
sh.rm-0 | matrix | the real parts of the spherical harmonic values with the m value given This is the 0th of these quantities |
sh.rm-p1 | matrix | the real parts of the spherical harmonic values with the m value given This is the p1th of these quantities |
sh.im-n1 | matrix | the real parts of the spherical harmonic values with the m value given This is the n1th of these quantities |
sh.im-0 | matrix | the real parts of the spherical harmonic values with the m value given This is the 0th of these quantities |
sh.im-p1 | matrix | the real parts of the spherical harmonic values with the m value given This is the p1th of these quantities |
: SPHERICAL_HARMONICCalculate the values of all the spherical harmonic funtions for a particular value of l. More details ARGthe values input to this function=cmat.x,cmat.y,cmat.z,cmat.w Lthe value of the angular momentum=1
spThe MATRIX_VECTOR_PRODUCT action with label sp calculates the following quantities: Quantity | Type | Description |
sp.rm-n1 | vector | the product of the matrix sh.rm-n1 and the vector ones |
sp.rm-0 | vector | the product of the matrix sh.rm-0 and the vector ones |
sp.rm-p1 | vector | the product of the matrix sh.rm-p1 and the vector ones |
sp.im-n1 | vector | the product of the matrix sh.im-n1 and the vector ones |
sp.im-0 | vector | the product of the matrix sh.im-0 and the vector ones |
sp.im-p1 | vector | the product of the matrix sh.im-p1 and the vector ones |
: MATRIX_VECTOR_PRODUCTCalculate the product of the matrix and the vector More details ARGthe label for the matrix and the vector/scalar that are being multiplied=sh.*,ones
q1_2The COMBINE action with label q1_2 calculates the following quantities: Quantity | Type | Description |
q1_2 | vector | the vector obtained by doing an element-wise application of a linear compbination to the input vectors |
: COMBINECalculate a polynomial combination of a set of other variables. More details PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO POWERS the powers to which you are raising each of the arguments in your function=2,2,2,2,2,2 ARGthe values input to this function=sp.rm-n1,sp.im-n1,sp.rm-0,sp.im-0,sp.rm-p1,sp.im-p1
q1The CUSTOM action with label q1 calculates the following quantities: Quantity | Type | Description |
q1 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=q1_2 FUNCthe function you wish to evaluate=sqrt(x) PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
stackThe VSTACK action with label stack calculates the following quantities: Quantity | Type | Description |
stack | matrix | a matrix that contains the input vectors in its columns |
: VSTACKCreate a matrix by stacking vectors together More details ARGthe values that you would like to stack together to construct the output matrix=sp.rm-n1,sp.im-n1,sp.rm-0,sp.im-0,sp.rm-p1,sp.im-p1
lonesThe ONES action with label lones calculates the following quantities: Quantity | Type | Description |
lones | vector | a vector of ones with the required number of elements |
: ONESCreate a constant vector with all elements equal to one This action is a shortcut. More details SIZEthe number of ones that you would like to create=6
# lones: ONES SIZE=6
lonesThe CONSTANT action with label lones calculates the following quantities: Quantity | Type | Description |
lones | vector | the constant value that was read from the plumed input |
: CONSTANTCreate a constant value that can be passed to actions More details NOLOG do not report all the read in scalars in the log VALUESthe numbers that are in your constant value=1,1,1,1,1,1
# --- End of included input --- unormThe OUTER_PRODUCT action with label unorm calculates the following quantities: Quantity | Type | Description |
unorm | matrix | a matrix containing the outer product of the two input vectors that was obtained using the function that was input |
: OUTER_PRODUCTCalculate the outer product matrix of two vectors This action has hidden defaults. More details ARGthe labels of the two vectors from which the outer product is being computed=q1,lones
unorm: OUTER_PRODUCTCalculate the outer product matrix of two vectors This action uses the defaults shown here. More details ARGthe labels of the two vectors from which the outer product is being computed=q1,lones FUNC the function of the input vectors that should be put in the elements of the outer product=x*y
oq1The CUSTOM action with label oq1 calculates the following quantities: Quantity | Type | Description |
oq1 | matrix | the matrix obtained by doing an element-wise application of an arbitrary function to the input matrix |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=stack,unorm FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
oq1TThe TRANSPOSE action with label oq1T calculates the following quantities: Quantity | Type | Description |
oq1T | matrix | the transpose of the input matrix |
: TRANSPOSECalculate the transpose of a matrix More details ARGthe label of the vector or matrix that should be transposed=oq1
cmat2The CONTACT_MATRIX action with label cmat2 calculates the following quantities: Quantity | Type | Description |
cmat2 | matrix | a matrix containing the weights for the bonds between each pair of atoms |
: CONTACT_MATRIXAdjacency matrix in which two atoms are adjacent if they are within a certain cutoff. More details GROUPspecifies the list of atoms that should be assumed indistinguishable=1-100 SWITCHthe input for the switching function that acts upon the distance between each pair of atoms. Options for this keyword are explained in the documentation for LESS_THAN.={RATIONAL D_0=2.0 R_0=1.0}
sThe MATRIX_PRODUCT action with label s calculates the following quantities: Quantity | Type | Description |
s | matrix | the product of the two input matrices |
: MATRIX_PRODUCTCalculate the product of two matrices More details ARGthe label of the two matrices from which the product is calculated=oq1,oq1T
fThe CUSTOM action with label f calculates the following quantities: Quantity | Type | Description |
f | matrix | the matrix obtained by doing an element-wise application of an arbitrary function to the input matrix |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=cmat2,s FUNCthe function you wish to evaluate=x*y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
lq1The MATRIX_VECTOR_PRODUCT action with label lq1 calculates the following quantities: Quantity | Type | Description |
lq1 | vector | the vector that is obtained by taking the product between the matrix and the vector that were input |
: MATRIX_VECTOR_PRODUCTCalculate the product of the matrix and the vector More details ARGthe label for the matrix and the vector/scalar that are being multiplied=f,ones
denomThe MATRIX_VECTOR_PRODUCT action with label denom calculates the following quantities: Quantity | Type | Description |
denom | vector | the vector that is obtained by taking the product between the matrix and the vector that were input |
: MATRIX_VECTOR_PRODUCTCalculate the product of the matrix and the vector More details ARGthe label for the matrix and the vector/scalar that are being multiplied=cmat2,ones
lq1_avThe CUSTOM action with label lq1_av calculates the following quantities: Quantity | Type | Description |
lq1_av | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=lq1,denom FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
PRINTPrint quantities to a file. More details ARGthe labels of the values that you would like to print to the file=lq1_av FILEthe name of the file on which to output these quantities=colvar
Alternatively, if you want to use the shortcut you can use:
Click on the labels of the actions for more information on what each action computes
q1The Q1 action with label q1 calculates the following quantities: Quantity | Type | Description |
q1 | vector | the norms of the vectors of spherical harmonic coefficients |
: Q1Calculate 1st order Steinhardt parameters This action is a shortcut. More details SPECIESthe list of atoms for which the symmetry function is being calculated and the atoms that can be in the environments=1-100 SWITCHthe switching function that it used in the construction of the contact matrix. Options for this keyword are explained in the documentation for LESS_THAN.={RATIONAL D_0=2.0 R_0=1.0}
# q1: Q1 SPECIES=1-100 SWITCH={RATIONAL D_0=2.0 R_0=1.0}
q1_grpThe GROUP action with label q1_grp calculates the following quantities: Quantity | Type | Description |
q1_grp | atoms | indices of atoms specified in GROUP |
: GROUPDefine a group of atoms so that a particular list of atoms can be referenced with a single label in definitions of CVs or virtual atoms. More details ATOMSthe numerical indexes for the set of atoms in the group=1-100
q1_matThe CONTACT_MATRIX action with label q1_mat calculates the following quantities: Quantity | Type | Description |
q1_mat.w | matrix | a matrix containing the weights for the bonds between each pair of atoms |
q1_mat.x | matrix | the projection of the bond on the x axis |
q1_mat.y | matrix | the projection of the bond on the y axis |
q1_mat.z | matrix | the projection of the bond on the z axis |
: CONTACT_MATRIXAdjacency matrix in which two atoms are adjacent if they are within a certain cutoff. More details GROUPspecifies the list of atoms that should be assumed indistinguishable=1-100 SWITCHthe input for the switching function that acts upon the distance between each pair of atoms. Options for this keyword are explained in the documentation for LESS_THAN.={RATIONAL D_0=2.0 R_0=1.0} COMPONENTS also calculate the components of the vectors connecting the atoms in the contact matrix
q1_shThe SPHERICAL_HARMONIC action with label q1_sh calculates the following quantities: Quantity | Type | Description |
q1_sh.rm-n1 | matrix | the real parts of the spherical harmonic values with the m value given This is the n1th of these quantities |
q1_sh.rm-0 | matrix | the real parts of the spherical harmonic values with the m value given This is the 0th of these quantities |
q1_sh.rm-p1 | matrix | the real parts of the spherical harmonic values with the m value given This is the p1th of these quantities |
q1_sh.im-n1 | matrix | the real parts of the spherical harmonic values with the m value given This is the n1th of these quantities |
q1_sh.im-0 | matrix | the real parts of the spherical harmonic values with the m value given This is the 0th of these quantities |
q1_sh.im-p1 | matrix | the real parts of the spherical harmonic values with the m value given This is the p1th of these quantities |
: SPHERICAL_HARMONICCalculate the values of all the spherical harmonic funtions for a particular value of l. More details ARGthe values input to this function=q1_mat.x,q1_mat.y,q1_mat.z,q1_mat.w Lthe value of the angular momentum=1
q1_denom_onesThe CONSTANT action with label q1_denom_ones calculates the following quantities: Quantity | Type | Description |
q1_denom_ones | vector | the constant value that was read from the plumed input |
: ONESCreate a constant vector with all elements equal to one More details SIZEthe number of ones that you would like to create=100
q1_denomThe MATRIX_VECTOR_PRODUCT action with label q1_denom calculates the following quantities: Quantity | Type | Description |
q1_denom | vector | the vector that is obtained by taking the product between the matrix and the vector that were input |
: MATRIX_VECTOR_PRODUCTCalculate the product of the matrix and the vector More details ARGthe label for the matrix and the vector/scalar that are being multiplied=q1_mat.w,q1_denom_ones
q1_spThe MATRIX_VECTOR_PRODUCT action with label q1_sp calculates the following quantities: Quantity | Type | Description |
q1_sp.rm-n1 | vector | the product of the matrix q1_sh.rm-n1 and the vector q1_denom_ones |
q1_sp.rm-0 | vector | the product of the matrix q1_sh.rm-0 and the vector q1_denom_ones |
q1_sp.rm-p1 | vector | the product of the matrix q1_sh.rm-p1 and the vector q1_denom_ones |
q1_sp.im-n1 | vector | the product of the matrix q1_sh.im-n1 and the vector q1_denom_ones |
q1_sp.im-0 | vector | the product of the matrix q1_sh.im-0 and the vector q1_denom_ones |
q1_sp.im-p1 | vector | the product of the matrix q1_sh.im-p1 and the vector q1_denom_ones |
: MATRIX_VECTOR_PRODUCTCalculate the product of the matrix and the vector More details ARGthe label for the matrix and the vector/scalar that are being multiplied=q1_sh.*,q1_denom_ones
q1_norm2The COMBINE action with label q1_norm2 calculates the following quantities: Quantity | Type | Description |
q1_norm2 | vector | the vector obtained by doing an element-wise application of a linear compbination to the input vectors |
: COMBINECalculate a polynomial combination of a set of other variables. More details PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO POWERS the powers to which you are raising each of the arguments in your function=2,2,2,2,2,2 ARGthe values input to this function=q1_sp.rm-n1,q1_sp.im-n1,q1_sp.rm-0,q1_sp.im-0,q1_sp.rm-p1,q1_sp.im-p1
q1_normThe CUSTOM action with label q1_norm calculates the following quantities: Quantity | Type | Description |
q1_norm | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=q1_norm2 FUNCthe function you wish to evaluate=sqrt(x) PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
q1The CUSTOM action with label q1 calculates the following quantities: Quantity | Type | Description |
q1 | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=q1_norm,q1_denom FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
# --- End of included input ---
lq1The LOCAL_Q1 action with label lq1 calculates the following quantities: Quantity | Type | Description |
lq1 | vector | the values of the local steinhardt parameters for the input atoms |
: LOCAL_Q1Calculate 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. This action is a shortcut. More details SPECIESthe label of the action that computes the Steinhardt parameters for which you would like to calculate local steinhardt parameters=q1 SWITCHThis keyword is used if you want to employ an alternative to the continuous swiching function defined above={RATIONAL D_0=2.0 R_0=1.0}
# lq1: LOCAL_Q1 SPECIES=q1 SWITCH={RATIONAL D_0=2.0 R_0=1.0}
lq1_uvecThe CONSTANT action with label lq1_uvec calculates the following quantities: Quantity | Type | Description |
lq1_uvec | vector | the constant value that was read from the plumed input |
: ONESCreate a constant vector with all elements equal to one More details SIZEthe number of ones that you would like to create=6
lq1_grpThe GROUP action with label lq1_grp calculates the following quantities: Quantity | Type | Description |
lq1_grp | atoms | indices of atoms specified in GROUP |
: GROUPDefine a group of atoms so that a particular list of atoms can be referenced with a single label in definitions of CVs or virtual atoms. More details ATOMSthe numerical indexes for the set of atoms in the group=q1
lq1_nmatThe OUTER_PRODUCT action with label lq1_nmat calculates the following quantities: Quantity | Type | Description |
lq1_nmat | matrix | a matrix containing the outer product of the two input vectors that was obtained using the function that was input |
: OUTER_PRODUCTCalculate the outer product matrix of two vectors More details ARGthe labels of the two vectors from which the outer product is being computed=q1_norm,lq1_uvec
lq1_uvecsThe VSTACK action with label lq1_uvecs calculates the following quantities: Quantity | Type | Description |
lq1_uvecs | matrix | a matrix that contains the input vectors in its columns |
: VSTACKCreate a matrix by stacking vectors together More details ARGthe values that you would like to stack together to construct the output matrix=q1_sp.rm-n1,q1_sp.im-n1,q1_sp.rm-0,q1_sp.im-0,q1_sp.rm-p1,q1_sp.im-p1
lq1_vecsThe CUSTOM action with label lq1_vecs calculates the following quantities: Quantity | Type | Description |
lq1_vecs | matrix | the matrix obtained by doing an element-wise application of an arbitrary function to the input matrix |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=lq1_uvecs,lq1_nmat FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
lq1_vecsTThe TRANSPOSE action with label lq1_vecsT calculates the following quantities: Quantity | Type | Description |
lq1_vecsT | matrix | the transpose of the input matrix |
: TRANSPOSECalculate the transpose of a matrix More details ARGthe label of the vector or matrix that should be transposed=lq1_vecs
lq1_cmapThe CONTACT_MATRIX action with label lq1_cmap calculates the following quantities: Quantity | Type | Description |
lq1_cmap | matrix | a matrix containing the weights for the bonds between each pair of atoms |
: CONTACT_MATRIXAdjacency matrix in which two atoms are adjacent if they are within a certain cutoff. More details GROUPspecifies the list of atoms that should be assumed indistinguishable=q1 SWITCHthe input for the switching function that acts upon the distance between each pair of atoms. Options for this keyword are explained in the documentation for LESS_THAN.={RATIONAL D_0=2.0 R_0=1.0}
lq1_dpmatThe MATRIX_PRODUCT action with label lq1_dpmat calculates the following quantities: Quantity | Type | Description |
lq1_dpmat | matrix | the product of the two input matrices |
: MATRIX_PRODUCTCalculate the product of two matrices More details ARGthe label of the two matrices from which the product is calculated=lq1_vecs,lq1_vecsT
lq1_prodThe CUSTOM action with label lq1_prod calculates the following quantities: Quantity | Type | Description |
lq1_prod | matrix | the matrix obtained by doing an element-wise application of an arbitrary function to the input matrix |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=lq1_cmap,lq1_dpmat FUNCthe function you wish to evaluate=x*y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
lq1_onesThe CONSTANT action with label lq1_ones calculates the following quantities: Quantity | Type | Description |
lq1_ones | vector | the constant value that was read from the plumed input |
: ONESCreate a constant vector with all elements equal to one More details SIZEthe number of ones that you would like to create=100
lq1The MATRIX_VECTOR_PRODUCT action with label lq1 calculates the following quantities: Quantity | Type | Description |
lq1 | vector | the vector that is obtained by taking the product between the matrix and the vector that were input |
: MATRIX_VECTOR_PRODUCTCalculate the product of the matrix and the vector More details ARGthe label for the matrix and the vector/scalar that are being multiplied=lq1_prod,lq1_ones
lq1_denomThe MATRIX_VECTOR_PRODUCT action with label lq1_denom calculates the following quantities: Quantity | Type | Description |
lq1_denom | vector | the vector that is obtained by taking the product between the matrix and the vector that were input |
: MATRIX_VECTOR_PRODUCTCalculate the product of the matrix and the vector More details ARGthe label for the matrix and the vector/scalar that are being multiplied=lq1_cmap,lq1_ones
lq1_avThe CUSTOM action with label lq1_av calculates the following quantities: Quantity | Type | Description |
lq1_av | vector | the vector obtained by doing an element-wise application of an arbitrary function to the input vectors |
: CUSTOMCalculate a combination of variables using a custom expression. More details ARGthe values input to this function=lq1,lq1_denom FUNCthe function you wish to evaluate=x/y PERIODICif the output of your function is periodic then you should specify the periodicity of the function=NO
# --- End of included input ---
PRINTPrint quantities to a file. More details ARGthe labels of the values that you would like to print to the file=lq1_av FILEthe name of the file on which to output these quantities=colvar
Conclusion
The implementation of the Steinhardt parameters in previous versions of PLUMED grew rather organically, which made the code confusing and difficult to use. I hope this article
convinces readers that the changes that have been made are worthwhile. This new structure exposes the linear algebra that is being used to compute all the variants on these particular
order parameters in the input file. It is thus easier to determine what PLUMED is actually computing.
All the old inputs should still work as I have included shortcuts that reproduce new-style input files that reproduce what PLUMED used to do in the past. However, I hope that folks will not use
these shortcuts in the future as when these new inputs are used it is much easier for folks to understand what has been done.