Skip to main content

Fast and memory-efficient clustering of long Molecular Dynamics

Project description

BitClust: Fast and memory-efficient clustering of long Molecular Dynamics

Home Page


BitClust´s latest documentation is available here

Description


BitClust is a Python command-line interface (CLI) conceived for fast clustering of relatively long Molecular Dynamics trajectories following Daura's algorithm [1]. Retrieved clusters are roughly equivalent to those reported by VMD's internal command measure cluster but they are computed in a much faster way (see benchmark section for more details).

Motivation

Nowadays very long simulations are carried on routinely. Enhanced sampling methods like metadynamics, REMD, and accelerated dynamics allow escaping from potential energy minima, returning trajectories that are conformationally sparsed and where every cluster can be potentially important to detect and analyze. Improvements on software designed to address this task is an important field of research.

BitClust offer is a classical tradeoff; RAM for speed. It can calculate all pairwise distances between frames to run a clustering job and then store them in memory instead of recalculating them whenever a cluster is found. It is worth noting that used memory has been deeply optimized by encoding similarity distances as bits (0 if the distance is less equal than a specified threshold, 1 otherwise). This encoding result in a storage reduction as high as 32X compared to similar algorithms that saves the same information as single-precision float values.

Main Dependencies

BitClust is built on the shoulders of two giants:

  • MDTraj software that allows a very fast calculation of RMSD pairwise distances between all frames of trajectories in a parallelized fashion and

  • bitarray third-party python library which offers a memory-efficient data structure of bit-vectors (bit arrays) and a set of bitwise operations that are the very heart of our clustering implementation.

Citation

If you make use of BitClust in your scientific work, BitCool and cite it ;)

Licence

BitClust is licensed under GNU General Public License v3.0.

Reference

[1] Daura, X.; van Gunsteren, W. F.; Jaun, B.; Mark, A. E.; Gademann, K.; Seebach, D. Peptide Folding: When Simulation Meets Experiment. Angew. Chemie Int. Ed. 1999, 38 (1/2), 236–240.

Project details


Download files

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

Files for bitclust, version 0.0.9
Filename, size File type Python version Upload date Hashes
Filename, size bitclust-0.0.9-py3-none-any.whl (19.6 kB) File type Wheel Python version py3 Upload date Hashes View hashes
Filename, size bitclust-0.0.9.tar.gz (6.9 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page