Title data
Lehmann, Moritz:
High Performance Free Surface LBM on GPUs.
Bayreuth
,
2021
. - 102 p.
(Master's,
2019
, Universität Bayreuth, Fakultät für Mathematik, Physik und Informatik)
DOI: https://doi.org/10.15495/EPub_UBT_00005400
Project information
Project title: |
Project's official title Project's id SFB 1357 Mikroplastik 391977956 |
---|---|
Project financing: |
Deutsche Forschungsgemeinschaft |
Abstract in another language
The lattice Boltzmann method (LBM) is a well established tool for simulating fluids, with its ability to model arbitrary geometries and function across a wide range of simulation parameters. By combining the LBM with the Volume-of-Fluid (VoF) model, free surfaces can be simulated. The algorithmic structure of LBM allows for hardware-near implementation on graphics processing units (GPUs), using their full capabilities. In this
work, LBM is implemented from the ground up in OpenCL, a programming language specifically designed for massively parallel hardware, and this implementation is called FluidX3D. A large catalog of GPU-specific optimizations is incorporated in order to reach maximum efficiency, allowing for close to real-time simulations of complex free surface phenomena such as drop impacts with all the variety of emerging effects including crown- and jet-formation and the Plateau-Rayleigh instability.
In the process of writing the simulation software, various flavors of the LBM in the form of velocity sets and collision operators are investigated and characterized. The most common extensions to the LBM are incorporated into the implementation, among them various boundary conditions volume forces, evaluation of boundary forces, a temperature model for simulating thermal convection, the immersed-boundary method for simulating fluid-particle interaction, the Shan-Chen model for simulating the coexistence of liquid and vapor and lastly the main focus of this work, the Volume-of-Fluid (VoF) model for simulating free surfaces with a sharp interface. The main difficulty of the latter, besides the challenge of running it alongside LBM with massive
parallelism on the GPU, is surface curvature calculation, which has a geometry problem at its core, the plane-cube intersection as part of piecewise linear interface construction (PLIC), to which the complete analytic solution is elaborated and presented here.
The base functionality of LBM is thoroughly validated with two setups where the analytic solution is known, Poiseuille flow in a cylindrical channel and laminar flow around a sphere. For validating the VoF model, mass conservation is checked and the accuracy of different approaches for curvature calculation is characterized. Then the model is verified qualitatively and quantitatively on a system with analytically known stability behavior: the Plateau-Rayleigh instability on an undulated cylinder of fluid.
After validation of the implementation, the following systems are studied in detail: With the base LBM implementation, a simulation is done to find the force acting on a microplastic particle attached to the wall of a rectangular microchannel. The VoF model is used to recreate oblique drop impact and crown splashing setups and the simulation results are compared to experimental observations. Lastly, some qualitative simulations are shown in order to demonstrate the vast diversity of use-cases of the here developed LBM implementation and in order to show a few of the fascinating emerging effects in hydrodynamics.
Abstract in another language
Die Lattice-Boltzmann-Methode (LBM) ist ein etabliertes Werkzeug zur Simulation von Flüssigkeiten, mit dem beliebige Geometrien und Simulationen über einen großen Bereich an Parametern hinweg möglich sind. Durch die Kombination von LBM mit dem Volume-of-Fluid (VoF) Modell können freie Oberflächen simuliert werden. Die algorithmische Struktur von LBM ermöglicht eine hardwarenahe Implementierung auf Grafikprozessoren (GPUs) unter Verwendung ihrer gesamten Leistungsfähigkeit. In dieser Arbeit wird LBM von Grund auf neu in OpenCL implementiert, einer Programmiersprache, die speziell für massiv parallele Hardware entwickelt wurde. Diese Implementierung heißt FluidX3D. Darin wird ein umfangreicher Katalog an GPU-spezifischen Optimierungen angewendet, um maximale Effizienz zu erreichen, was Simulationen von komplexen freie Oberflächenphänomenen wie Einschläge von Tropfen in nahezu Echzzeit ermöglicht, bei denen die unterschiedlichsten Effekte auftreten, darunter Kronen- und Jetbildung und die Plateau-Rayleigh Instabilität.
Beim Schreiben der Simulationssoftware werden verschiedene Varianten von LBM in Form von Geschwindigkeitsdiskretisierungen und Kollisionsoperatoren untersucht und charakterisiert. Die gebräuchlichsten Erweiterungen von LBM werden implementiert, darunter verschiedene Randbedingungen, Volumenkräfte, die Berechnung von Kräften auf Wände, ein Temperaturmodell zur Simulation von thermischer Konvektion, die Immersed-Boundary Methode zur Simulation der Wechselwirkungen zwischen Flüssigkeit und Partikeln, das Shan-Chen Modell zur Simulation der Koexistenz von Flüssigkeit und Dampf und schließlich der Schwerpunkt dieser Arbeit, das Volume-of-Fluid Modell zur Simulation freier Oberflächen mit einer scharfen Grenzschicht. Die Hauptschwierigkeit von VoF ist neben der Herausforderung, es zusammen mit LBM mit massiver Parallelität auf der GPU zu betreiben, die Berechnung der Oberflächenkrümmung, deren Kern ein Geometrieproblem ist, das Schnittvolumen von einer Ebene und einem Würfel als Teil der piecewise linear interface construction (PLIC), für das hier die gesamte analytische Lösung ausgearbeitet und präsentiert wird.
Die Basisfunktionalität von LBM wird anhand zweier analytisch lösbarer Problemstellungen validiert: der Poiseuille-Strömung in einem zylindrischen Kanal und der laminaren Strömung um eine Kugel herum.
Zur Validierung des VoF-Modells werden zunächst die Massenerhaltung überprüft und die Genauigkeit verschienener Ansätze zur Krümmungsberechnung charakterisiert. Anschließend wird das Modell quantitativ und qualitativ an einem System mit analytisch bekanntem Stabilitätsverhalten überprüft: der Plateau-Rayleigh Instabilität auf einem mit einer kleinen Störung versehenen Zylinder aus Flüssigkeit.
Nach der Validierung der Implementierung werden folgende Systeme im Detail untersucht: Mit der LBM-Basisimplementierung wird simuliert, wie viel Kraft auf ein Mikroplastik-Partikel wirkt, das an der Wand eines rechteckigen Mikrokanals befestigt ist - ein Problem, für das es noch keine analytische Lösung gibt. Das VoF-Modell wird verwendet, um den schrägen Aufprall von einem Tropfen und die Formation der Krone beim Einschlag eines Tropfens zu reproduzieren, und die Simulationsergebnisse werden mit experimentellen Beobachtungen verglichen.
Zuletzt werden noch einige qualitative Simulationen gezeigt, um zu verdeutlichen, wie vielseitig einsetzbar die hier entwickelte LBM Implementierung ist, und um einige faszinierende emergente Effekte der Hydrodynamik zu zeigen.