A hybrid molecular dynamics-Lattice Boltzmann approach to multiscale fluid dynamics
From Sccswiki
Contents |
Diploma/ Master thesis: A hybrid molecular dynamics-Lattice Boltzmann approach to multiscale fluid dynamics
Status: Free
Introduction
When approaching the molecular scale in fluid dynamic problems, the first questions that need to be addressed before running simulations are:
- Can I still afford the computation when using Molecular Dynamics (MD) simulations? Or is it too expensive?
- Are coarse-grained methods still valid for my case? May I for example use Lattice Boltzmann (LB) simulations instead of MD?
- If I can use LB, how fine can I choose the mesh? And how fine do I need to choose it at least to obtain good results?
The focus of the present project lies on the development of a hybrid multiscale scheme for flow simulations, using the Peano framework. The general idea is to combine MD and LB and switch forth and back between both schemes, depending on the scenario. Both LB and MD implementations as well as implementations of typical coupling steps are already available.
Summary of project steps
- Getting familiar with the basic concepts of the Peano framework (adapter concept etc.) and the Lattice Boltzmann component
- Getting familiar with MD and the respective simulation
- Implementation of a LB solver on the spacetree grid.This grid provides the feature that it can be arbitrarily refined and coarsened which is of big importance in multiscale simulations.
- Incorporation of refinement and coarsening steps for the LB simulation
- Incorporation of the MD solver and switching mechanisms.
Due to the size of the project Peano, software-engineering aspects such as modularity, encapsulation of functionality or good documentation of the code are very important. This does not represent any inconvenience for students who are not yet familiar with these topics but it is a chance to learn and directly apply them.
Prerequisites
Good programming skills in C++, interest in (multiscale) physics and flow simulations.
If you already have some knowledge on MD or flow simulations, that's perfect! If not, it's definitely fine, too! :-)
Start
As soon as possible
Tutors
Diplom-/ Masterarbeit: Ein hybrider Molekulardynamik-Lattice Boltzmann-Ansatz für Multiskalen-Strömungssimulationen
Status: Free
Einführung
Die Untersuchung von Strömungen auf der Nanoskala verlangt die Klärung einiger Fragen:
- Kann die Strömung noch mit Molekulardynamik (MD)-Ansätzen berechnet und gelöst werden? Oder ist das bereits zu teuer in Bezug auf die benötigte Rechenzeit?
- Können anstelle von MD-Verfahren auch Ansätze einer gröberen Skala verwendet werden, beispielsweise Lattice Boltzmann (LB)-Verfahren?
- Sofern LB eingesetzt werden kann: Wie fein muss ich mein Gitter wählen, um einerseits gute Ergebnisse zu erhalten und andererseits den Rechenaufwand so gering wie möglich zu halten?
Der Schwerpunkt dieses Diplomarbeits-/Masterprojekts besteht in der Implementierung eines hybriden MD-LB Lösers innerhalb des Peano Frameworks. Je nach Belieben/ Notwendigkeit soll dem Benutzer der Simulationssoftware die Möglichkeit gegeben sein, seine Strömungssimulation global zu verfeinern oder zu vergröbern. Eine Verfeinerung jenseits des gültigen Bereichs von LB-Verfahren soll hierbei automatisch auf eine MD-Simulation umschalten. MD- und LB-Implementierungen sowie eine Implementierung für gekoppelte MD-LB-Simulationen liegen hierbei bereits vor.
Zusammenfassung der Arbeitsschritte
- Einarbeitung in die grundlegenden Konzepte des Peano-Frameworks (Adapter-Konzept etc.) und die enthaltene Lattice Boltzmann Komponente
- Einarbeitung in die MD-Simulation und die zugrunde liegende Implementierung
- Implementierung eines LB-Lösers auf dem Spacetree Gitter. Dieses Gitter erlaubt eine beliebige Anzahl an Verfeinerungen bzw. Vergröberungen eines Gebiets. Dies ist für Multiskalen-Ansätze von großer Bedeutung.
- Erweiterung des LB-Lösers um Vergröberung und Verfeinerung
- Erweiterung des Lösers mit MD-Funktionalität.
Aufgrund der Projektgröße von Peano sind Software-Engineering-Aspekte wie Modularität, Kapselung der Funktionalität oder gute Dokumentation sehr wichtig. Für Studenten, die darin noch wenig Übung haben, ist das kein Nachteil sondern die Chance, die entsprechende Vorgehensweise an einem größeren Projekt kennenzulernen und direkt umzusetzen.
Voraussetzungen
Gute Programmierkenntnisse in C++, Interesse an physikalischen Zusammenhängen und Multiskalen-Betrachtungen.
Wenn du bereits Kenntnisse zu Molekulardynamik oder Lattice Boltzmann Verfahren hast, ist das super! Wenn nicht, sollte das aber auch keinerlei Problem darstellen. :-)
Beginn
Sobald wie möglich


