Autor
|
Thema: Ein paar Fragen zu SnappyHexMesh (5139 mal gelesen)
|
pajofego Mitglied
Beiträge: 57 Registriert: 07.02.2006
|
erstellt am: 12. Feb. 2012 22:07 <-- editieren / zitieren --> Unities abgeben:
Hallo zusammen, ich habe ein paar Fragen zu SHM. 1) surfaceFeatureExctrac: Ich meine gelesen zu haben, dass seit Vers. of2.0 mit dem Befehl: Code: surfaceFeatureExtract -includedAngle 150 -writeObj constant/triSurface/surfacemesh.stl surfacemesh
eine bessere Geometrietreue erreicht wird und das snapeedge tool nicht mehr notwendig ist. Leider habe ich bei den meisten Netzen auf der Oberfläche fehlende Zellen. Also so toll wie der auf der Homepage von OF sehen bei mir die Netze auf der Oberfläche nie aus! Hat jemand Tipps was man machen kann? Im Anhang ist eine wirklich einfache Geometrie und am Ende sieht bei mir das Netz auf der Oberfläche nicht sauber aus! Siehe auch Screenshot. 2.) Layer: Hier gibt's schon ein Thread zu diesem Thema, aber ich komme nicht dahinter warum ich keine boundary layer hinbekomme. Im Anhang ist mein kompletter shm case mit der entsprechenden Einstellungen. Ich versuvhe schon die ganze Zeit eine Layer in den patch dimple reinzulegen. Leider ohne Erfolg. Hat einer einen Tipp? Danke Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Burnquist Mitglied
Beiträge: 27 Registriert: 12.12.2011
|
erstellt am: 13. Feb. 2012 09:56 <-- editieren / zitieren --> Unities abgeben: Nur für pajofego
Kannst du das Netz um die Geometrie nicht feiner vernetzen? Zusätzliche refinementBox definieren... Hast du dich schon an den Parametern featureAngle, minThickness, finalThickness versucht (kann hier am PC deine Files nicht aufmachen). Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
pajofego Mitglied
Beiträge: 57 Registriert: 07.02.2006
|
erstellt am: 13. Feb. 2012 21:03 <-- editieren / zitieren --> Unities abgeben:
o.k. refinement box habe ich noch nicht ausprobiert. Könnte ich mal angehen. Was mich aber generell wundert ist, dass ich mit dem neuen SHM eine besserer Kantentreue erhalte, dafür aber Löcher an der Oberfläche? Irgendwo stand auch mal, dass nFeatureSnapIter auf 10 gesetzt werden muss. Ich konnte aber keine Verbesserung feststellen. Bei den Layerparametern tue ich mich schwer! Code:
// Settings for the layer addition. addLayersControls { relativeSizes true; //true; // v 1.6 // Per final patch (so not geometry!) the layer information layers { //minZ //{ // nSurfaceLayers 3; //} stlSurface_dimple // a_surface_name { nSurfaceLayers 5; } } // Expansion factor for layer mesh expansionRatio 1.1; // 1.0; //- Wanted thickness of final added cell layer. If multiple layers // is the // thickness of the layer furthest away from the wall. // Relative to undistorted size of cell outside layer. finalLayerRatio 1; // 0.3; finalLayerThickness 0.0001; // 0.3; // v 1.6 //- Minimum thickness of cell layer. If for any reason layer // cannot be above minThickness do not add layer. // Relative to undistorted size of cell outside layer. minThickness 0.00001; // 0.1; //- If points get not extruded do nGrow layers of connected faces that are // also not grown. This helps convergence of the layer addition process // close to features. nGrow 1; // 1; // Advanced settings
//- When not to extrude surface. 0 is flat surface, 90 is when two faces // make straight angle. featureAngle 179; // 30; //- Maximum number of snapping relaxation iterations. Should stop // before upon reaching a correct mesh. nRelaxIter 3; // Number of smoothing iterations of surface normals nSmoothSurfaceNormals 1; // Number of smoothing iterations of interior mesh movement direction nSmoothNormals 3; // Smooth layer thickness over surface patches nSmoothThickness 10; // Stop layer growth on highly warped cells maxFaceThicknessRatio 0.5; // Reduce layer growth where ratio thickness to medial // distance is large maxThicknessToMedialRatio 0.3; // Angle used to pick up medial axis points minMedianAxisAngle 130; // Create buffer region for new layer terminations nBufferCellsNoExtrude 0; // Overall max number of layer addition iterations // v 1.6 nLayerIter 50; // v 1.6 }
Welche Dimension sind minThickness, finalThickness? Meter, milimeter,...? Ich habe meine Geometrie in Metern modelliert. Welche Bedeutung hat featureAngle? Danke und Gruß pajofego Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Burnquist Mitglied
Beiträge: 27 Registriert: 12.12.2011
|
erstellt am: 14. Feb. 2012 09:41 <-- editieren / zitieren --> Unities abgeben: Nur für pajofego
Hi, versuch erstmal nur 3 layer aufzubauen. Bei relativeSize: true, ist finalLayerThickness 0.3 eine Prozentangabe. Wenn du im Meter-Bereich arbeitest kannst du die Standard Werte drinne lassen (im motorBike Tut klappts mit diesen auch). Wenn du false einstellst, sind das absolute Werte in Meter. Da musst du aber auch das expansionRatio mit einbeziehen. nGrow hab ich bei mir immer auf 0. Bin mir aber nicht sicher wie sich das auswirkt. nLayerIter kannst du auf 100 erhöhen. Ich brauch je nach Oberfläche 60 Iterationen (allerdings mm-Bereich). Versuchs mal mit einer neu definierten refinementBox. 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: 15. Feb. 2012 17:15 <-- editieren / zitieren --> Unities abgeben: Nur für pajofego
So Leute, ihr macht mich ganz "willig" Ich switch jetz ins Linux und hau mir mal das neue OF drauf und teste mal das Problem mit sHM. Übrigends danke mit der Angabe: Code:
relativeSize: true --> finalLayerThickness 0.3 eine Prozentangabe
wusst ich auch noch nicht 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: 19. Feb. 2012 15:37 <-- editieren / zitieren --> Unities abgeben: Nur für pajofego
|
pajofego Mitglied
Beiträge: 57 Registriert: 07.02.2006
|
erstellt am: 19. Feb. 2012 15:55 <-- editieren / zitieren --> Unities abgeben:
Ja, die Geometrie wurde mit gmsh erstellt. Ich bin noch dran zu verstehen wieso oder wieso nicht Layers erstellt werden. Momentan schafffe ich es eine Layer auf die Bodenfläche zu legen. Nur beim dem Dimple geht's noch nicht. Da bin ich noch dran die Gegend zu verfeinern. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
pajofego Mitglied
Beiträge: 57 Registriert: 07.02.2006
|
erstellt am: 19. Feb. 2012 21:21 <-- editieren / zitieren --> Unities abgeben:
So, nachdem ich so ziemlich an jedem Parameter gedreht habe, ist mein "bestes" Ergebnis wie in dem Bild dargestellt. Man erkennt, dass am Boden entlang eine 5 lagige Layer gelegt wird, aber sobald es in die Nähe der Kuppel (Dimple) kommt versagt das ganze. In der Mitte ist noch der Ansatz einer Layer zu sehen, wird aber nicht vollkommen durchgeführt. Ich habe schon versucht so fein wie möglich lokal zu verfeinern. Das brachte aber bis jetzt keinen Erfolg. Hat jemand evt. noch ein paar Tipps für mich? Danke und Gruss pajofego 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: 20. Feb. 2012 15:37 <-- editieren / zitieren --> Unities abgeben: Nur für pajofego
|
Shor-ty Moderator
Beiträge: 2463 Registriert: 27.08.2010 OpenFOAM-dev (Foundation) OpenFOAM-xxxx (ESI)
|
erstellt am: 20. Feb. 2012 18:45 <-- editieren / zitieren --> Unities abgeben: Nur für pajofego
Hey ho... hab mal an dem Problem von dir etwas gebastelt. Bin aber da ganz anderst vorgegangen wie du. Meine Lösung ist im Bild zu sehen. Ich werde das nun nochmals mit einer Geometrie versuchen, die du erstellt hast. Grüße Tobi 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: 20. Feb. 2012 19:56 <-- editieren / zitieren --> Unities abgeben: Nur für pajofego
So... ich habe nun die gleiche Vorgehensweise verwendet, die du gewählt hast. Hab allerdings selber ne STL Datei erstellt. Das Resultat kann man am Bild erkennen. Die Layer werden wieder schön erstellt. Grüße Tobi 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: 21. Feb. 2012 18:40 <-- editieren / zitieren --> Unities abgeben: Nur für pajofego
Hey Pajofego, hab deine STL heute mal verwendet. Das Ergebnis ist ähnlich wie deins. Keine Layer werden erzeugt. Zudem hab ich deine STL in Einzelne STL's zersplittet und diese dann eingelesen. Ohne Erfolg. Da konnte ich nicht einmal mehr was sinnvolles vernetzen. Meiner Meinung nach liegt es an deiner STL. Ist das eine ASCII STL? Aber wie du siehst konnte ich eine solche Geometry wie du sie vorliegen hast wunderbar vernetzen. Grüße Tobi und ich hoff ich konnte dir weiterhelfen. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
pajofego Mitglied
Beiträge: 57 Registriert: 07.02.2006
|
erstellt am: 21. Feb. 2012 20:59 <-- editieren / zitieren --> Unities abgeben:
Hi Tobi, danke für deine Hilfe. In der Tat...ich hatte mal einen ähnlichen Fall. Ich habe die STL direkt aus Salome erstellt und da hatte ich keine Probleme mit der Layer. Die jetztige Geometrie habe ich in gmsh erstellt. Dabei vernetze ich diese in 2d und schreibe die physical surfaces einzeln raus. Jetzt wo du wahrscheinlich einen ähnlichen Weg gegangen bist, gehe ich davon aus, dass es 1) an gmsh direkt liegt 2) oder an der Geometrie selbst...ich denke mal bei dir ist deine Kumpel aus einem Kreissegment erstellt worden. Meine ist aus einer Ellipse erstellt worden. Ich werde das mal in salome direkt probieren. Ich melde mich dann sobald ich Neues habe wieder Danke und Gruß pajofego Anbei der gmsh code Code:
cl1 = 0.0003; dx = 10e-3;Point(1) = {0, 0, 0, cl1}; Point(2) = {dx, 0, 0, cl1}; Line(1) = {2, 1}; Extrude {0, 0, 30e-3} {Point{2, 1};} Line(4) = {3, 4}; Point(5) = {5e-3, 0, 7.5e-3, cl1}; Extrude {0, 0, 2.5e-3} { Point{5}; } Translate {0, 1.0e-3, 0} { Duplicata { Point{5}; } } Ellipse(6) = {6, 5, 7, 7}; Extrude {{0, 1, 0}, {5e-3, 0, 7.5e-3}, Pi/2} { Line{6}; } Extrude {{0, 1, 0}, {5e-3, 0, 7.5e-3}, Pi/2} { Line{7}; } Extrude {{0, 1, 0}, {5e-3, 0, 7.5e-3}, Pi/2} { Line{10}; } Extrude {{0, 1, 0}, {5e-3, 0, 7.5e-3}, Pi/2} { Line{13}; } Line Loop(19) = {2, 4, -3, -1}; Line Loop(20) = {11, 14, 17, 8}; Plane Surface(21) = {19, 20}; Extrude {0, -10e-3, 0} { Line{3, 1, 2, 4}; } Line Loop(38) = {26, 22, -34, -30}; Plane Surface(39) = {38}; Physical Surface("Dimple") = {9, 12, 15, 18}; Physical Surface("Boden") = {21}; Physical Surface("Inlet") = {29}; Physical Surface("Outlet") = {37}; Physical Surface("Decke") = {39}; Physical Surface("Symmetry") = {33, 25};
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: 21. Feb. 2012 21:01 <-- editieren / zitieren --> Unities abgeben: Nur für pajofego
|
pajofego Mitglied
Beiträge: 57 Registriert: 07.02.2006
|
erstellt am: 21. Feb. 2012 21:06 <-- editieren / zitieren --> Unities abgeben:
Ich hätte dir gerne ein stp oder igs rausgeschrieben aber gmsh kann nur Netze rausschreiben. Wird dann wohl Zeit, dass ich das Skripten in salome lerne ;-) war der Grund warum ich gmsh benutze. Die Syntax lässt sich sehr leicht lernen... 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: 21. Feb. 2012 21:28 <-- editieren / zitieren --> Unities abgeben: Nur für pajofego
|
pajofego Mitglied
Beiträge: 57 Registriert: 07.02.2006
|
erstellt am: 21. Feb. 2012 21:39 <-- editieren / zitieren --> Unities abgeben:
Grund: Parameterstudie...ich hatte noch keine Möglichkeit gefunden wie dies in der GUI von Salome umgesetzt werden kann ausser über ein Skript. Daher der Schwenk zu gmsh. [Diese Nachricht wurde von pajofego am 21. Feb. 2012 editiert.] 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: 21. Feb. 2012 22:08 <-- editieren / zitieren --> Unities abgeben: Nur für pajofego
Parameterstudie? Muss ich jetz nich verstehen oder? Ob gmsh oder salome wo is da der unterschied, bzw. welche Parameter willst du denn untersuchen? Wenn das Netz sowieso mit sHM erstellt wird kann's ja scho mal keine Strömungsabhängigkeit sein. Meinst du Geometrieparameter, die du mit gmsh dann ganz schnell abändern kannst? Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
pajofego Mitglied
Beiträge: 57 Registriert: 07.02.2006
|
erstellt am: 21. Feb. 2012 22:12 <-- editieren / zitieren --> Unities abgeben:
|
Shor-ty Moderator
Beiträge: 2463 Registriert: 27.08.2010 OpenFOAM-dev (Foundation) OpenFOAM-xxxx (ESI)
|
erstellt am: 21. Feb. 2012 22:53 <-- editieren / zitieren --> Unities abgeben: Nur für pajofego
Hey. Also anscheinend hat sHM nen paar Probleme mit Ellipsoiden. Ich habs grad nochmals versucht. Die Layer die erstellt werden sind nur in der kurzen Achse gut ausgebildet. Allerdings nur dort wie man auf dem Bild erkennen kann. Vllt mal noch n paar Einstellungen verändern. Aber is ne gute Übung Mit den Ecken bin ich aber sehr zufrieden.! 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: 21. Feb. 2012 23:16 <-- editieren / zitieren --> Unities abgeben: Nur für pajofego
|
pajofego Mitglied
Beiträge: 57 Registriert: 07.02.2006
|
erstellt am: 22. Feb. 2012 21:31 <-- editieren / zitieren --> Unities abgeben:
Ist das jetzt aus deiner Sicht ein Geometrieproblem oder hat SHM an sich einen "Bug". Ich meine, dass dieses Beispiel hier nicht wirklich Komplex ist. Wenn das SHM mit der Layer versagt stellt sich für mich die Frage inwiefern SHM für komplexe Geometrien einsetzbar ist?!? Kann man das hier überhaupt an dieser Fragestellung beantworten? Wobei ich hier betonen möchte, dass ich SHM sehr praktisch finde, nur sind mir einige Dinge wieso er dieses Verhalten oder ein anderes an den Tag legt doch etwas suspekt bzw. nur schwer nach zu voll ziehen. Kann aber auch daran liegen, dass ich SHM noch nicht wirklich ausreichend gut beherrsche. 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: 24. Feb. 2012 15:56 <-- editieren / zitieren --> Unities abgeben: Nur für pajofego
Also ich würde nicht sagen das es ein Geometrieproblem oder ein Bug von sHM ist. Eher würd ich behaupten, dass es eine Einstellungssache ist. Aus meiner Sicht stützt sich die CFD sehr oft auf Erfahrungswerte und das hab ich leider noch nicht mit sHM. !!!ABER!!! Ich konnte den Ellipsoid nun doch noch noch vernetzen und das mit Layern. Man musste einfach den Dimple etwas stärker verfeinern. Ich denk es gibt auch noch weitere Möglichkeiten / Layeroptionen mit denen man noch spielen könnte um sein Resultat entsprechend anzupassen. Grüße Tobi
[Diese Nachricht wurde von Shor-ty am 24. Feb. 2012 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
pajofego Mitglied
Beiträge: 57 Registriert: 07.02.2006
|
erstellt am: 03. Mrz. 2012 21:52 <-- editieren / zitieren --> Unities abgeben:
Hi, ich habe erst jetzt gesehen, dass du geschrieben hast. Wäre es möglich den letzten SHM file sowie die Geometrie zur Verfügung zu stellen? Danke und Gruß pajofego P.S.: Ich habe jetzt eine etwas komplexere Geometrie in Salome erstellt. Ich werde versuchen da ebenfalls eine layer zu legen. Bin mal gespannt ob das jetzt klappt. 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: 04. Mrz. 2012 17:58 <-- editieren / zitieren --> Unities abgeben: Nur für pajofego
|