Autor
|
Thema: Simulation Rennwagen (660 / mal gelesen)
|
PrinzBe Mitglied Student
Beiträge: 30 Registriert: 05.05.2021
|
erstellt am: 05. Mai. 2021 15:41 <-- editieren / zitieren --> Unities abgeben:
Hallo ich bin neu hier im Forum. Ich muss im Rahmen meiner Bachelorarbeit mehrere Strömungssimulationen eines von einem Rennwagen mit verschiedenen Flügeleinstellungen erstellen. Da ich mit Openfoam bisher nicht viel am Hut hatte musste ich mich erst mal einarbeiten. Ich würde auch sagen dass ich die Grundlagen nun soweit beherrsche. Ich habe mir für mein Projekt das Motorbike Tutorial rausgesucht und meine eigene STL Datei eingebracht. Das funktioniert auch alles ganz gut und es wird auch alles so dargestellt wie ich mir das vorgestellt habe. Jetzt hatte ich vor ein paar Wochen ein Gespräch mit meinem Betreuer und er meinte, dass ich noch Grenzschichten einfügen und das Mesh noch verfeinern müsste. Das mit den Grenzschichten habe ich auch hinbekommen aber bei dem Verfeinern vom Mesh bin ich irgendwie überfordert. Er hat mir das so erklärt dass ich quasi um mein Modell von dem Auto mehrere Quader lege wo das Gitter immer um eine Stufe gröber wird. Dadurch soll der Nachlauf besser dargestellt werden. Ich finde leider keinen Ansatz wie ich da vorgehen muss. Kann mir irgendjemand weiterhelfen? Schönen Gruß PrinzBe Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Shor-ty Moderator
Beiträge: 2463 Registriert: 27.08.2010 OpenFOAM-dev (Foundation) OpenFOAM-xxxx (ESI)
|
erstellt am: 05. Mai. 2021 15:47 <-- editieren / zitieren --> Unities abgeben: Nur für PrinzBe
Hey und willkommen im Forum, um deine Euphorie etwas zu dämpfen, ich arbeite seit über 10 Jahren mit FOAM und würde nicht sagen das ich die Grundlagen überall verstehe. Grundlagen sind auch ein weiter Begriff. Solltest Du die ganzen Gleichungen in meinem Buch verstehen würde ich sagen, jap die Grundlagen sind zum größsten Teil da Zu Deine Frage. Das wird im Motorbike Tutorial auch geamcht -> refinementBox. Dein Professor meint nichts anderes, als das Du mehrerer dieser Boxen erstellst und dann in der Nachlaufstrecke das Netz verfeinerst.
- SurfaceRefinement -> für Oberflächen
- RegionRefinement -> für Volumenkörper (also deine Boxen)
Auf meiner Website gibts viel Material das dir helfen kann, sowie auch auf meinem YouTube-Kanal oder der von József Nagy. Dann gibts das wiki.openfoam.com das sehr gut ist. Zudem solltest Du die "Comprehensive Tour" von Engys bezüglich sHM anschauen. Bei weiteren Fragen stehen wir Dir zur Verfügung
------------------ Glück Auf, Tobi OpenFOAM® Community - Knowledge Base Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
PrinzBe Mitglied Student
Beiträge: 30 Registriert: 05.05.2021
|
erstellt am: 11. Mai. 2021 22:04 <-- editieren / zitieren --> Unities abgeben:
Hallo Tobi, vielen Dank für deine Antwort. Ich habe das evtl ein bisschen unpassend formuliert. Ich meinte, dass ich denke, dass ich Openfoam jetzt soweit verstanden habe um meine Aufgabe bearbeiten zu können. ;-) Das mit den refinementBoxen habe ich schon vermutet nur wie kann ich davon mehrere erstellen die dann jeweils eine Stufe feiner werden? Das habe ich bisher nicht hinbekommen... Bei den Grenzschichten bin ich mir auch nicht so sicher ob das alles korrekt ist. Ich habe diese jetzt über die addLayersControls im sHM-Dict hinzugefügt ist das richtig? Schönen Gruß PrinzBe Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Shor-ty Moderator
Beiträge: 2463 Registriert: 27.08.2010 OpenFOAM-dev (Foundation) OpenFOAM-xxxx (ESI)
|
erstellt am: 12. Mai. 2021 10:25 <-- editieren / zitieren --> Unities abgeben: Nur für PrinzBe
Du kann die Boxen entweder über eine STL einladen oder Du machst es direkt im Dict. So in etwa: Code:
... geometry { motorBike { type triSurfaceMesh; file "motorBike.obj"; } refinementBox1 { type searchableBox; min (-1.0 -0.7 0.0); max ( 8.0 0.7 2.5); } refinementBox2 { type searchableBox; min (-3.0 -0.7 0.0); max ( 1.0 0.7 2.5); } refinementBox3 { type searchableBox; min (-1.0 -0.7 0.0); max ( 8.0 0.7 2.5); } }; ...
Natürlich musst du die Koordinaten der Boxen anpassen. In der geometry{} sind quasi alle geometrischen CAD Daten oder on-the-fly erstellten (hier die refinementBox'n). Anschließend musst du im Bereich refinementRegions die ganzen Boxen angeben und kannst dann die Netzverfeinerung angeben. Code:
refinementRegions { refinementBox1 { mode inside; levels ((1E15 1)); // Erste Zahl ist für «mode inside» nicht wichtig. Zweite Zahl ist Refinement-Level bezogen auf Hintergrundnetz } refinementBox2 { mode inside; levels ((1E15 2)); } refinementBox3 { mode inside; levels ((1E15 3)); } }
So meint das dein Professor/Betreuer. ------------------ Glück Auf, Tobi OpenFOAM® Community - Knowledge Base Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
PrinzBe Mitglied Student
Beiträge: 30 Registriert: 05.05.2021
|
erstellt am: 12. Mai. 2021 11:13 <-- editieren / zitieren --> Unities abgeben:
Ok so in der Art hatte ich das auch schon probiert. Ich hatte nur keine Unterscheidung zwischen den Boxen mit 1, 2, 3 gemacht... Wenn ich das jetzt laufen lasse bricht das allerdings immer nach kurzer Zeit ab. Diese Meldung erscheint dann im Terminal: Code:
Marked for refinement due to distance to explicit features : 0 cells. Marked for refinement due to refinement shells : 761124 cells. Determined cells to refine in = 0.45 s Selected for internal refinement : 772544 cells (out of 1476791) Edge intersection testing: Number of edges : 20850814 Number of edges to retest : 18902858 Getötet
Bearbeitet durch Shor-ty: Code-Tags eingefügt
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Shor-ty Moderator
Beiträge: 2463 Registriert: 27.08.2010 OpenFOAM-dev (Foundation) OpenFOAM-xxxx (ESI)
|
erstellt am: 12. Mai. 2021 12:28 <-- editieren / zitieren --> Unities abgeben: Nur für PrinzBe
|
PrinzBe Mitglied Student
Beiträge: 30 Registriert: 05.05.2021
|
erstellt am: 12. Mai. 2021 12:34 <-- editieren / zitieren --> Unities abgeben:
Ja das mit dem getötet wundert mich auch sehr weil sonst alles auf englisch ist und dann steht das da auf einmal... Ich benutze auch Linux allerdings über virtualbox. Das sHMDict kann ich nachher mal hochladen. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Shor-ty Moderator
Beiträge: 2463 Registriert: 27.08.2010 OpenFOAM-dev (Foundation) OpenFOAM-xxxx (ESI)
|
erstellt am: 12. Mai. 2021 12:57 <-- editieren / zitieren --> Unities abgeben: Nur für PrinzBe
In der VB stellt man (soweit ich mich noch entsinnen kann) auch die mögliche Arbeitsspeicherverwaltung ein. Kann gut sein, dass Du hier aus dem Limit läufst und das «getötet» von der VB kommt. Es ist jedenfalls kein FOAM Fehler. Schau mal parallel mit top, htop oder free -h deine Speicherbelegung an. Dann siehst Du das ziemlich schnell. ------------------ Glück Auf, Tobi OpenFOAM® Community - Knowledge Base Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |