Skip to main content

Bubble detection for molecular dynamics simulations.

Project description

Burbuja

GitHub Actions Build Status codecov

License: MIT python

Overview

Detect bubbles, vapor pockets, and local voids within the explicit solvent of molecular dynamics (MD) simulation structures/trajectories.

The Burbuja (The Spanish word for 'bubble') program automates the checking of a MD simulation input or output structure, or collection of structures, for bubbles. Bubbles can often arise in the preparation or running of a simulation if periodic box dimensions are incorrectly chosen, if high energies or temperatures are inadvertently sampled, if bad starting structures are assigned, or if faulty parameters exist in the system. These bubbles and voids can be found 'manually' by examining the structure with a molecular viewing program, but bubbles can be easily missed, manual checking can be tiresome, and small or oddly-shaped bubbles can sometimes be difficult to see. Burbuja can detect bubbles of just about any shape and significant size, within cubic, rectangular, or triclinic boxes containing an explicit solvent. Burbuja can also take a variety of input structure files, due to its reliance on the MDTraj (https://www.mdtraj.org) software for loading and definition of molecular structures.

Burbuja has also been designed to detect bubbles efficiently and quickly, and can optionally make use of the CuPy library for GPU acceleration. Burbuja has also been coded with an eye toward very large structures, such as entire viruses or very large proteins, in excess of hundreds of millions of atoms, in order to detect the presence of bubbles. Burbuja may be used as a command-line tool, or its functions accessed directly by means of its API.

This README is only a quickstart guide to get Burbuja up and running as soon as possible. To see more detailed instructions and tutorials, please see https://burbuja.readthedocs.io/en/latest or the docs/ subfolder.

Install

The easiest, quickest way to install Burbuja is to use Mamba. If you don't already have Mamba installed, Download the Miniforge install script and run.

curl -O https://github.com/conda-forge/miniforge/releases/latest/download/Miniforge3-$(uname)-$(uname -m).sh
bash Miniforge3-$(uname)-$(uname -m).sh

Once this has been done, set up a new environment:

mamba create -n BURBUJA python=3.11 --yes
mamba activate BURBUJA

If you wish to benefit from GPU acceleration, install CuPy. See the CuPy documentation (https://docs.cupy.dev/en/stable/install.html) for detailed installation instruction for your own system using PyPI, Conda, or from Source, but if you're in a hurry, the following command should work:

mamba install cupy

Next, simply install Burbuja. All remaining dependencies should be handled automatically:

pip install burbuja

Example

One may try out the example systems in the Burbuja/examples/ subdirectory. Within, there are two files, "trypsin_benzamidine_bubble.pdb" and "trypsin_benzamidine_no_bubble.pdb". Try running the following commands:

cd examples/
burbuja trypsin_benzamidine_no_bubble.pdb

Burbuja should indicate that no bubble was present in the structure. Next, try the structure that does contain a bubble:

cd examples/
burbuja trypsin_benzamidine_bubble.pdb

Important Options and Hints

Authors and Contributors

The following people have contributed directly to the coding and validation efforts of Burbuja (listed an alphabetical order of last name). Thanks also to everyone who has helped or will help improve this project by providing feedback, bug reports, or other comments.

  • Rommie Amaro (principal investigator)
  • Abraham Muñiz Chicharro (developer)
  • Lane Votapka (developer)

Citing Burbuja and Dependencies

For BibTex files of many of the following citations, please visit: https://burbuja.readthedocs.io/en/latest/citations.html

If you use Burbuja, please cite the following paper:

  • PAPER HERE

Copyright

Copyright (c) 2025, Abraham Muñiz Chicharro and Lane Votapka

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

burbuja-1.0.2.tar.gz (20.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

burbuja-1.0.2-py3-none-any.whl (22.6 kB view details)

Uploaded Python 3

File details

Details for the file burbuja-1.0.2.tar.gz.

File metadata

  • Download URL: burbuja-1.0.2.tar.gz
  • Upload date:
  • Size: 20.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.18

File hashes

Hashes for burbuja-1.0.2.tar.gz
Algorithm Hash digest
SHA256 1320a7478a6cfddf7ad6973aa8bead88301a43028d3084673dbf79728daf0b6f
MD5 352ab5dc7aa03786f8a9b12e70022908
BLAKE2b-256 3bff288d45d7f8062aeeb96b790a3661789622ef1dbb130b060a30eccf045099

See more details on using hashes here.

File details

Details for the file burbuja-1.0.2-py3-none-any.whl.

File metadata

  • Download URL: burbuja-1.0.2-py3-none-any.whl
  • Upload date:
  • Size: 22.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.18

File hashes

Hashes for burbuja-1.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 a9585aa6ffc334d3aeae33f86b72f986eaa28beee7f4436c18d87e824826bfc6
MD5 c967566ab38ff4a24b5861d74d03b8b8
BLAKE2b-256 ad903f8cac6e0611b80a62f0a3a0ef81d33874b4766f07960382a89b2be19a84

See more details on using hashes here.

Supported by

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