Software

QBMMlib: Moment Methods for Fully-coupled Flows

Author: S. H. Bryngelson, Q. Wang, E. Cisneros

QBMMlib is an open source Mathematica package for solving populating balance equations with quadrature-based moment methods (QBMMs). QBMMs are used for fully-coupled disperse flow and combustion problems. However, formulating and closing the corresponding governing equations can be complex. QBMMlib makes using these methods simple and accessible:

  • Symbolic and automatic formulation of moment transport equations for a population balance equation and dynamical system
  • Moment inversion trades moment sets for quadrature points
    • Algorithms: QMOM, HyQMOM, CQMOM, and more
  • Quadratures closes the moment transport and governing flow equations
  • Embedded Runge–Kutta algorithms for realizable time integration

The algorithm initialization and solution can span just 13 lines of code. Example notebooks demonstrate QBMMlib on bubble dynamics problems.

PyQBMMlib: With Esteban Cisneros I developed a Python version of QBMMlib that leverages JIT compiling for significantly improved performance.

High-fidelity Multiphase Flow Simulation

Authors: S. H. Bryngelson, V. Coralic, K. Schmidmayer, J. S. Spratt, M. Rodriguez, B. Stevens, A. Charalampopoulos, S. Cao, J. Meng, K. Maeda

MFC is an open source parallel simulation software for multi-component, multi-phase, and bubbly flows. Its efficient simulation algorithm is capable of solving flows like droplet atomization, bubble cavitation, and their interactions with strong shocks. The simulation method consists of:

  • 5- and 6-equation diffuse-interface models
  • High-order-accurate WENO interface-capturing methods
  • HLL-type Riemann solvers
  • Sub-grid bubble models
  • TVD time-integration schemes

MFC is actively developed and gaining capabilities for QMOM-based solutions to sub-grid flows and neural-network enhanced interface capturing.

Multiphase and Capillary Flow Solver

Authors: K. Schmidmayer, E. Daniel, S. Le Martelot, S. H. Bryngelson, F. Petitpas

ECOGEN is an open source fluid flow simulation tool. Interface- and shock-capturing methods handle single-phase gas dynamics and multi-phase and multi-physics flows. Unstructured grids and adaptive mesh refinement (AMR) enable resolution of otherwise inaccessible spatiotemporal scales. Multiphase ECOGEN simulations regularly scale up to thousands of cores. The code base is object-oriented and modular, assisting future development.

PlasCom2: Multi-physics Turbulent Flows

Authors: M. Campbell, E. Cisneros, J. Wang, S. H. Bryngelson, D. Buchta, M. Anderson, M. Diener, M. Smith, and more…

PlasCom2 is a variable-order, single- and multi-block (overset), compressible Navier–Stokes solver. It supports curvilinear domains discretized by multiple, overlapping block-structured grids. Hybrid MPI+X and OpenMP handle parallel communication and GPGPU offloading. PlasCom2 utilizes home-grown libraries to manage these interactions:

  • Pick-Pocket: Dynamic discovery of data movement optimizes data motion
  • Hydra: Offloads OpenMP threads to GPGPUs, manages data movement
  • TanGram: Manages architecture-neutral computational kernels
  • Leap: Multi-rate time integration to mitigate grid/timestep limitations

PlasCom2 routinely scales to all available processing units on the largest machines in the United States, including modern Sierra-like architectures.

Spectral Boundary Integral Solver for Cell-scale Flows

Authors: S. H. Bryngelson, H. Zhao, A. Isfahani, J. B. Freund

RBC3D is a flow solver for soft capsules and cells. It solves the boundary integral form of the Stokes equations via an algorithm tailored for cell-scale simulations:

  • Spectrally-accurate spherical harmonics represent the deforming surfaces
  • Modified Green’s function approximation used for near-range interactions
  • Electrostatic-like repulsion prevents cells from intersecting
  • Weak-formulation of no-slip boundary conditions (e.g., vessel walls)

These features ensure that simulations are robust. Parallel communication (MPI) enables large simulations, such as model vascular networks.