This repository contains the code and supplementary material for simulating bubble bursting dynamics in an elastoviscoplastic medium. The simulation is implemented in 2D+axi (axisymmetric) configuration using the Basilisk framework.
This work has been published in the Journal of Fluid Mechanics. If you use this code or data in your research, please cite:
@article{balasubramanian2024bursting,
title={Bursting bubble in an elastoviscoplastic medium},
volume={1001},
DOI={10.1017/jfm.2024.1073},
journal={Journal of Fluid Mechanics},
author={Balasubramanian, A. G. and Sanjay, V. and Jalaal, M. and Vinuesa, R. and Tammisola, O.},
year={2024},
pages={A9}
}The article can be found at:
The simulation models the bursting dynamics of a bubble in an elasto-viscoplastic medium, which exhibits both elastic and viscoplastic behavior. The physics includes:
- Two-phase flow with surface tension
- Elasto-viscoplastic rheology
- Axisymmetric geometry
- Log-conformation formulation for numerical stability
01_code/burst_evp.c: Main simulation file implementing the physics01_code/log-conform-EVP.h: Implementation of log-conformation method for viscoelastic models01_code/saramito-EVP.h: Implementation of Saramito's elasto-viscoplastic model01_code/adapt_wavelet_limited.h: Adaptive mesh refinement implementation
Bond: Bond number (ratio of gravitational to surface tension forces)J: Dimensionless yield stressDeb: Deborah number (ratio of relaxation time to observation time)B: Solvent to total viscosity ratiotmax: Maximum simulation timeDT_MAX: Maximum time step
- Grid: Adaptive mesh refinement with levels from
LEVEL(8) toMAXlevel(11) - Time integration: Centered Navier-Stokes solver
- Interface tracking: Volume-of-Fluid method with tension
- Error tolerances:
- Fraction error (fErr): 1e-3
- Curvature error (KErr): 1e-4
- Velocity error (VelErr): 1e-2
- Vorticity error (OmegaErr): 1e-3
- Install the Basilisk framework
- Ensure you have a C compiler with OpenMP support
- Python 3.x for post-processing
The simulation requires an initial shape file that defines the bubble geometry:
Bo0.0010.dat: Initial bubble shape for Bond number 0.001- Place this file in the same directory as
burst_evp.c - For details of how this shape is obtained, please refer to repo: VatsalSy/Bursting-Bubble-In-a-Viscoplastic-Medium.
- Compile the code with OpenMP support:
# Compile the code
qcc -O2 -Wall -disable-dimensions -fopenmp burst_evp.c -o burst_evp -lm
# Set the number of OpenMP threads
export OMP_NUM_THREADS=4
# Run the executable with Plastocapillary (J) and Deborah (Deb) numbers
./burst_evp 1.0 0.5 # Example: J=1.0, Deb=0.5The simulation generates several output files:
intermediate/snapshot-*.dat: Simulation state at regular intervalstimestep.txt: Time stepping informationlog: Contains kinetic energy and other diagnostic data01_pp/png/: Directory for PNG output files01_pp/pdf/: Directory for PDF output files
The repository includes supplementary materials:
02_videos/: Contains 66 videos showing bubble dynamics03_supplementary_plots/: 79 plots analyzing various aspects04_graphical_abstract/: Visual summary of key findings
If you need some additional data that might be of interest to you, please don't hesitate to contact us at:
Arivazhagan G B
Vatsal Sanjay
Outi Tammisola