| |  | Online-Kurs: Grundlagen des 3D-Druck-Designs für Industrieingenieure , ein Kurs
|
Autor
|
Thema: Laminare Rohrströmung,Validierung (1721 mal gelesen)
|
Flipper1234 Mitglied Student
 Beiträge: 5 Registriert: 01.09.2015
|
erstellt am: 01. Sep. 2015 08:20 <-- editieren / zitieren --> Unities abgeben:         
Hallo zusammen, ich bin ein OpenFoam Neuling und bin gerade dabei im Rahmen meiner Bachelorarbeit Simulationen mit OpenFoam zu bearbeiten. Ein Teil meiner Arbeit sind Simulationen von Rohrströmungen. Die Reynoldszahl liegt bei diesen Strömungen zwischen 300 und 1600. Wie ich ein genügend feines Netz einstelle weiß ich. Wo ich jedoch nicht ganz hinter blicke, ist die Wandbetrachtung von diesen laminaren? Strömungen. Ebenfalls weiß ich nicht genau wie ich eine Netzunabhängigkeitsstudie von laminaren Strömungen durchführe. Über eine Art "Konzept" oder jegliche Infos bei der Betrachtung von Rohströmungen mit Reynoldszahlen zwischen 300 und 1600 wäre ich sehr dankbar  Mit freundlichen Grüßen, Philipp Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Micha6982 Mitglied Akademischer Mitarbeiter
 
 Beiträge: 130 Registriert: 20.01.2014 ubuntu 16.04 Salome 7.7.1 & 7.8.0 OpenFOAM 3.x & 4.x
|
erstellt am: 01. Sep. 2015 15:11 <-- editieren / zitieren --> Unities abgeben:          Nur für Flipper1234
Hallo Philipp, zuerst einmal möchte ich sagen, dass ich schon sehr enttäuscht von den meisten angehenden Ingenieuren bin. Heutzutage sollte man wenigstens Google bedienen können - unter Netzunabhängigkeitsstudie in der Google-Suche, verweisen die ersten beiden Links auf ein Buch von Lechler. Dort wird deine Frage beantwortet. Kurzzusammenfassung:
- Netz so lange verfeinern bis sich deine Zielgrößen nicht mehr ändern
- dimensionslosen Wandabstand y+ anschauen und mit der Literatur vergleichen
------------------ Viele Grüße Michael Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Flipper1234 Mitglied Student
 Beiträge: 5 Registriert: 01.09.2015
|
erstellt am: 02. Sep. 2015 07:31 <-- editieren / zitieren --> Unities abgeben:         
Hallo Micha, ich habe diverse Literatur gelesen und ein anderer Teil meiner Simulation handelt von turbulenten Rohströmungen. Bei diesen turbulenten Rohrströmungen habe ich diese (bzw. etwas erweiterte) Netzunabhängigkeitsstudie gemacht. Jedoch habe ich nach laminaren Strömungen gefragt. Dort habe ich ebenfalls verschieden feine Gitter eingestellt jedoch kommen bei mir keine vernünftigen Ergebnisse raus. Meine Frage ist ob man laminare Strömungen genauso nach dem y+ Wandabstand behandeln kann oder ob es da einen Unterschied gibt? (Und die Aussage das man enttäuscht von Ingenieuren ist und man kann Google bedienen kann finde ich unangebracht) Danke trotzdem für die Antwort Mit freundlichen Grüßen Philipp Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Shor-ty Moderator
     

 Beiträge: 2466 Registriert: 27.08.2010 ESI-OpenCFD OpenFOAM v2312
|
erstellt am: 02. Sep. 2015 11:21 <-- editieren / zitieren --> Unities abgeben:          Nur für Flipper1234
Hallo Philipp und willkommen im Forum, Zitat: Original erstellt von Flipper1234: Hallo Micha,ich habe diverse Literatur gelesen und ein anderer Teil meiner Simulation handelt von turbulenten Rohströmungen. Bei diesen turbulenten Rohrströmungen habe ich diese (bzw. etwas erweiterte) Netzunabhängigkeitsstudie gemacht.
Dann weißt du ja was zu machen ist. Zitat:
Jedoch habe ich nach laminaren Strömungen gefragt. Dort habe ich ebenfalls verschieden feine Gitter eingestellt jedoch kommen bei mir keine vernünftigen Ergebnisse raus.
Das geht aber erst aus deinem zweiten Post hervor. Für uns ist dein Problem aber noch nicht klar >>> was ist unphysikalisch, was sind deine Probleme, woran kann man die Aussage untermauern "es kommen keine vernünftigen Ergebnisse raus". Liegt die Geschwindigkeit in einem falschen Bereich oder der Druck? Zitat:
Meine Frage ist ob man laminare Strömungen genauso nach dem y+ Wandabstand behandeln kann oder ob es da einen Unterschied gibt?
y+ wird normalerweise von FOAM mit der turbulenten Größe nut oder mut berechnet. Da du diese nicht hast wirst du auch kein yPlus berechnen können. Entweder bekommst du eine Fehlermeldung beim Ausführen von yPlusRas oder er rechnet dir einfach nichts (alle Einträge in der yPlus Datei sollten dann null sein). Wahrscheinlich ist letzteres der Fall. Du bekommst eben eine Grenzschicht an der Wand (zwecks Haftungsbedigung) und je nach Re eben dicker oder dünner. Das kannst du aber in Paraview mit "Plot-Over-Line" ziemlich schnell testen wo die aufhört und dementsprechend kannst du dein Netz an der Wandregion verfeinern. Wenn man keine Wärme- und Stoffübergänge hat, dann muss das nicht 100% exakt sein. Es wundert mich das du mittels einer laminaren Rechnung keine guten Ergebnisse erhältst, da hier die Gleichungen ohne Modelle gelöst werden. Es ist also möglich ohne Mittelung die NSG zu betrachten.
Zitat:
(Und die Aussage das man enttäuscht von Ingenieuren ist und man kann Google bedienen kann finde ich unangebracht)
Da stimm ich zu aber jeder kann mal einen schlechten Tag haben. Vielleicht hätte sich Micha auch einfach etwas mehr Informationen deinerseits gewünscht. Dein erster Beitrag ist wirklich etwas schwammig formuliert. Die Schlüsselworte sind:
- Netzunabhängigkeitsstudie
- laminare Berechnung (Rohrströmung)
- Randbedingungen
Beides ist schon sehr oft durchgekaut worden (auch hier im Forum). Deswegen bitte dein Problem genau schildern. Denk daran, dass diejenigen die dir helfen möchten, keine Ahnung von deinem Beispiel, deinen Einstellungen, deiner Geometrie, deinem Netz etc. haben. Entsprechend möchte ich darauf verweisen, dass die notwendigen Informationen vorliegen sollten, um das Problem zu behandeln.
- Ausgabe von CheckMesh
- Bilder
- Welchen Strömungslöser
- Welche Löser für die diskretisierten Gleichungen
- Was ist das Problem
- uvm
------------------ Viele Grüße, Tobias Holzmann Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Flipper1234 Mitglied Student
 Beiträge: 5 Registriert: 01.09.2015
|
erstellt am: 02. Sep. 2015 11:52 <-- editieren / zitieren --> Unities abgeben:         
Ich bedanke mich für diese ausführliche Antwort und Einführung in dieses Forum. Du hast Recht das ich zu wenig Informationen bereitgestellt habe. Ich Probiere es noch einmal: Die Dimensionen meines zu Simulierenden Rohres sind L=250mm D=6mm. Der Volumenstorm liegt bei 17l/h woraus eine Reynoldszahl von 1116 resultiert. Als Solver wurde von mir simpleFoam verwendet und unter RASProperties das turbulence Model ausgestellt: RASModel kOmegaSST; turbulence off; printCoeffs on; laminarCoeffs {} wallFunctionCoeffs { kappa 0.4187; E 9; } Ich habe 4 verschieden feine Rechengitter erstellt. Das Problem was auftritt ist, dass umso mehr Gitterpunkte ich generiere sich der Druckverlust ändert. Es kommen keine (wie gewünschten) Druckverluste zustande, die Unabhängig vom Netz sind. Ein Beispielhaftes CheckMeshLog ist folgendes : Overall number of cells of each type: hexahedra: 1890000 prisms: 0 wedges: 0 pyramids: 0 tet wedges: 0 tetrahedra: 0 polyhedra: 0 Checking geometry... This is a 3-D mesh Overall domain bounding box (-0.003 -0.003 0) (0.003 0.003 0.5) Mesh (non-empty, non-wedge) directions (1 1 1) Mesh (non-empty) directions (1 1 1) Mesh (non-empty, non-wedge) dimensions 3 Boundary openness (2.2979e-18 -1.84977e-18 -1.14971e-17) Threshold = 1e-06 OK. Max cell openness = 2.2278e-16 OK. Max aspect ratio = 48.8397 OK. Minumum face area = 2.70517e-09. Maximum face area = 1.57067e-07. Face area magnitudes OK. Min volume = 2.70517e-12. Max volume = 1.1988e-11. Total volume = 1.41307e-05. Cell volumes OK. Mesh non-orthogonality Max: 40.6735 average: 6.02787 Threshold = 70 Non-orthogonality check OK. Face pyramids OK. Max skewness = 0.597383 OK.
Kann das Problem an der Verwendung des Solvers liegen? Oder habe ich etwas Grundlegendes missachtet? Ich bedanke mich vielmals für jegliche Antworten und Anregungen Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Micha6982 Mitglied Akademischer Mitarbeiter
 
 Beiträge: 130 Registriert: 20.01.2014 ubuntu 16.04 Salome 7.7.1 & 7.8.0 OpenFOAM 3.x & 4.x
|
erstellt am: 02. Sep. 2015 11:58 <-- editieren / zitieren --> Unities abgeben:          Nur für Flipper1234
Hallo zusammen, Tobias hat es auf den Punkt gebracht. Wenn ich deinen ersten Post lesen, lese ich daraus: "bitte macht mir meine Abschlussarbeit". Dies liegt sicherlich an der allgemeinen Formulierung. Hinweise, was du schon erarbeitet hast, wären sinnvoll. Man darf ruhig zeigen, was man schon selbst erarbeitet hat. Sicherlich reagiere ich da auch ein wenig sensibel, das liegt aber daran, dass ich nun schon einige Studentenarbeiten betreut habe und leider öfters Studierende habe, die nach dem Motto vorgehen: "ich habe nichts gefunden, bitte mach mal du". Wenn ich mir dann vorstelle, dass diese jungen Studierenden bald als Ingenieure in die Wirtschaft gehen, dann wird mir komisch. Wie Tobias weiter anmerkt, wäre es gut, wenn du uns mal deine Resultate zeigst und beschreibst, was daran falsch ist bzw. sein soll.
Bei dem y+ Tool von OF muss man aufpassen, da es eigentlich y* wiedergibt. y+ kannst du ohne turbulente Größen berechnen, darstellen und bewerten. Hier wurde das Thema mal angeschnitten: http://ww3.cad.de/foren/ubb/Forum527/HTML/000650.shtml#000021 Bei der laminaren Strömung brauchst du keinen konkreten y+ Wert einhalten. Jedoch sollte die Darstellung u+ über y+ sinnvoll sein. ------------------ Viele Grüße Michael Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Micha6982 Mitglied Akademischer Mitarbeiter
 
 Beiträge: 130 Registriert: 20.01.2014 ubuntu 16.04 Salome 7.7.1 & 7.8.0 OpenFOAM 3.x & 4.x
|
erstellt am: 02. Sep. 2015 15:01 <-- editieren / zitieren --> Unities abgeben:          Nur für Flipper1234
Hallo, bei RASModel kannst du laminar hinein schreiben. Ob das mit der Angabe turbulence off das gleiche Resultat ergibt, kann ich nicht sagen. Habe es so herum noch nicht versucht. Fragen:
- Deine Länge beträgt laut CheckMesh 500 mm, statt 250 mm, ist das richtig?
- Randbedingungen bei U und p
- Medium?
Der Solver ist für eine reine Druckberechnung eigentlich der Richtige. ------------------ Viele Grüße Michael Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Shor-ty Moderator
     

 Beiträge: 2466 Registriert: 27.08.2010
|
erstellt am: 02. Sep. 2015 15:24 <-- editieren / zitieren --> Unities abgeben:          Nur für Flipper1234
Zitat: Original erstellt von Flipper1234:
Die Dimensionen meines zu Simulierenden Rohres sind L=250mm D=6mm.
Wie Micha schon sagte, bitte die Dimensionen überprüfen. Zitat:
Als Solver wurde von mir simpleFoam verwendet und unter RASProperties das turbulence Model ausgestellt:RASModel kOmegaSST; turbulence off; printCoeffs on; laminarCoeffs {} wallFunctionCoeffs { kappa 0.4187; E 9; }
Sollte passen. Persönlich schreib ich als RASModel immer laminar rein aber ein kurzer Test ergab das du mittels "Turbulence off" das gleiche erzielst (zumindest in der Solverausgabe). Der Solver (wie von Micha schon erwähnt) passt. Bedenke aber das der Druck mit der Dichte multipliziert werden muss um deinen Druck mit Messwerten zu vergleichen. Das wurde zwar auch schon sehr sehr oft gesagt und sollte klar sein, da die NSG für inkompressible Strömungen/Medien durch die Dichte geteilt werden. Das vergessen viele oder wissen es schlicht weg nicht. Da du aber schon die Berechnung für turbulente Strömungen erledigt hast (laut zweitem Post), solltest du das bereits wissen. Zitat:
Ich habe 4 verschieden feine Rechengitter erstellt. Das Problem was auftritt ist, dass umso mehr Gitterpunkte ich generiere sich der Druckverlust ändert. Es kommen keine (wie gewünschten) Druckverluste zustande, die Unabhängig vom Netz sind.
Das ist natürlich eine qualitative Aussage. Normalerweise nimmt man ein Netz und das nächste Netz ist doppelt so fein. Wenn du 10 Zellen pro Länge mehr einfügst wird sich da nichts ändern. Zudem!!! Hast du schon eine stationäre Lösung? Also 10000 Iterationen oder mehr? Interessant wäre natürlich wie du den Abbruch der Rechnung festlegst. Wenn es die Iterationszahl von 1000 ist, dann wird einfach die Lösung noch nicht im stationären Zustand sein. Das kannst du ganz schnell via Paraview testen.
Code:
hexahedra: 1890000
Das ist schon ein recht feines Netz (für deine Abmessungen) und sollte schon eine Netzunabhängigkeit darstellen. In deinem Fall könntest du auch einfach ein 2d-rotationssymmetrischen Fall erstellen. Dadurch sparst du dir extrem viele Kosten, oder du nimmst 2 Symmetrie-Achsen. Bitte die Informationen bereitstellen, welche in Micha's Liste zu finden ist. Ansonsten die Hinweise von Micha beachten. Gerade wenns um y+ und y* geht ist er der Ansprechpartner  ------------------ Viele Grüße, Tobias Holzmann Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Flipper1234 Mitglied Student
 Beiträge: 5 Registriert: 01.09.2015
|
erstellt am: 03. Sep. 2015 07:37 <-- editieren / zitieren --> Unities abgeben:         
Hallo zusammen Micha du hast richtig erkannt meine Länge war falsch eingestellt, ist aber nun auf 250 zurückgesetzt danke dafür! Hier meine Einstellungen für U und P:
Code:
U: FoamFile { version 2.0; format ascii; class volVectorField; location "0"; object U; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //#include "$FOAM_CASE/caseVariables.dat" dimensions [ 0 1 -1 0 0 0 0 ]; internalField uniform (0 0 0); boundaryField { "fixedWalls.*" { type fixedValue; value uniform (0 0 0); } inlet { type $inletUBoundaryType; flowRate $inletFlowRate; fileName $inletFlowData; outOfBounds clamp; value uniform (0 0 0); } outlet { type zeroGradient; } }
P:
Code:
FoamFile{ version 2.0; format ascii; class volScalarField; object p; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // #include "$FOAM_CASE/caseVariables.dat" dimensions [0 2 -2 0 0 0 0]; internalField uniform $outletPressure; boundaryField { "fixedWalls.*" { type zeroGradient; } inlet { type $inletPBoundaryType; value uniform $inletPressure; } outlet { type fixedValue; value uniform $outletPressure; } }
Mein Medium ist AdBlue bei 60°C mit einer Dichte von 1068kg/m^3 und einer kin. Viskosität von 7.03e-07 m^2/s. Und Anbei noch der letzte log Eintrag:
Code:
DILUPBiCG: Solving for Ux, Initial residual = 0.000576932, Final residual = 1.95949e-07, No Iterations 2 DILUPBiCG: Solving for Uy, Initial residual = 0.000581629, Final residual = 1.95727e-07, No Iterations 2 DILUPBiCG: Solving for Uz, Initial residual = 0.000640887, Final residual = 3.31982e-07, No Iterations 2 GAMG: Solving for p, Initial residual = 8.53637e-05, Final residual = 2.29775e-05, No Iterations 30 GAMG: Solving for p, Initial residual = 2.47819e-05, Final residual = 1.43153e-06, No Iterations 30 time step continuity errors : sum local = 4.29593e-08, global = -1.93654e-09, cumulative = 0.00126941 ExecutionTime = 21362.6 s ClockTime = 21425 sField U magnitude min = 0 max = 0.19345 Field p min = 929.357 max = 937.253 MassFlows: outlet = 0.2832 inlet = -0.2832 Averages of p : outlet = 929.357 inlet = 937.233 Time = 1250
Bei dem RASModell werde ich laminar eintragen und übers Wochenende die Simulationen laufen lassen, falls es keine Anregungen mehr gibt. Ich bedanke mich bei allen Antworten! Mit freundlichen Grüßen, Philipp Edit by Shor-ty: Code-Tags eingefügt. Bitte in Zukunft beachten.
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Shor-ty Moderator
     

 Beiträge: 2466 Registriert: 27.08.2010 ESI-OpenCFD OpenFOAM v2312
|
erstellt am: 03. Sep. 2015 11:43 <-- editieren / zitieren --> Unities abgeben:          Nur für Flipper1234
Hallo Philipp,
- bitte mein Edit in deinem Eintrag für nachfolgende Posts beachten
- Deine Randbedingungen sind abhängig von deiner Einstellung in der Datei die du uns nicht zeigst
- Einen Eintrag der Log-Datei lässt höchstens darauf schließen das du laminar rechnest
Zu deinen RB. Es dürfte alles passen, auch wenn ich nicht direkt weiß was du nimmst. Entweder ein FixedValue, massFlowRate, irgendwas anderes etc. ?!?! Da du laminar bist, wäre es vllt auch sinnvoll eine parabolisches Geschwindigkeitsfeld am Inlet vorzugeben. Ansonsten hast du noch die Strecke, in der sich die Grenzschicht erst ausbilden muss. Dürfte aber in deinem Fall keine Rolle spielen. Was noch besser wäre:
- Nach einer gewissen Zeit hast du U am Outlet für jedes Face (latestTime -> 0/U)
- Die BC für U am outlet auf fixedValue setzen
- Für den Druck setzt du fixedValue am Inlet und outlet zeroGradient
- Und schon hast du ein wunderschönes Profil
Muss aber hier definitiv nicht gemacht werden. Was interessant wäre, ist der Plot deiner Residuen! Für U scheint mir das bei dir bei 1250 noch sehr sehr hoch zu sein. Schau doch einfach mal die letzten 50 Schritte durch. Wenn sich noch viel am Strömungsbild ändert, dann hast du noch nich die stationäre Lösung erreicht. Via einem Plot ist das natürlich auch möglich. ------------------ Viele Grüße, Tobias Holzmann Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
| Anzeige.:
Anzeige: (Infos zum Werbeplatz >>)
 |