Publication 2024
XLB
A Differentiable Massively Parallel Lattice Boltzmann Library in Python
Abstract
XLB: A Differentiable Massively Parallel Lattice Boltzmann Library in Python
Mohammadmehdi Ataei, Hesam Salehipour
The lattice Boltzmann method (LBM) has emerged as a prominent technique for solving fluid dynamics problems due to its algorithmic potential for computational scalability. We introduce XLB library, a Python-based differentiable LBM library based on the JAX platform. The architecture of XLB is predicated upon ensuring accessibility, extensibility, and computational performance, enabling scaling effectively across CPU, TPU, multi-GPU, and distributed multi-GPU or TPU systems. The library can be readily augmented with novel boundary conditions, collision models, or multi-physics simulation capabilities. XLB’s differentiability and data structure is compatible with the extensive JAX-based machine learning ecosystem, enabling it to address physics-based machine learning, optimization, and inverse problems. XLB has been successfully scaled to handle simulations with billions of cells, achieving giga-scale lattice updates per second.
XLB is released under the permissive Apache-2.0 license and is available on GitHub.
Download publicationRelated Resources
2024
TimeTunnel Live: Recording and Editing Character Motion in Virtual RealityAn animation authoring interface for recording and editing motion in…
2023
Generative design for COVID-19 and future pathogens using stochastic multi-agent simulationProposing a generative design workflow that integrates a stochastic…
2022
MaskTune: Mitigating Spurious Correlations by Forcing to ExploreThis work proposes a masking strategy that prevents over-reliance on…
2022
Systems Design and SimulationPredictive models of complex systems will require a more scalable,…
Get in touch
Something pique your interest? Get in touch if you’d like to learn more about Autodesk Research, our projects, people, and potential collaboration opportunities.
Contact us