| version 1.33 | version 1.34 |
|---|
| |
| } | } |
| \label{section:colvars} | \label{section:colvars} |
| | |
| In today's molecular dynamics simulations, it is often useful to reduce the large number of degrees of freedom of a physical system into few parameters whose statistical distributions can be analyzed individually, or used to define biasing potentials to alter the dynamics of the system in a controlled manner. | In molecular dynamics simulations, it is often useful to reduce the large number of degrees of freedom of a physical system into few parameters whose statistical distributions can be analyzed individually, or used to define biasing potentials to alter the dynamics of the system in a controlled manner. |
| These have been called `order parameters', `collective variables', `(surrogate) reaction coordinates', and many other terms. | These have been called `order parameters', `collective variables', `(surrogate) reaction coordinates', and many other terms. |
| | |
| Here we use primarily the term `collective variable' (shortened to \textit{colvar}), which indicates any differentiable function of atomic Cartesian coordinates, $\bm{x}_{i}$, with $i$ between $1$ and $N$, the total | Here we use primarily the term `collective variable' (shortened to \textit{colvar}), which indicates any differentiable function of atomic Cartesian coordinates, $\bm{x}_{i}$, with $i$ between $1$ and $N$, the total |
| |
| \cvsec{Selecting atoms for colvars: defining atom groups} | \cvsec{Selecting atoms for colvars: defining atom groups} |
| \label{sec:colvar_atom_groups} | \label{sec:colvar_atom_groups} |
| | |
| | To define collective variables, atoms are usually selected as groups. Each group is defined using an identifier that is unique in the context of the specific colvar component (e.g.~for a distance component, the two groups are \texttt{group1} and \texttt{group2}). |
| | The identifier is followed by a brace-delimited block containing selection keywords and other parameters, including an optional \texttt{name}: |
| | |
| | \begin{itemize} |
| | \item \key |
| | {name}{% |
| | atom group}{% |
| | Unique name for the atom group}{% |
| | string}{% |
| | This parameter defines a unique name for this atom group, which can be referred to |
| | in the definition of other atom groups (including in other colvars) by invoking |
| | \texttt{atomsOfGroup} as a selection keyword.} |
| | \end{itemize} |
| | |
| | |
| \cvsubsec{Selection keywords} | \cvsubsec{Selection keywords} |
| \label{sec:colvar_atom_groups_sel} | \label{sec:colvar_atom_groups_sel} |
| | |
| To define collective variables, atoms are usually selected by group. Each group is identified by a name that is unique in the context of the specific colvar component (e.g.~for a distance component, the names of the two groups are \texttt{group1} and \texttt{group2}). | Selection keywords may be used individually or in combination with each other, and each can be repeated any number of times. |
| The name is followed by a brace-delimited block of selection keywords: these may be used individually or in combination with each other, and each can be repeated any number of times. | |
| Selection is incremental: each keyword adds the corresponding atoms to the selection, so that different sets of atoms can be combined. | Selection is incremental: each keyword adds the corresponding atoms to the selection, so that different sets of atoms can be combined. |
| However, atoms included by multiple keywords are only counted once. | However, atoms included by multiple keywords are only counted once. |
| Below is an example configuration for an atom group named ``\texttt{atoms}'', which uses an unusually varied combination of selection keywords:\\ | Below is an example configuration for an atom group with identifier ``\texttt{atoms}'', which uses an unusually varied combination of selection keywords:\\ |
| | |
| {% | {% |
| % verbatim can't appear within commands | % verbatim can't appear within commands |
| |
| the list. \emph{The number of the first atom in the system is 1: to convert from a VMD selection, use ``atomselect get serial''.} | the list. \emph{The number of the first atom in the system is 1: to convert from a VMD selection, use ``atomselect get serial''.} |
| } | } |
| | |
| | |
| \item % | \item % |
| \key | \key |
| {indexGroup}{% | {indexGroup}{% |
| |
| | |
| \item % | \item % |
| \key | \key |
| | {atomsOfGroup}{% |
| | atom group}{% |
| | Name of group defined previously}{% |
| | string}{% |
| | Refers to a group defined previously using its user-defined \texttt{name}. |
| | This adds all atoms of that named group to the current group.} |
| | |
| | \item % |
| | \key |
| {atomNumbersRange}{% | {atomNumbersRange}{% |
| atom group}{% | atom group}{% |
| Atoms within a number range}{% | Atoms within a number range}{% |
| |
| \item \texttt{distanceXY}: projection of a distance vector on a plane; | \item \texttt{distanceXY}: projection of a distance vector on a plane; |
| \item \texttt{distanceInv}: mean distance between two groups of atoms (e.g.~NOE-based distance); | \item \texttt{distanceInv}: mean distance between two groups of atoms (e.g.~NOE-based distance); |
| \item \texttt{angle}: angle between three groups; | \item \texttt{angle}: angle between three groups; |
| | \item \texttt{dihedral}: torsional (dihedral) angle between four groups; |
| \item \texttt{dipoleAngle}: angle between two groups and dipole of a third group; | \item \texttt{dipoleAngle}: angle between two groups and dipole of a third group; |
| | \item \texttt{polarTheta}: polar angle of a group in spherical coordinates; |
| | \item \texttt{polarPhi}: azimuthal angle of a group in spherical coordinates; |
| \item \texttt{coordNum}: coordination number between two groups; | \item \texttt{coordNum}: coordination number between two groups; |
| \item \texttt{selfCoordNum}: coordination number of atoms within a | \item \texttt{selfCoordNum}: coordination number of atoms within a |
| group; | group; |
| |
| \dupkey{oneSiteTotalForce}{\texttt{dihedral}}{colvar|distance|oneSiteTotalForce}{\texttt{distance} component} | \dupkey{oneSiteTotalForce}{\texttt{dihedral}}{colvar|distance|oneSiteTotalForce}{\texttt{distance} component} |
| \end{cvcoptions} | \end{cvcoptions} |
| | |
| | \cvsubsubsec{\texttt{polarTheta}: polar angle in |
| | spherical coordinates.} |
| | The \texttt{polarTheta~\{...\}} block defines the polar angle in |
| | spherical coordinates, for the center of mass of a group of atoms |
| | described by the block \texttt{atoms}. It returns an angle |
| | (in degrees) within the interval $[0:180]$. |
| | To obtain spherical coordinates in a frame of reference tied to |
| | another group of atoms, use the \texttt{fittingGroup}\ref{sec:colvar_atom_groups_ref_frame} option |
| | within the \texttt{atoms} block. |
| | |
| | \begin{cvcoptions} |
| | \item % |
| | \labelkey{colvar|polarTheta|atoms} |
| | \key |
| | {atoms}{% |
| | \texttt{polarPhi}}{% |
| | Atom group}{% |
| | \texttt{atoms~\{...\}} block}{% |
| | Defines the group of atoms for the COM of which the angle should be calculated. |
| | } |
| | \end{cvcoptions} |
| | |
| | |
| | \cvsubsubsec{\texttt{polarPhi}: azimuthal angle in |
| | spherical coordinates.} |
| | The \texttt{polarPhi~\{...\}} block defines the azimuthal angle in |
| | spherical coordinates, for the center of mass of a group of atoms |
| | described by the block \texttt{atoms}. It returns an angle |
| | (in degrees) within the interval $[-180:180]$. The Colvars module |
| | calculates all the distances between two angles taking into account |
| | periodicity. For instance, reference values for restraints or range |
| | boundaries can be defined by using any real number of choice. |
| | |
| | \begin{cvcoptions} |
| | \item % |
| | \labelkey{colvar|polarPhi|atoms} |
| | \key |
| | {atoms}{% |
| | \texttt{polarPhi}}{% |
| | Atom group}{% |
| | \texttt{atoms~\{...\}} block}{% |
| | Defines the group of atoms for the COM of which the angle should be calculated. |
| | } |
| | \end{cvcoptions} |
| | |
| \cvsubsubsec{\texttt{coordNum}: coordination number between two groups.} | \cvsubsubsec{\texttt{coordNum}: coordination number between two groups.} |
| The \texttt{coordNum \{...\}} block defines | The \texttt{coordNum \{...\}} block defines |
| |
| \texttt{colvar}}{% | \texttt{colvar}}{% |
| Position of the lower wall}{% | Position of the lower wall}{% |
| Space-separated list of decimals}{% | Space-separated list of decimals}{% |
| Defines the values $\xi_{\mathrm{upper}}$ ve which a confining restraint on the colvar is applied to each colvar $\xi$.} | Defines the values $\xi_{\mathrm{upper}}$ above which a confining restraint on the colvar is applied to each colvar $\xi$.} |
| | |
| \item \dupkey{forceConstant}{\texttt{harmonicWalls}}{sec:colvarbias_harmonic}{Harmonic restraints} | \item \dupkey{forceConstant}{\texttt{harmonicWalls}}{sec:colvarbias_harmonic}{Harmonic restraints} |
| % \textbf{Note:} if two distinct force constants are needed for the two walls, it is possible to define a \texttt{harmonicWalls} instance for each. | % \textbf{Note:} if two distinct force constants are needed for the two walls, it is possible to define a \texttt{harmonicWalls} instance for each. |