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

If you use Burbuja, please cite the following paper:

  • Muniz-Chicharro A, Votapka L, Amaro R. Detection of Gas Bubbles and Local Voids in Molecular Simulations using burbuja. ChemRxiv. 2025; doi:10.26434/chemrxiv-2025-rxpnd This content is a preprint and has not been peer-reviewed.

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.3.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.3-py3-none-any.whl (22.5 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: burbuja-1.0.3.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.3.tar.gz
Algorithm Hash digest
SHA256 5e283cb926c1d34df3bc9ba3f5325354ed2a59b6a0b23eab96da05e05a838139
MD5 280a4223fa82fa2066e674a3ab42bed7
BLAKE2b-256 a966371520cee141dbb222b0a94790f8567478b089168f4c42a57c1a3c748bd5

See more details on using hashes here.

File details

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

File metadata

  • Download URL: burbuja-1.0.3-py3-none-any.whl
  • Upload date:
  • Size: 22.5 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.3-py3-none-any.whl
Algorithm Hash digest
SHA256 a44be705effb1404ae3f765d7526d80c3bd385557a4bb8b16d4f21982356802f
MD5 6db2a20df1829c67cb291a278ae9138a
BLAKE2b-256 d0c582b15a794eda4067b179a2d62e8b9be25b5df1f5b0bfcd470e38c91243b5

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