Skip to content

Commit b1e5cf7

Browse files
authored
Revise LBM description and computational details
Updated the description of the LBM implementation to clarify the relationship between the Boltzmann transport equation and the Navier-Stokes equation. Enhanced explanations of the streaming and collision steps, as well as the computation of macroscopic state variables.
1 parent 8c39d73 commit b1e5cf7

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

paper/paper.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ bibliography: paper.bib
4141

4242
MARBLES is a computational fluid dynamics solver that leverages the lattice Boltzmann method (LBM) and block-structured adaptive mesh refinement (AMR) to simulate flows in complex media. The solver leverages the AMReX [@AMReX] library, a library that provides underlying data structures, parallel paradigms, grids, domain decomposition, and portability programming models to run on massively parallel computing architectures. All major GPU architectures (e.g., Intel, AMD, NVIDIA) are supported through the use of performance portability functionalities implemented in AMReX. The MARBLES software is released in NREL Software Record SWR-23-37 “MARBLES (Multi-scale Adaptively Refined Boltzmann LatticE Solver)” [@marbles_swr].
4343

44-
MARBLES implements LBM, a mesoscopic approach to computational fluid dynamics in which the macroscopic fluid behavior is driven by the advection and collision of fictitious particles which approximate molecular behaviors. The time evolution equation of LBM is frequently presented in two parts: a "streaming" step in which particles representing distribution functions at grid cells transfer information about their current state to their nearest neighbors and a "collision" step in which these advected quantities give rise to new velocities and densities and subsequently relax toward their equilibrium distributions over some characteristic time. In MARBLES, these steps are carried out on parallelized AMReX blocks in which the phase space is discretized using 27 grid neighbors in 3D (D3Q27) which provides high accuracy and slightly increased memory consumption compared to other LBM stencils. An equivalent stencil is implemented for 2D simulations. The stencil can be sub-divided and applied locally in a region with half the grid spacing using an implementation of the explode and coalesce algorithm [@chen2006grid], where refined cells process two time steps per every step of the parent grid assuming a factor of two grid refinement ratio. This cycling between refinement levels and interpolation between grids is managed by AMReX functionality and minimizes communication between parallel blocks to enable excellent scaling performance.
44+
MARBLES implements LBM, a mesoscopic approach to computational fluid dynamics in which the computation of the Boltzmann transport equation by advection and collision of fictitious particles results into a solution of the Navier Stokes equation at the macroscale. The evolution equation of LBM proceeds in two parts: a "streaming" step akin to space discretization in which particles representing probability distribution functions at grid cells transfer information about their current state to their nearest neighbors and a "collision" step akin to time discretization in which these advected quantities give rise to new state variables by subsequently relaxing toward their equilibrium distributions over some characteristic time. Macroscopic state variables such as density, momentum and total energy are obtained by locally computing moments of the probability distribution functions. In MARBLES, these steps are carried out on parallelized AMReX blocks in which the phase space is discretized using 27 grid neighbors in 3D (D3Q27) which provides high accuracy and slightly increased memory consumption compared to other LBM stencils. An equivalent stencil is implemented for 2D simulations. The stencil can be sub-divided and applied locally in a region with half the grid spacing using an implementation of the explode and coalesce algorithm [@chen2006grid], where refined cells process two time steps per every step of the parent grid assuming a factor of two grid refinement ratio. This cycling between refinement levels and interpolation between grids is managed by AMReX functionality and minimizes communication between parallel blocks to enable excellent scaling performance.
4545

4646
MARBLES uses the Embedded Boundary (EB) formulation in AMReX to represent complex geometries. In this approach, an arbitrary surface is defined by the user, using either compositions of simple shapes or an STL file. This is used to intersect the Cartesian mesh and defined cells that are covered by the geometry (i.e., inside the body). Bounce back conditions are imposed on these surfaces as part of the streaming step to capture the effect of the geometry on the fluid flow. This leads to a very robust handling of very complex geometry, including flow through porous media.
4747

0 commit comments

Comments
 (0)