This is part of the adjmat module | |
It is only available if you configure PLUMED with ./configure –enable-modules=adjmat . Furthermore, this feature is still being developed so take care when using it and report any problems on the mailing list. |
Calculate SPRINT topological variables from an adjacency matrix.
The SPRINT topological variables are calculated from the largest eigenvalue, \(\lambda\) of an \(n\times n\) adjacency matrix and its corresponding eigenvector, \(\mathbf{V}\), using:
\[ s_i = \sqrt{n} \lambda v_i \]
You can use different quantities to measure whether or not two given atoms/molecules are adjacent or not in the adjacency matrix. The simplest measure of adjacency is is whether two atoms/molecules are within some cutoff of each other. Further complexity can be added by insisting that two molecules are adjacent if they are within a certain distance of each other and if they have similar orientations.
This example input calculates the 7 SPRINT coordinates for a 7 atom cluster of Lennard-Jones atoms and prints their values to a file. In this input the SPRINT coordinates are calculated in the manner described in ?? so two atoms are adjacent if they are within a cutoff:
d1: DENSITYSPECIES=1-7 mat: CONTACT_MATRIXcompulsory keyword the atoms in the groupATOMS=d1the atoms for which you would like to calculate the adjacency matrix (basically equivalent to GROUP)SWITCH={RATIONAL R_0=0.1} ss: SPRINTspecify the switching function to use between two sets of indistinguishable atoms.MATRIX=mat PRINTthe matrix that you would like to perform SPRINT onARG=ss.*the input for this action is the scalar output from one or more other actions.FILE=colvarthe name of the file on which to output these quantities
This example input calculates the 14 SPRINT coordinates for a molecule composed of 7 hydrogen and 7 carbon atoms. Once again two atoms are adjacent if they are within a cutoff: