Collective variables (CVs) are functions of the coordinates of a molecular system and provide a means to project its conformational state onto a lower-dimensional space. By stimulating the dynamics of a judiciously chosen set of CVs, one can obtain an enhanced sampling of the configuration space, including regions that are otherwise difficult to access. The system's free energy as a function of these CVs can be used to characterize the relative stability of different states and to identify pathways connecting them.
CVPack is a Python package that provides pre-defined CVs for the powerful molecular dynamics engine OpenMM. All these CVs are subclasses of OpenMM's Force class and, as such, can be directly added to a CustomCVForce or used to define a BiasVariable for Metadynamics.
The CVs implemented in CVPack are listed in the table below.
| Collective Variable | Description |
|---|---|
| Angle | angle formed by three atoms |
| Atomic Function | a user-defined function of the coordinates of a group of atoms |
| Attraction Strength | strength of the attraction between two groups of atoms |
| Centroid Function | a user-defined function of the centroids of groups of atoms |
| Composite RMSD | multibody RMSD with concerted-rotation alignment |
| Distance | distance between two atoms |
| Helix angle content | alpha-helix angle content of a sequence of residues |
| Helix H-bond content | alpha-helix hydrogen-bond content of a sequence of residues |
| Helix RMSD content | alpha-helix RMSD content of a sequence of residues |
| Helix torsion content | alpha-helix Ramachandran content of a sequence of residues |
| Meta CV | a function of other collective variables |
| Number of contacts | number of contacts between two groups of atoms |
| OpenMM Force wrapper | converts an OpenMM Force object into a CVPack CV |
| Path in CV space | progress along (or deviation from) a path in CV space |
| Path in RMSD space | progress along (or deviation from) a path in RMSD space |
| Radius of gyration | radius of gyration of a group of atoms |
| (Radius of gyration)^2 | square of the radius of gyration of a group of atoms |
| Residue coordination | number of contacts between two disjoint groups of residues |
| RMSD | root-mean-square deviation with respect to a reference structure |
| Sheet RMSD content | beta-sheet RMSD content of a sequence of residues |
| Shortest Distance | shortest distance between two groups of atoms |
| Torsion | torsion angle formed by four atoms |
| Torsion similarity | degree of similarity between pairs of torsion angles |
CVPack is available as a conda package on the mdtools channel. To install it, run:
conda install -c conda-forge -c mdtools cvpackOr:
mamba install -c mdtools cvpackTo use CVPack in your own Python script or Jupyter notebook, simply import it as follows:
import cvpackDocumentation for the latest CVPack version is available on Github Pages.
Copyright (c) 2023-2024 C. Abreu & Redesign Science
Initial project based on the CMS Cookiecutter version 1.1.