Hot News:

Unser Angebot:

  Foren auf CAD.de
  OpenFOAM
  Abweichen einzelner Zellen am Auslass

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
  
Online-Kurs: Grundlagen des 3D-Druck-Designs für Industrieingenieure , ein Kurs
Autor Thema:  Abweichen einzelner Zellen am Auslass (1507 mal gelesen)
Turbo Encabulator
Mitglied



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

Beiträge: 39
Registriert: 24.11.2014

erstellt am: 18. Jun. 2015 14:05    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


abweichen2.png


abweichen5.png

 
Hallo Foamer,

meine Berechnung mit SimpleFoam (komegaSST) konvergiert nicht.
Als ich mir dann die Ergebnisse anschaut habe, ist mir aufgefallen, dass im äußersten Layer am Auslass die Geschwindigkeitswerte ausbrechen. Dort ist auch mein Omega-Wert sowie der berechnete Druck sehr groß.
Etwas darüber weichen die Werte von k und nut deutlich vom Rest ab.

Kann es evtl sein dass die boundaries vom Auslass zusammen mit denen im Rohr diesen Effekt verursachen?

Der Auslass ist definiert als:
k: type turbulentIntensityKineticEnergyInlet
omega: type turbulentMixingLengthFrequencyInlet.
p: type fixedValue
U: type pressureInletVelocity

Das Rohr wiefolgt:
k: type kqRWallFunction
omega: type omegaWallFunction
p: type zeroGradient
U: type fixedValue

------------------
...im CAD hats gepasst.

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

Shor-ty
Moderator





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

Beiträge: 2466
Registriert: 27.08.2010

ESI-OpenCFD OpenFOAM v2312

erstellt am: 18. Jun. 2015 14: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 Turbo Encabulator 10 Unities + Antwort hilfreich

Hey,

ich möchte nur darauf hinweisen, dass das Wort "INLET" schon seine Berechtigung hat. Für die einfache Rohrströmung sind die mathematischen Grundlagen sehr einfach herzuleiten. Vorgabe von U am Einlass oder Auslass. P entsprechend vice verse. Die turbulenten Größen werden am Einlass definiert und am Auslass auf zeroGradient gesetzt.

Möglichkeit #1:

Inlet


  • U fixedValue
  • p zeroGradient
  • k TIKE Inlet
  • omega/epsilon TMLFI oder TMLDI

Outlet

  • U zeroGradient
  • p fixedValue
  • k zeroGradient
  • omega/epsilon zeroGradient

Möglichkeit #2 unterscheidet sich nur beim Invertieren von U und p, per se.

Natürlich gibt es eine Vielzahl weiterer mathematisch korrekt definierter Randbedingungen, die zumal vom Strömungsbild (elliptisch, parabolisch, hyperbolisch) und von deiner Geometrie abhängen. Das musst du also richtig machen und die Randbedingungen richtig setzen, sodass du ein geschlossenes Problem bekommst. Eine Inlet Randbedingung sollte auch an einem Inlet stehen. Die RB kann natürlich bei Rückfluss eine Berechtigung haben, aber nur dann wenn mit der FLUX unterschieden wird, ob Inflow oder Outflow und dann zwischen zeroGradient und einer Dirichlet-BC gewechselt wird. Selber hab ich das aber noch in keiner Simulation gesehen, da man dann ggf. doch lieber mit groovy das Konstrukt etwas realer abbildet.

------------------
Viele Grüße,
Tobias Holzmann

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

Turbo Encabulator
Mitglied



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

Beiträge: 39
Registriert: 24.11.2014

erstellt am: 18. Jun. 2015 14:55    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

Huch, das war dann wohl ein Fehler den ich übersehn hab, als ich mal die Durchflussrichtung geändert habe. 
Ich probiers gleich noch mal aus...

Dabei fällt mir ein, du hattest mir mal bei einem Problem geholfen und in U als
inlet: type flowrateinletvelocity  und als
outlet: type pressureInletVelocity definiert.

Warum kann man das da dann so machen? Welchen Vorteil hat das ganze?

------------------
...im CAD hats gepasst.

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

Shor-ty
Moderator





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

Beiträge: 2466
Registriert: 27.08.2010

ESI-OpenCFD OpenFOAM v2312

erstellt am: 18. Jun. 2015 16:39    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 Turbo Encabulator 10 Unities + Antwort hilfreich

Also die erste Randbedingung berechnet dir die Vektoren auf dem Patch, sodass du deinen Massenstrom/Volumenstrom erhältst. Also das gleiche wie fixedValue, nur dass du eben kein Vektor angibst sondern den Massenstrom/Volumenstrom. Somit musst du dich dann nicht mit schiefen Patches herumquälen, da hier ja dann noch der Winkel eine Rolle spielt. Entsprechend wäre eine Eingabe wie folgt zu machen:
Code:

inlet
{
   type    fixedValue;
   value   uniform (0.23142 -0.32567 0.9827);
}

Kann man machen aber wieso schwer wenns einfach auch geht.
Die zweite Randbedingung setzt kein fixedValue sondern unterscheidet zuerst einmal zwischen zwei Varianten:

Variante 1 = outflow = phi ist positiv
Hier wird dann dein Face als zeroGradient definiert und es wird nix berechnet. Die Geschwindigkeit am Face ist dann diejenige des Zellmittelpunkts (zeroGradient = kein Gradient zwischen Zellmittelpunkt und Facemittelpunkt).

Variante 2 = inflow = phi ist negativ
Hier wird die Geschwindigkeit für dein Face mittels dem Normalenvektor und dem Zellmittelpunkt berechnet (also wird phi mit einbezogen). Die Berechnung findest du in der C Datei. Wichtig ist eben, dass du dann einen Gradienten zwischen Face und Zelle bekommst, der je nachdem wie U in der Zelle definiert ist anders ist; somit auch kein fixedGradient. Zudem bekommst du auch die Richtung des Vectors. Es ist zudem möglich eine tangentiale Geschwindigkeit vorzugeben; entsprechend kann man das auch beeinflussen.


Wie du siehst sind das zwei komplett verschieden Randbedingungen. Die eine ist Dirichlet, die andere wechselt zwischen Neumann und Dirichlet (ggf. Robinson - muss man schauen wie das implementiert ist). Wenn du jetzt dein Rohr hast und du am Outlet ein pressureInletOutletVelocity für U definierst, du aber sicher weißt das kein Fluid zurückfließen wird, dann wird diese Randbedingung exakt der zeroGradient Bedingung gleich. Hättest du aber ein Backflow, würden sich zeroGradient und pressureInletOutletVelocity unterscheiden.

------------------
Viele Grüße,
Tobias Holzmann

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

Turbo Encabulator
Mitglied



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

Beiträge: 39
Registriert: 24.11.2014

erstellt am: 19. Jun. 2015 08:33    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

Aha, vielen Dank Tobias!


Ich habe aber auch jetzt, trotz geänderter Inlet-Bedingungen noch immer das Problem, dass mein Fall nicht konvergiert.
Die Abweichungen am Outlet treten auch noch auf.

Weisst du, woher das kommen könnte?
Sind solche Fehler vernachlässigbar?
Wie kann man simpleFoam mit komegaSST so einstellen, dass der Fall besser konvergiert?


------------------
...im CAD hats gepasst.

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

Shor-ty
Moderator





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

Beiträge: 2466
Registriert: 27.08.2010

ESI-OpenCFD OpenFOAM v2312

erstellt am: 19. Jun. 2015 11:37    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 Turbo Encabulator 10 Unities + Antwort hilfreich

Kannst du deinen Case mal hochladen?
Es ist ja so, dass es viele Ursachen gibt.

Was mir zuerst einfallen würde, ist, dass du dein omega nicht unterrelaxierst.

------------------
Viele Grüße,
Tobias Holzmann

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

Turbo Encabulator
Mitglied



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

Beiträge: 39
Registriert: 24.11.2014

erstellt am: 22. Jun. 2015 14:45    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


pressurezeroGrad.png

 
Hab jetzt den outlet für U als zero Gradient definiert, jetzt schauts schonmal wesentlich besser aus, die Abweichungen sind weg.

Die Residuen fallen jetzt etwas gleichmäßiger aus als vorher, konvergieren will der Fall allerdings immernoch nicht.
(siehe Bild - oben outlet: pressureInletVelocity, unten outlet: fixedGradient)

------------------
...im CAD hats gepasst.

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

Shor-ty
Moderator





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

Beiträge: 2466
Registriert: 27.08.2010

ESI-OpenCFD OpenFOAM v2312

erstellt am: 22. Jun. 2015 14:48    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 Turbo Encabulator 10 Unities + Antwort hilfreich

Sieht doch alles gut aus.

------------------
Viele Grüße,
Tobias Holzmann

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

Turbo Encabulator
Mitglied



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

Beiträge: 39
Registriert: 24.11.2014

erstellt am: 22. Jun. 2015 15:04    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

An sich schon, aber kann mir OpenFOAM nicht irgendwann sagen "So ich bin jetzt fertig." ? 

Ich hab in meiner Geometrie ein "Totwassergebiet", in dem Umag zu pulsieren beginnt. Dann rechnet der Fall bis zum letzten Iterationsschritt durch...
Kann ich das irgendwie verhindern?

------------------
...im CAD hats gepasst.

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

Shor-ty
Moderator





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

Beiträge: 2466
Registriert: 27.08.2010

ESI-OpenCFD OpenFOAM v2312

erstellt am: 22. Jun. 2015 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 Nur für Turbo Encabulator 10 Unities + Antwort hilfreich

Wenn du keine stationäre Lösung hast, wirst du mit dem simple nicht weiter runter kommen. Vllt indem du die relax Parameter verkleinerst oder dein Netz gröber macht. Zudem kannst du upwund verwenden um die Gradienten zu verschmieren. Das ist aber ja  nicht das was du willst.

------------------
Viele Grüße,
Tobias Holzmann

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

Turbo Encabulator
Mitglied



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

Beiträge: 39
Registriert: 24.11.2014

erstellt am: 02. Jul. 2015 14:07    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

Wie sollte man bei einem solchen Totwassergebiet eigentlich Layer im Hinblick auf deren y+ Werte berechnen?

Ich rechne mein k-omega-SST-Modell mit High-Re (bei Re 440000).
Nachdem y+ ja mit der Geschwindikeit berechnet wird, habe ich dementsprechend im Totwassergebiet sehr niedrige und im Strömungsgebiet eher hohe Werte.

So wie ich den Schwarze (S.152) verstehe, wähle ich mein Gitter/Layer so, dass mein y+ im Totwassergebiet ca 30 beträgt, und im Strömungsgebiet ca. 300. Verstehe ich das so richtig?

Oder versucht man durch verschiedene Layer eher an allen Stellen der Geometrie einen ähnlichen y+ Wert zu erreichen

------------------
...im CAD hats gepasst.

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

Shor-ty
Moderator





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

Beiträge: 2466
Registriert: 27.08.2010

ESI-OpenCFD OpenFOAM v2312

erstellt am: 02. Jul. 2015 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 Nur für Turbo Encabulator 10 Unities + Antwort hilfreich

Grüß dich,

also ich hab mich damals etwas mit den Grenzschichten beschäftigt, längst aber nicht so wie andere. Normalerweise solltest du dein y+ (die Meinungen gehen auseinander) so wählen, dass der Zellmittelpunkt der ersten Zelle in außerhalb der viskosen Unterschicht ist. D.h. außerhalb des Log. Bereichs. Entsprechend wird von der Wand bis zum ersten Zellmittelpunkt das Log-Gesetzt verwendet. Dadurch ist es möglich größere Zellen an der Wand zu setzen und reduziert den Rechenaufwand (gerade bei Transienten Rechnungen, zwecks Co Zahl).

Der Wert ist im Ferziger bei ca. 21 angegeben (wenn ich mich nich recht täusche).

Heißt also, wenn du mit Wandfunktionen arbeitest, sollte dein y+ überall gleich sein. Bitte beachte das FOAM kein y+ sondern y* berechnet. y* wird mit turbulenten Größen berechnet y+ hingegen mit der Wandschubspg. selbst. Iwo hier im Forum findest du was ausführlicheres.

------------------
Viele Grüße,
Tobias Holzmann

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

Turbo Encabulator
Mitglied



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

Beiträge: 39
Registriert: 24.11.2014

erstellt am: 02. Jul. 2015 16:09    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

Hey Shorty,
zum Berechnen von y+ hab ich mir ein Tool auf cfd-online besorgt. Find nur grad den genauen Link nicht, und da gibts mehrere... (na, ich hoffe, ich hab das Richtige  )

naja dann wär ich mit meinen 30 ja auf der sicheren Seite außerhalb des log-Bereichs.
Wie stellst du das y+ so ein, dass es überall möglichst gleichmäßig wird?

------------------
...im CAD hats gepasst.

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

Shor-ty
Moderator





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

Beiträge: 2466
Registriert: 27.08.2010

ESI-OpenCFD OpenFOAM v2312

erstellt am: 02. Jul. 2015 16:38    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 Turbo Encabulator 10 Unities + Antwort hilfreich

Hallo,

ich würde dir dieses Tool empfehlen http://www.cfd-online.com/Tools/yplus.php.
Das y+ immer gleich ist, wirst du nicht schaffen. y+ (sofern du die Berechnung kennst) ist abhängig von der Wandschubspg und diese wiederrum von der Geschwindigkeit parallel zur Wand. Je nach dem was du für ein Netz hast, bekommst du natürliche andere y+ und je nach Auflösung eine andere Geschwindigkeit. Es reicht schon die Ablösung der Strömung von der Wand und dein y+ geht extrem in die Höhe (vgl. Stolperdrahl bei der Umströmung einer Kugel oder allgemein Karmansche Wirbelstraße).

Bedenke, dass alles was du verwendest Approximationen sind. Verwendest du ein anderes Turbulenzmodell sehen deine Werte wieder ganz anders aus. "Alle Modelle sind falsch, aber manchmal ganz nützlich."

------------------
Viele Grüße,
Tobias Holzmann

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

Micha6982
Mitglied
Akademischer Mitarbeiter


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

Beiträge: 130
Registriert: 20.01.2014

ubuntu 16.04
Salome 7.7.1 & 7.8.0
OpenFOAM 3.x & 4.x

erstellt am: 03. Jul. 2015 06:56    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 Turbo Encabulator 10 Unities + Antwort hilfreich

Hallo zusammen,

alternativ kann man auch eine hybride Wandfunktion nehmen. Diese schaltet dann zellbasiert von highRe auf lowRe um.

------------------
Viele Grüße
Michael

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)2025 CAD.de | Impressum | Datenschutz