Not logged in. · Lost password · Register

Datagaze
Member since Mar 2019
1 post
Subject: Aufgabenblatt 9 - LBM Streaming
Hat jemand eine Idee, wie dieser Stream Schritt eigentlich funktioniert? Ich habe mehrere Videos zu diesem Verfahren gesehen, mehrere Foliensätze von anderen Unis durchgelesen usw., und kein Verfahren, das ich bis jetzt gesehen habe, führt zu den Ergebnissen, die von uns erwartet werden. Also was meint er mit propagieren und austauschen? Was meint er mit "inneren Punkte des Simulationsgebietes"? Sind die Punkte in diesem Fall die Zellen oder die Einträge innerhalb einer Zelle? Wenn es ein 3x3 Matrix ist, gibt es dann nur eine "innere" Zelle, oder?
Smowheer
Member since Dec 2012
17 posts
Streaming sollte so funktionieren:

eine innere Zelle ist eine Zelle, die nicht am Rand liegt (alles außer index 0 und size-1) und aus 9 Komponenten besteht.
| NW  N  NE |
|  W   O   E  | 
| SW  S  SE |
Die Idee von stream ist es jetzt für jede dieser Zellen, jede der Komponenten in die passende Richtung zu propagieren.
Dabei kann man genauso wie in dem Foliensatz 15_LBM_Praxis Folien 36 und 37 vorgehen.
Propagieren heißt in diesem Fall z.B. einfach den Wert E in die Zelle in Richtung E und in dieser an der Stelle E zu schreiben.
gabriel2029
Member since Nov 2018
30 posts
Um das mal aus der Versenkung zu holen: Ich schaue mir das gerade nochmal an, und habe auch keinen Plan, wie das eigentlich gehen soll. Damals habe ich das so gemacht, dass ich die Lösung solange an die Testfälle angepasst habe, bis es gegangen ist (aber wirklich zielführend ist das ja nicht).

Soweit bin ich gekommen: Auch ausgehend von der letzten Teilaufgabe gehe ich davon aus, dass man mit array[:, i, j] die Einträge in der i-ten Zeile und j-ten Spalte beschreibt (oder ist es die j-te Zeile und j-te Spalte?). Nun ist die Frage, in welcher Reihenfolge die Einträge gespeichert werden. Nach dem directions-Array dürfte das die Reihenfolge NW, W, SW, N, O, S, NE, E, SE sein, oder irre ich mich da?

Die Aufgabenstellung sagt dann nun aus, dass man "alle inneren Punkte im Simulationsgebiet (in den Beispielen also die Zelle array[:, 1, 1] mit denen der zugehörgen Nachbarzellen überschreiben" soll. Nach meiner Interpretation ist das also nur der Schritt wie im Foliensatz auf Seite 38-39 (der Schritt auf Seite 36-37 wird nicht ausgeführt. Das macht auch Sinn, da sich ja nur die innere Zelle verändert). Aber auch in diesem Fall stimmt das nicht mit der Reihenfolge aus directions etc. überein.

Kann man mir helfen?  ;-)

// Edit: Ich habe (wohl) den Fehler in meinen Überlegungen gefunden: Seite 38 suggeriert, dass ein Eintrag direkt zum nächstgelegensten Eintrag der Nachbarparzelle propagiert wird. Betrachtet man z. B. den lilalen Eintrag in der linken oberen Zelle, so sieht es aus, dass dieser in die linke obere Ecke der mittleren Zelle kommt. Tatsächlich gelangt dieser in die rechte untere Ecke, wie man auf Seite 37 sieht. Tatsächlich sagen also alle Abbildung (Seite 36-39) im Wesentlichen dasselbe aus.
This post was edited 2 times, last on 2019-07-26, 22:35 by gabriel2029.
Close Smaller – Larger + Reply to this post:
Verification code: VeriCode Please enter the word from the image into the text field below. (Type the letters only, lower case is okay.)
Smileys: :-) ;-) :-D :-p :blush: :cool: :rolleyes: :huh: :-/ <_< :-( :'( :#: :scared: 8-( :nuts: :-O
Special characters:
Go to forum
Datenschutz | Kontakt
Powered by the Unclassified NewsBoard software, 20150713-dev, © 2003-2011 by Yves Goergen