Hot News:

Unser Angebot:

  Foren auf CAD.de (alle Foren)
  OpenFOAM
  Fluss mit snappyHexMesh vernetzen

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
Autor Thema:  Fluss mit snappyHexMesh vernetzen (1601 mal gelesen)
Klauza
Mitglied



Sehen Sie sich das Profil von Klauza an!   Senden Sie eine Private Message an Klauza  Schreiben Sie einen Gästebucheintrag für Klauza

Beiträge: 44
Registriert: 14.07.2011

erstellt am: 14. Jul. 2011 15:12    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo erst mal hier im Forum! 

Ich bin neu im Umgang mit OpenFOAM und habe so meine lieben Probleme. Aktuell geht es darum, einen Fluss mit snappy HexMesh zu vernetzen. Mein Problem dabei ist, dass ich das Beispiel im UserGuide von OpenFOAM (das Beispiel mit dem Auto) nicht auf mein Problem transferieren kann.

Ich habe ein Flussufer als STL Datei erzeugt und möchte jetzt den Fluss vernetzen.
Kann ich nun mit blockMesh im Inneren des Flusses eine grobe Vernetzung machen, die ich dann mit snappy verfeinern kann? Oder kann ich auch einen kompletten Block um meine Geometrie legen und nachher alles außerhalb der STL Datei "löschen" und nur das Netz innerhalb weiter verwenden? Ich hoffe irgendjemand kann mir hier ein bisschen weiterhelfen, ich komm nicht wirklich weiter.

Vielen Dank schon mal!

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

t.schumacher
Mitglied
CFD Engineer


Sehen Sie sich das Profil von t.schumacher an!   Senden Sie eine Private Message an t.schumacher  Schreiben Sie einen Gästebucheintrag für t.schumacher

Beiträge: 184
Registriert: 03.05.2010

erstellt am: 14. Jul. 2011 16:34    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Klauza 10 Unities + Antwort hilfreich

Willkommen.

Du hast das Flussbett + Ufer als STl. Allerdings nicht die Wasseroberfläche nehm ich an?
Möglichkeit 1: Du erzeugst dir ein grobes blockMesh und definierst über den oberen Rand des blockmeshes deine Wasseroberfläche.
Dann mit snappy das eigentliche Gitter erzeugen.

Möglichkeit 2: Du erzeugst dir deinen Wasserspiegel in einem CAD Tool.
Dann reicht es wenn deine blockMesh alles grob umfasst.

Gleiches gilt natürlich auch für inlet & outlet. Diese müssen als Flächen vorliegen oder über blockMesh definiert werden.


Gruß
Thomas S

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Klauza
Mitglied



Sehen Sie sich das Profil von Klauza an!   Senden Sie eine Private Message an Klauza  Schreiben Sie einen Gästebucheintrag für Klauza

Beiträge: 44
Registriert: 14.07.2011

erstellt am: 15. Jul. 2011 09:29    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Danke dir für deine schnelle Antwort.

Du hast recht, ich habe nur mein Ufer als STL File, will aber zuerst eine reine 2 D Simulation der Strömung machen, also "ohne" Wasserspiegel. Da ein STL File aber immer 3 D ist, hat mein File auch eine ganz minimale Dicke.

Meine Frage ist jetzt:
1. soll ich mit blockMesh ein Grundnetz innerhalb des Flussufers erzeugen, welches ich mit Snappy verfeiner oder
2. mit blockMesh ein Grundnetzt "außen herum". Könnte ich dann sagen ich will nur den Teil des Gitters innerhalb der STL?

Gruß Klauza

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Klauza
Mitglied



Sehen Sie sich das Profil von Klauza an!   Senden Sie eine Private Message an Klauza  Schreiben Sie einen Gästebucheintrag für Klauza

Beiträge: 44
Registriert: 14.07.2011

erstellt am: 17. Jul. 2011 15:19    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Kann mir jemand bitte kurz eine Rückmeldung geben, ich weiß nicht wie ich am besten weiter mache.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

TTB
Mitglied
CFD Engineer


Sehen Sie sich das Profil von TTB an!   Senden Sie eine Private Message an TTB  Schreiben Sie einen Gästebucheintrag für TTB

Beiträge: 353
Registriert: 02.10.2008

BIM HVACTool für Windows OpenFOAM-2.2.x

erstellt am: 17. Jul. 2011 18:12    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Klauza 10 Unities + Antwort hilfreich

Hallo Klauza,

ich würde mit blockMesh ein äußeres Mesh bauen, dass so groß ist wie deine STL. Dann mit snappyHexMesh nur die Wasserfläche vernetzen, sprich alles was Ufer ist, wird herausgeschnitten. Das macht Snappy automatisch. Ist nur Abhängig, wo du dein locationPoint setzt und diesen setzt du unterhalb des Wasserspiegels und außerhalb des Ufers.

Ist dein BlockMesh in der Höhe größer als die Wasseroberfläche, hättest du ja rein theoretisch eine Mehrphasenströmung. Daher achte auch, wie hoch dein BlockMesh wird...

Gruß Thomas

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

t.schumacher
Mitglied
CFD Engineer


Sehen Sie sich das Profil von t.schumacher an!   Senden Sie eine Private Message an t.schumacher  Schreiben Sie einen Gästebucheintrag für t.schumacher

Beiträge: 184
Registriert: 03.05.2010

erstellt am: 18. Jul. 2011 10:54    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Klauza 10 Unities + Antwort hilfreich

Was ist eine 2D Simulation des Flusses? Simulierst du nur die Wasseroberfläche?
2D bei OF rechnet man auf 3D gittern, die in die dritte Dimension nur eine Zelle haben.
Sowas ist mit snappy immer ein wenig tricky.

Thomas S

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Klauza
Mitglied



Sehen Sie sich das Profil von Klauza an!   Senden Sie eine Private Message an Klauza  Schreiben Sie einen Gästebucheintrag für Klauza

Beiträge: 44
Registriert: 14.07.2011

erstellt am: 18. Jul. 2011 11:20    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Ja genau,das mit der 2D Simulation habe ich schon bemerkt.
Ich soll praktisch nur die Strömungsverhältnisse, also Ablösungen am Uferrand betrachten und nicht zwischen Flussgrund und Wasseeroberfläche unterscheiden.
Was meinst du mit tricky, auf was sollte ich achten?

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

t.schumacher
Mitglied
CFD Engineer


Sehen Sie sich das Profil von t.schumacher an!   Senden Sie eine Private Message an t.schumacher  Schreiben Sie einen Gästebucheintrag für t.schumacher

Beiträge: 184
Registriert: 03.05.2010

erstellt am: 18. Jul. 2011 12:32    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Klauza 10 Unities + Antwort hilfreich

Snappy ist nicht für 2D ausgelegt. Da jedes Benutzen von Refinements ja in allen drei Raumrichtungen stattfindet, ist es eigentlich nicht möglich ein vernünftiges Gitter für 2D zu erstellen.
Der Aufwand der betrieben werden müsste um von snappy auf eine gutes 2D gitter zu gelangen (3D vergittern, wasseroberflächen 2D elemente isloieren, 2D elemente extrudieren bei gleichzeitiger erstellung der notwendigen patches (inlet, outlet, wall) ist zum Teil erheblich.
Du solltest ernsthaft in Erwägung ziehen, eventuell doch in 3D zu rechnen. Selbst ein grobes Gitter in 3D sollte wahrscheinlich bessere Ergebnisse liefern als ein 2D Gitter, gerade wenn du es mit Ablösungen zu tun hast. Die Zeit die du beim Fummeln mit 2D Gitter sparst kann besser in 3D Rechenzeit angelegt werden.

Thomas

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Klauza
Mitglied



Sehen Sie sich das Profil von Klauza an!   Senden Sie eine Private Message an Klauza  Schreiben Sie einen Gästebucheintrag für Klauza

Beiträge: 44
Registriert: 14.07.2011

erstellt am: 19. Jul. 2011 19:36    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Oke, vielen Dank für deine ausführliche Antwort.

Liege ich mit dem Plan meines Vorgehens richtig:

a) Zuerst erstelle ich "innerhalb" (also an der Stelle, an der sich das Wasser befindet) der STL Geometrie ein ganz grobes Netz mit blockMesh, welches ich dann mit snappy verfeiner, so dass es sich von innen an meine STL Geometrie "anschmiegt".

Oder:

b) Erstell ich ein ganz grobes blockMesh weit über die STL Geometrie hinaus (Also auch an Stellen, an denen sich eigentlich kein Wasser befindet) und verfeiner dieses dann mit snappy und wähle dann mit speziellen Layern den benötigten Teil des Meshs.

Ist jetzt wohl CFD-technisch nicht 1A formuliert, aber ich hoffe du weißt was ich meine. 

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

TTB
Mitglied
CFD Engineer


Sehen Sie sich das Profil von TTB an!   Senden Sie eine Private Message an TTB  Schreiben Sie einen Gästebucheintrag für TTB

Beiträge: 353
Registriert: 02.10.2008

BIM HVACTool für Windows OpenFOAM-2.2.x

erstellt am: 19. Jul. 2011 20:53    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Klauza 10 Unities + Antwort hilfreich

Hallo Klauza,

Zizat:
"und wähle dann mit speziellen Layern den benötigten Teil des Meshs"

Das kommt mir wie AutoCAD denken vor 

Wenn du dir diesen Teil wegdenkst, sind beide Varianten irgendwie gleich, nur das du beim letzteren wohl sehr schnell den Speicher deines PCs sprengen wirst. Deswegen denke daran, Zellenanzahl so wenig wie nötig...

-> überprüfe die Bounding-Box deiner STL und benutze die Werte für dein BlockMesh

Gruß Thomas

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

t.schumacher
Mitglied
CFD Engineer


Sehen Sie sich das Profil von t.schumacher an!   Senden Sie eine Private Message an t.schumacher  Schreiben Sie einen Gästebucheintrag für t.schumacher

Beiträge: 184
Registriert: 03.05.2010

erstellt am: 20. Jul. 2011 09:32    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Klauza 10 Unities + Antwort hilfreich

Das snappy Netz schmiegt sich nicht an, also es kan nicht über die durch das blockMesh definierten Grenzen hinaus gehen. Das blockMesh muss also die gewünschte STL Geometrie umhüllen. Allerdings kann das auch serh eng sein. Für deinen Fluss würde ich mal von einem "normalen" Fluss ausgehen. Starte mal mit 1m cell size fürs blockMesh. Besteht die Möglichkeit dass du mal eine BBild hochlädst?

Thomas S.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Klauza
Mitglied



Sehen Sie sich das Profil von Klauza an!   Senden Sie eine Private Message an Klauza  Schreiben Sie einen Gästebucheintrag für Klauza

Beiträge: 44
Registriert: 14.07.2011

erstellt am: 20. Jul. 2011 11:18    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Zitat:
Original erstellt von TTB:
-> überprüfe die Bounding-Box deiner STL und benutze die Werte für dein BlockMesh

Oke, ich kann ja aber für das blockMesh nicht eine komplette Box außen herum legen, die dann in mehrere Blöcke unterteilt wird.
Zitat:
Original erstellt von t.schumacher:
Das snappy Netz schmiegt sich nicht an, also es kan nicht über die durch das blockMesh definierten Grenzen hinaus gehen.

Muss ich dann jedes einzelne Element im blockMeshDict "von Hand angeben" (damit meine ich die Koordinaten), damit die Elemente überall nur ein bisschen über die STL Geometrie herausstehen? Ich hoffe du verstehst was ich meine. Und ja, bei dem Fluss handelt es sich um einen "normalen" großen Fluss, der nicht schnurgerade verläuft.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP



Ingenieur, Physiker, Mathematiker - Prozess- & Methodenentwicklung für komplexe Simulationen in der Fahrzeugentwicklung (CFD/FEM/MKS) (m/w/d)

Wir bewerben uns bei dir. Diese Formulierung überrascht dich vielleicht, da du dich gerade mit deiner eigenen Bewerbung beschäftigst? Als Teaser nennen wir dir 5 Argumente. Den Blockbuster zeigen wir im Bewerbungsprozess. Die Sequels erlebst du bei TWT. Find's raus!

  • Themen am Puls der Zeit. Artificial Intelligence, Autonomous Driving, E-Mobility, Model Based Systems Engineering oder Virtual Experience....
Anzeige ansehenElektrotechnik, Elektronik
t.schumacher
Mitglied
CFD Engineer


Sehen Sie sich das Profil von t.schumacher an!   Senden Sie eine Private Message an t.schumacher  Schreiben Sie einen Gästebucheintrag für t.schumacher

Beiträge: 184
Registriert: 03.05.2010

erstellt am: 20. Jul. 2011 11:58    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Klauza 10 Unities + Antwort hilfreich

Lade mal den Fluss in Paraview. Aktiviere den "Statistic View". Dort zeigt er dir die geometrischen Grenzen der STL Datei an.
In blockMeshDict passt du die 8 vertices so an, dass du einen Quader erzeugst, der über die geometrischen Grenzen hinausgeht. Sagen wir bei jeweils 1m in alle Richtungen. Daran denken die anzahl der Zellen pro Richtung festzulegen. Es empfiehlt sich ffür snappy möglichst aspect ratio 1 Zellen zu verwenden.
Dann blockMesh erzeugen. Das blockMesh zusätzlich zum STL in PAraview einladen um zu checken ob alles passt.
snappy laufen lassen.

Thomas S

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2023 CAD.de | Impressum | Datenschutz