SearcharxivSearch

arXiv subjects

Christophe Coreixas

Publications and source records attributed to Christophe Coreixas.

12 recordsLinked to original sources

LEDDS: Portable LBM-DEM simulations on GPUs

Algorithmic formulations of GPU programs provide a high-level alternative to device-specific code by expressing computations as compositions of well-defined parallel primitives (e.g., map, sort, reduce), rather than through handcrafted GPU kernels. In this work, we demonstrate that this paradigm can be extended to complex and challenging problems in computational physics: the simulation of granular flows and fluid-particle interactions. LEDDS, our open-source framework, performs fully coupled Lattice Boltzmann -- Discrete Element Method (LBM-DEM) simulations using only algorithmic primitives, and runs efficiently on single-GPU platforms. The entire workflow, including neighbor search, collision detection, and fluid-particle coupling, is expressed as a sequence of portable primitives. While the current implementation illustrates these principles primarily through algorithms from the C++ Standard Library, with selective use of Thrust primitives for performance, the underlying concept is compatible with any HPC environment offering a rich set of parallel algorithms and is therefore applicable across a wide range of modern GPU systems and future accelerators. LEDDS is validated through benchmarks spanning both DEM and LBM-DEM configurations, including sphere and ellipsoid collisions, wall friction tests, single-particle settling, Jeffery's orbits, and particle-laden shear flows. Despite its high level of abstraction, LEDDS achieves performances comparable to those of hand-tuned CUDA solvers, while maintaining portability and code clarity. These results show that high-performance LBM-DEM coupling can be achieved without sacrificing generality or readability, establishing LEDDS as a blueprint for portable multiphysics frameworks based on algorithmic primitives.

physics.comp-ph

Multi-GPU Acceleration of PALABOS Fluid Solver using C++ Standard Parallelism

This article presents the principles, software architecture, and performance analysis of the GPU port of the lattice Boltzmann software library Palabos (J. Latt et al., "Palabos: Parallel lattice Boltzmann solver", Comput. Math. Appl. 81, 334-350, (2021)). A hybrid CPU-GPU execution model is adopted, in which numerical components are selectively assigned to either the CPU or the GPU, depending on considerations of performance or convenience. This design enables a progressive porting strategy, allowing most features of the original CPU-based codebase to be gradually and seamlessly adapted to GPU execution. The new architecture builds upon two complementary paradigms: a classical object-oriented structure for CPU execution, and a data-oriented counterpart for GPUs, which reproduces the modularity of the original code while eliminating object-oriented overhead detrimental to GPU performance. Central to this approach is the use of modern C++, including standard parallel algorithms and template metaprogramming techniques, which permit the generation of hardware-agnostic computational kernels. This facilitates the development of user-defined, GPU-accelerated components such as collision operators or boundary conditions, while preserving compatibility with the existing codebase and avoiding the need for external libraries or non-standard language extensions. The correctness and performance of the GPU-enabled Palabos are demonstrated through a series of three-dimensional multiphysics benchmarks, including the laminar-turbulent transition in a Taylor-Green vortex, lid-driven cavity flow, and pore-scale flow in Berea sandstone. Despite the high-level abstraction of the implementation, the single-GPU performance is similar to CUDA-native solvers, and multi-GPU tests exhibit good weak and strong scaling across all test cases.

cs.DC

GPU-based compressible lattice Boltzmann simulations on non-uniform grids using standard C++ parallelism: From best practices to aerodynamics, aeroacoustics and supersonic flow simulations

Despite decades of research, creating accurate, robust, and efficient lattice Boltzmann methods (LBM) on non-uniform grids with seamless GPU acceleration remains challenging. This work introduces a novel strategy to address this challenge by integrating simple yet effective components: (1) parallel algorithms in modern C++, (2) conservative cell-centered grid refinement, (3) local boundary conditions, and (4) robust collision models. Our framework supports multiple lattices (D2Q9, D2Q13, D2Q21, D2Q37, D3Q27, etc) tailored to various flow conditions. It includes collision models with polynomial and numerical equilibria, a second distribution for polyatomic behavior, a Jameson-like shock sensor, and generalizes Rohde's refinement strategy. The framework's accuracy and robustness is validated across diverse benchmarks, including lid-driven cavity flows, Aeolian noise, 30P30N airfoil aerodynamics, inviscid Riemann problems, and viscous flows past a NACA airfoil in transonic and supersonic regimes. Modern C++ further enables our framework to reach GPU-native performance, while ensuring high portability, modularity, and ease of implementation. Notably, weakly compressible LBMs achieve state-of-the-art GPU efficiency on non-uniform grids, while fully compressible LBMs benefit from acceleration equivalent to thousands of CPU cores in the most compute-intensive cases. Our advanced performance models incorporate neighbor-list and asynchronous time-stepping effects, providing new insights into the performance decomposition of LB simulations on non-uniform grids. Overall, this study sets a new standard for portable, tree-based LBMs, demonstrating that a combination of well-chosen components can achieve high performance, accuracy, and robustness across various flow conditions. As a final proof-of-concept, adaptive mesh refinement is proposed for subsonic and supersonic applications.

physics.comp-ph

A note on the lattice momentum balance in the lattice Boltzmann interaction-framework

In this note, we show how the exploitation of the lattice momentum balance condition allows to envisage an analytical procedure to define the lattice pressure tensor (LPT) for the multi-phase Shan-Chen (SC) lattice Boltzmann method (LBM) with single-range potential. This construction ensures that the LPT normal component to a flat interface is constant to machine precision on each lattice node, i.e., it exactly implements the mechanical equilibrium condition on the lattice. We demonstrate the robustness of the approach by providing analytical expressions for the coexistence curves for different choices of the pseudo-potential and forcing schemes in the SC-LBM. This paper offers a novel, rigorous perspective for controlling the LPT in the SC-LBM, paving the way for its application in more general settings.

physics.comp-ph

PalaCell2D: A framework for detailed tissue morphogenesis

In silico, cell based approaches for modeling biological morphogenesis are used to test and validate our understanding of the biological and mechanical process that are at work during the growth and the organization of multi-cell tissues. As compared to in vivo experiments, computer based frameworks dedicated to tissue modeling allow us to easily test different hypotheses, and to quantify the impact of various biophysically relevant parameters. Here, we propose a formalism based on a detailed, yet simple, description of cells that accounts for intra-, inter- and extra-cellular mechanisms. More precisely, the cell growth and division is described through the space and time evolution of the membrane vertices. These vertices follow a Newtonian dynamics, meaning that their evolution is controlled by different types of forces: a membrane force (spring and bending), an adherence force (inter cellular spring), external and internal pressure forces. In addition to the cells dynamics, our formalism further relies on a lattice Boltzmann method, using the Palabos library, to simulate the diffusion of chemical signals. The latter aims at driving the growth and migration of a tissue by simply changing the state of the cells. All of this leads to an accurate description of the growth and division of cells, with realistic cell shapes and where membranes can have different properties. While this work is of methodological nature, we also propose to validate our framework through simple, yet biologically relevant benchmark tests at both single-cell and full tissue scales. This includes free and chemically controlled cell tissue growth in an unbounded domain. The ability of our framework to simulate cell migration, cell compression and morphogenesis under external constraints is also investigated in a qualitative manner.

physics.bio-ph

Cross-platform programming model for many-core lattice Boltzmann simulations

We present a novel, hardware-agnostic implementation strategy for lattice Boltzmann (LB) simulations, which yields massive performance on homogeneous and heterogeneous many-core platforms. Based solely on C++17 Parallel Algorithms, our approach does not rely on any language extensions, external libraries, vendor-specific code annotations, or pre-compilation steps. Thanks in particular to a recently proposed GPU back-end to C++17 Parallel Algorithms, it is shown that a single code can compile and reach state-of-the-art performance on both many-core CPU and GPU environments for the solution of a given non trivial fluid dynamics problem. The proposed strategy is tested with six different, commonly used implementation schemes to test the performance impact of memory access patterns on different platforms. Nine different LB collision models are included in the tests and exhibit good performance, demonstrating the versatility of our parallel approach. This work shows that it is less than ever necessary to draw a distinction between research and production software, as a concise and generic LB implementation yields performances comparable to those achievable in a hardware specific programming language. The results also highlight the gains of performance achieved by modern many-core CPUs and their apparent capability to narrow the gap with the traditionally massively faster GPU platforms. All code is made available to the community in form of the open-source project "stlbm", which serves both as a stand-alone simulation software and as a collection of reusable patterns for the acceleration of pre-existing LB codes.

physics.comp-ph

Multiphysics flow simulations using D3Q19 lattice Boltzmann methods based on central moments

In a recent work [A. De Rosis, R. Huang, and C. Coreixas, "Universal formulation of central-moments-based lattice Boltzmann method with external forcing for the simulation of multiphysics phenomena", Phys. Fluids 31, 117102 (2019)], a multiple-relaxation-time lattice Boltzmann method (LBM) has been proposed by means of the D3Q27 discretization, where the collision stage is performed in the space of central moments (CMs). These quantities relax towards an elegant Galilean invariant equilibrium, and can also include the effect of external accelerations. Here, we investigate the possibility to adopt a coarser lattice composed of 19 discrete velocities only. The consequences of such a choice are evaluated in terms of accuracy and stability through multiphysics benchmark problems based on single-, multi-phase and magnetohydrodynamics flow simulations. In the end, it is shown that the reduction from 27 to 19 discrete velocities have only little impact on the accuracy and stability of the CM-LBM for moderate Reynolds number flows in the weakly compressible regime.

physics.comp-ph

Linear stability of athermal regularized lattice Boltzmann methods

The present work is dedicated to a better understanding of the stability properties of regularized lattice Boltzmann (LB) schemes. To this extent, linear stability analyses of two-dimensional models are proposed: the standard Bhatnagar-Gross-Krook (BGK) collision model, the original pre-collision regularization and the recursive regularized model, where off-equilibrium distributions are partially computed thanks to a recursive formula. A systematic identification of the physical content carried by each LB mode is done by analyzing the eigenvectors of the linear systems. Stability results are then numerically confirmed by performing simulations of shear and acoustic waves. This work allows drawing fair conclusions on the stability properties of each model. In particular, recursive regularization turns out to be the most stable model for the D2Q9 lattice, especially in the zero-viscosity limit. Two major properties shared by every regularized model are highlighted: (1) a mode filtering property, and (2) an incorrect, and broadly anisotropic, dissipation rate of the modes carrying physical waves in under-resolved conditions. The first property is the main source of increased stability, especially for the recursive regularization. It is a direct consequence of the reconstruction of off-equilibrium populations before each collision process, decreasing the rank of the system of discrete equations. The second property seems to be related to numerical errors directly induced by the equilibration of high-order moments. In such a case, this property is likely to occur with any collision model that follows such a stabilization methodology.

physics.comp-ph

Efficient supersonic flows through high-order guided equilibrium with lattice Boltzmann

A double-distribution-function based lattice Boltzmann method (DDF-LBM) is proposed for the simulation of polyatomic gases in the supersonic regime. The model relies on an extended equilibrium state that is constructed to reproduce the first 13 moments of the Maxwell-Boltzmann distribution exactly. This extends the validity of the standard 5-constraint (mass, momentum and energy) approach and leads to the correct simulation of thermal, compressible flows with only 39 discrete velocities in 3D. The stability of this BGK-LBM is reinforced by relying on Knudsen-number-dependent relaxation times that are computed analytically. Hence, high-Reynolds number, supersonic flows can be simulated in an efficient and elegant manner. While the 1D Riemann problem shows the ability of the proposed approach to handle discontinuities in the zero-viscosity limit, the simulation of the flow past a NACA0012 airfoil (Mach number $\mathrm{Ma}=1.5$, Reynolds number $\mathrm{Re=10^4}$) confirms the excellent behavior of this model in a low-viscosity and supersonic regime. The proposed model is substantially more efficient than the previous 5-moment D3Q343 DDF-LBM and opens up a whole new world of compressible flow applications that can be realistically tackled with a purely LB approach.

physics.comp-ph

Three-dimensional central-moments-based lattice Boltzmann method with external forcing: A consistent, concise and universal formulation

The cascaded or central-moments-based lattice Boltzmann method (CM-LBM) is a robust alternative to the more conventional BGK-LBM for the simulation of high-Reynolds number flows. Unfortunately, its original formulation makes its extension to a broader range of physics quite difficult. To tackle this issue, a recent work [A. De Rosis, Phys. Rev. E 95, 013310 (2017)] proposed a more generic way to derive concise and efficient three-dimensional CM-LBMs. Knowing the original model also relies on central moments that are derived in an adhoc manner, i.e., by mimicking those of the Maxwell-Boltzmann distribution to ensure their Galilean invariance a posteriori, a very recent effort [A. De Rosis and K. H. Luo, Phys. Rev. E 99, 013301 (2019)] was proposed to further generalize their derivation. The latter has shown that one could derive Galilean invariant CMs in a systematic and a priori manner by taking into account high-order Hermite polynomials in the derivation of the discrete equilibrium state. Combining these two approaches, a compact and mathematically sound formulation of the CM-LBM with external forcing is proposed. More specifically, the proposed formalism fully takes advantage of the D3Q27 discretization by relying on the corresponding set of 27 Hermite polynomials (up to the sixth order) for the derivation of both the discrete equilibrium state and the forcing term. The present methodology is more consistent than previous approaches, as it properly explains how to derive Galilean invariant CMs of the forcing term in an a priori manner. Furthermore, while keeping the numerical properties of the original CM-LBM, the present work leads to a compact and simple algorithm, representing a universal methodology based on CMs and external forcing within the lattice Boltzmann framework.

physics.comp-ph

Recursive regularization step for high-order lattice Boltzmann methods

A lattice Boltzmann method (LBM) with enhanced stability and accuracy is presented for various Hermite tensor-based lattice structures. The collision operator relies on a regularization step, which is here improved through a recursive computation of non-equilibrium Hermite polynomial coefficients. In addition to the reduced computational cost of this procedure with respect to the standard one, the recursive step allows to considerably enhance the stability and accuracy of the numerical scheme by properly filtering out second (and higher) order non-hydrodynamic contributions in under-resolved conditions. This is first shown in the isothermal case where the simulation of the doubly periodic shear layer is performed with a Reynolds number ranging from $10^4$ to $10^6$, and where a thorough analysis of the case at $Re=3\times 10^4$ is conducted. In the latter, results obtained using both regularization steps are compared against the BGK-LBM for standard (D2Q9) and high-order (D2V17 and D2V37) lattice structures, confirming the tremendous increase of stability range of the proposed approach. Further comparisons on thermal and fully compressible flows, using the general extension of this procedure, are then conducted through the numerical simulation of Sod shock tubes with the D2V37 lattice. They confirm the stability increase induced by the recursive approach as compared with the standard one.

physics.comp-ph

Local mesh refinement sensor for the lattice Boltzmann method

A novel mesh refinement sensor is proposed for lattice Boltzmann methods (LBMs) applicable to either static or dynamic mesh refinement algorithms. The sensor exploits the kinetic nature of LBMs by evaluating the departure of distribution functions from their local equilibrium state. This sensor is first compared, in a qualitative manner, to three state-of-the-art sensors: (1) the vorticity norm, (2) the Q-criterion, and (3) spatial derivatives of the vorticity. This comparison shows that our kinetic sensor is the most adequate candidate to propose tailored mesh structures across a wide range of physical phenomena: incompressible, compressible subsonic/supersonic single phase, and weakly compressible multiphase flows. As a more quantitative validation, the sensor is then used to produce the computational mesh for two existing open-source LB solvers based on inhomogeneous, block-structured meshes with static and dynamic refinement algorithms, implemented in the Palabos and AMROC-LBM software, respectively. The sensor is first used to generate a static mesh to simulate the turbulent 3D lid-driven cavity flow using Palabos. AMROC-LBM is then adopted to confirm the ability of our sensor to dynamically adapt the mesh to reach the steady state of the 2D lid-driven cavity flow. Both configurations show that our sensor successfully produces meshes of high quality and allows to save computational time.

physics.flu-dyn