| |
 | Online-Kurs: Grundlagen des 3D-Druck-Designs für Industrieingenieure , ein Kurs
|
Autor
|
Thema: CellZone/FaceZone SnappyHexMesh (1975 / mal gelesen)
|
Studentenmensch Mitglied Student

 Beiträge: 47 Registriert: 12.05.2016
|
erstellt am: 07. Jul. 2016 15:10 <-- editieren / zitieren --> Unities abgeben:         
Guten Morgen, ich habe mittels SnappyHexMesh versucht, mehrere Cellzones (für ein poröses Medium) und FaceZones zu erstellen. In meiner log-File erhalte ich: Code: Introducing zones for interfaces --------------------------------Surface : HWTDurchstroemterBereich faceZone : HWTDurchstroemterBereichFaceZone cellZone : HWTDurchstroemterBereichCellZone Surface : VerdampferDurchstroemterBereich faceZone : VerdampferDurchstroemterBereichFaceZone cellZone : VerdampferDurchstroemterBereichCellZone Surface : porous_FeRi faceZone : porous_FeRi cellZone : porous_FeRi Surface : porous_Fond_central faceZone : porous_Fond_central cellZone : porous_Fond_central Surface : porous_Fond_FeLe faceZone : porous_Fond_FeLe cellZone : porous_Fond_FeLe Surface : porous_Fond_FeRi faceZone : porous_Fond_FeRi cellZone : porous_Fond_FeRi Surface : porous_FaLe faceZone : porous_FaLe cellZone : porous_FaLe Surface : porous_FaRi faceZone : porous_FaRi cellZone : porous_FaRi Surface : porous_FeLe faceZone : porous_FeLe cellZone : porous_FeLe Surface : porous_FaCeRi faceZone : porous_FaCeRi cellZone : porous_FaCeRi Surface : porous_FaCeLe faceZone : porous_FaCeLe cellZone : porous_FaCeLe Surface : porous_defrost faceZone : porous_defrost cellZone : porous_defrost Found 12 closed, named surfaces. Assigning cells in/outside these surfaces to the corresponding cellZone. Walking from location-in-mesh (470 -47 530) to assign cellZones - crossing a faceZone face changes cellZone Found point (470 -47 530) in global region 0 out of 174 regions. CellZones: HWTDurchstroemterBereichCellZone size:10466109 VerdampferDurchstroemterBereichCellZone size:0 porous_FeRi size:0 porous_Fond_central size:221874 porous_Fond_FeLe size:0 porous_Fond_FeRi size:0 porous_FaLe size:0 porous_FaRi size:0 porous_FeLe size:0 porous_FaCeRi size:0 porous_FaCeLe size:0 porous_defrost size:0 FaceZones: HWTDurchstroemterBereichFaceZone size:54912 VerdampferDurchstroemterBereichFaceZone size:80041 porous_FeRi size:16380 porous_Fond_central size:17082 porous_Fond_FeLe size:11220 porous_Fond_FeRi size:11160 porous_FaLe size:17648 porous_FaRi size:17596 porous_FeLe size:16396 porous_FaCeRi size:11355 porous_FaCeLe size:8340 porous_defrost size:28292 Edge intersection testing: Number of edges : 34450278 Number of edges to retest : 0 Number of intersected edges : 2828002
Frage mich nun, wieso manche , bzw. lediglich 2 CellZones erstellt werden, die anderen jedoch nicht? Gibt es dafür iiiiirgendeine Erklärung? In meinen Ordnern im polymesh sind unter CellZones zwar alle gelistet, gefüllt jedoch nur die erfolgreich gefundenen. OpenFOAM Du machst mich noch verrückt  ------------------ Moritz Franke 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: 08. Jul. 2016 00:22 <-- editieren / zitieren --> Unities abgeben:          Nur für Studentenmensch
Wenn in constant/polyMesh/cellZones die Einträge sind und mehr als 0 Zellen enthalten sind, dnan hast du alle CellZones mit einer bestimmmten Anzahl an Zellen (: Wie kommst du darauf das nur 2 Zonene erstellt werden? ------------------ Viele Grüße, Tobias Holzmann Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Studentenmensch Mitglied Student

 Beiträge: 47 Registriert: 12.05.2016
|
erstellt am: 11. Jul. 2016 13:31 <-- editieren / zitieren --> Unities abgeben:         
Code: CellZones: HWTDurchstroemterBereichCellZone size:10466109 VerdampferDurchstroemterBereichCellZone size:0 porous_FeRi size:0 porous_Fond_central size:221874 porous_Fond_FeLe size:0 porous_Fond_FeRi size:0 porous_FaLe size:0 porous_FaRi size:0 porous_FeLe size:0 porous_FaCeRi size:0 porous_FaCeLe size:0 porous_defrost size:0
Size 0 bedeutet ja, dass keine CellZone erstellt wurde. Unter constant polymesh cellzones heißt es dann z.B. porous_FaCeLe { type CellZone; cellLabels 0;} Kann mir das absolut nicht erklären da es sich überall um wasserdichte .stl's handelt, die alle auf die selbe Weise mit snappyHexMesh eingelesen wurden :-/ ------------------ Moritz Franke 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: 11. Jul. 2016 14:09 <-- editieren / zitieren --> Unities abgeben:          Nur für Studentenmensch
Oh war wohl schon etwas spät an dem Freitag-Abend. Du hast natürlich recht. Kann es sein das eine Zellzone andere Überdeckt? Kann mir natürlich kein Bild machen wo die Zonen liegen (geometrisch gesehen). ------------------ Viele Grüße, Tobias Holzmann Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Studentenmensch Mitglied Student

 Beiträge: 47 Registriert: 12.05.2016
|
erstellt am: 11. Jul. 2016 16:21 <-- editieren / zitieren --> Unities abgeben:         
Vielleicht hat es irgendetwas hiermit zu tun Abschnitt: snappyHexMesh: location(s) in mesh http://www.openfoam.com/version-v3.0+/meshing.php Merkwürdigerweise wird das poröse Medium in Kanal 1 erkannt, das poröse Medium direkt im Nachbarkanal jedoch nicht. Im snappyLog lese ich immer wieder etwas von "regions" -- > diese werden wohl durchlaufen ausgehend von meinem Punkt "locationInMesh". Wären diese aber nicht verbunden miteinander, so würde ja meine Geometrie nicht richtig angzeigt werden. Die ist aber korrekt gesnappt (optisch zumindest) und waterproofed. Eine Durchdringung der Geometrie erfolgt nicht. Wahrscheinlich kann Dir nur meine Geometrie weiterhelfen um das Problem zu lösen? ------------------ Moritz Franke [Diese Nachricht wurde von Studentenmensch am 11. Jul. 2016 editiert.] 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: 11. Jul. 2016 22:00 <-- editieren / zitieren --> Unities abgeben:          Nur für Studentenmensch
Ich weiß auch nicht alles (: Bspw. hab ich das von dir genannte Vorhaben noch nicht selber gemacht. Müsste also auch erstmal testen. Das locationInMesh kannst du ja mal austesten. Allerdings - soweit ich weiß - ist das nur für nicht zusammenhängende Geometrien. ------------------ Viele Grüße, Tobias Holzmann Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Studentenmensch Mitglied Student

 Beiträge: 47 Registriert: 12.05.2016
|
erstellt am: 12. Jul. 2016 16:18 <-- editieren / zitieren --> Unities abgeben:         
Zitat: Ich weiß auch nicht alles (:
Fast alles ;) Ich versuche das ganze nun über topoSetDict zu umgehen. Dort möchte ich FaceZones und CellZones erstellen. Code:
FoamFile { version 2.0; format ascii; class dictionary; object topoSetDict; }// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // actions ( { name heatercellSet; type cellSet; action new; source surfaceToCell; sourceInfo { file "$FOAM_CASE/constant/triSurface/HWTDurchstroemterBereich.stl"; useSurfaceOrientation false; // use closed surface inside/outside // test (ignores includeCut,// outsidePoints) outsidePoints ((287 344 450) (470 -47 530)); // definition of outside includeCut true; // cells cut by surface includeInside true; // cells not on outside of surf includeOutside false; // cells on outside of surf nearDistance -1; // cells with centre near surf // (set to -1 if not used) curvature -100; // cells within nearDistance // and near surf curvature // (set to -100 if not used) } } { name heaterfaceSet; type faceSet; action new; source cellToFace; sourceInfo { set heatercellSet; option all; } } { name heaterfaceZoneSet; type faceZoneSet; action new; source setToFaceZone; // falls kein flip map problem -- > Zeile wichtig //source setAndNormalToFaceZone; // falls kein flip map problem -- > Zeile loeschen sourceInfo { faceSet heaterfaceSet; // name of cellSet normal (1 0 0); // falls kein flip map problem -- > Zeile loeschen } } );
Der erste Schritt klappt ganz gut, ich kann mir das cellSet "heatercellSet" in paraView mittels foamToVTK anzeigen lassen. Das sieht ganz gut aus. Von diesem cellSet , der einen Quader darstellt, möchte ich nun aber nur die vordere Eintrittsfläche als faceZone erhalten. Letztlich benötige ich eine faceZone und eine CellZone für mein weiteres vorgehen. Habt Ihr Ideen wie ich das lösen kann? Grüße moritz
------------------ Moritz Franke 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: 12. Jul. 2016 21:21 <-- editieren / zitieren --> Unities abgeben:          Nur für Studentenmensch
|
Studentenmensch Mitglied Student

 Beiträge: 47 Registriert: 12.05.2016
|
erstellt am: 13. Jul. 2016 14:20 <-- editieren / zitieren --> Unities abgeben:         
So ähnlich habe ich es auch. Ich werde mal deine Änderungen bei mir implementieren und schaun ob es dadurch funktioniert. Sonst hakt es wohl mit der Geometrie :-/ ------------------ Moritz Franke Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Studentenmensch Mitglied Student

 Beiträge: 47 Registriert: 12.05.2016
|
erstellt am: 14. Jul. 2016 13:46 <-- editieren / zitieren --> Unities abgeben:         
Hat leider nicht geklappt, trotz deinem Tutorial. Ich denke dann wird es irgendwas mit der Geometrie auf sich haben :-( die ist eben sehr komplexxx :-/ Danke trotzdem, der Nachwelt hilfts bestimmt ------------------ Moritz Franke [Diese Nachricht wurde von Studentenmensch am 14. Jul. 2016 editiert.] 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: 15. Jul. 2016 13:21 <-- editieren / zitieren --> Unities abgeben:          Nur für Studentenmensch
|