Back to Search Start Over

Lettuce: PyTorch-based Lattice Boltzmann Framework

Authors :
Bedrunka, Mario Christopher
Wilde, Dominik
Kliemank, Martin
Reith, Dirk
Foysi, Holger
Krämer, Andreas
Source :
In International Conference on High Performance Computing (pp. 40-55). Springer, Cham (2021)
Publication Year :
2021

Abstract

The lattice Boltzmann method (LBM) is an efficient simulation technique for computational fluid mechanics and beyond. It is based on a simple stream-and-collide algorithm on Cartesian grids, which is easily compatible with modern machine learning architectures. While it is becoming increasingly clear that deep learning can provide a decisive stimulus for classical simulation techniques, recent studies have not addressed possible connections between machine learning and LBM. Here, we introduce Lettuce, a PyTorch-based LBM code with a threefold aim. Lettuce enables GPU accelerated calculations with minimal source code, facilitates rapid prototyping of LBM models, and enables integrating LBM simulations with PyTorch's deep learning and automatic differentiation facility. As a proof of concept for combining machine learning with the LBM, a neural collision model is developed, trained on a doubly periodic shear layer and then transferred to a different flow, a decaying turbulence. We also exemplify the added benefit of PyTorch's automatic differentiation framework in flow control and optimization. To this end, the spectrum of a forced isotropic turbulence is maintained without further constraining the velocity field. The source code is freely available from https://github.com/lettucecfd/lettuce.

Details

Database :
arXiv
Journal :
In International Conference on High Performance Computing (pp. 40-55). Springer, Cham (2021)
Publication Type :
Report
Accession number :
edsarx.2106.12929
Document Type :
Working Paper
Full Text :
https://doi.org/10.1007/978-3-030-90539-2_3