Skip to main content

Useful Collective Variables for OpenMM

Project description

Collective Variable Package

GitHub Actions Build Status GitHub Actions Build Status GitHub Actions Build Status GitHub Actions Build Status Documentation Status Coverage Report

Conda version Conda platforms Conda downloads PyPI version PyPI version PyPI version

License Twitter

Overview

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, for instance.

Collective Variables

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

Installation and Usage

CVPack is available as a conda package on the mdtools channel. To install it, run:

    conda install -c conda-forge -c mdtools cvpack

Or:

    mamba install -c mdtools cvpack

To use CVPack in your own Python script or Jupyter notebook, simply import it as follows:

    import cvpack

Documentation

Documentation for the latest CVPack version is available on Github Pages.

Copyright

Copyright (c) 2023-2024 C. Abreu & Redesign Science

Acknowledgements

Initial project based on the CMS Cookiecutter version 1.1.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cvpack-0.12.1.tar.gz (63.0 kB view hashes)

Uploaded Source

Built Distribution

cvpack-0.12.1-py3-none-any.whl (86.8 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page