| |
| Xometry verstärkt sein Angebot für die Blechbearbeitung: Mehr Fertigungsoptionen und bessere Sofort-Angebote, eine Pressemitteilung
|
Autor
|
Thema: forceCoeffs und die Berechung (3475 mal gelesen)
|
Burnquist Mitglied
Beiträge: 27 Registriert: 12.12.2011
|
erstellt am: 14. Dez. 2011 19:49 <-- editieren / zitieren --> Unities abgeben:
Hallo, ich lasse Wasser durch zwei ebene, glatte Wände mit Abstand von 1mm fließen. Ich möchte den Druckwiderstandbeiwert anzeigen lassen, doch leider gibt mir simpleFoam immer 0 aus. Potential und SimpleFoam funktionieren einwandfrei. Ich kann beobachten wie sich ein Einlaufprofil zum vollausgebildeten Profil ausbildet. Wenn ich die glatten Oberflächen durch gewellte Ersetze funktioniert es wunderbar. Muss ich nun im glatten Fall an den Strömungs-Richtungen was ändern?
Code: functions { forces { type forces; functionObjectLibs ( "libforces.so" ); outputControl timeStep; outputInterval 1; patches ( ski snow ); // name of fields pName p; UName U; log true; rhoInf 1000; CofR ( 0 0 0 ); } forcesCoeffs { type forceCoeffs; functionObjectLibs ( "libforces.so" ); outputControl timeStep; outputInterval 1; patches ( ski snow ); // name of fields pName p; UName U; log true; rhoInf 1000; CofR ( 0 0 0 ); liftDir ( 0 1 0 );
dragDir ( 1 0 0 ); pitchAxis ( 0 0 1 ); magUInf 1; lRef 0.04; Aref 0.0008; } }
Die Wände hab ich per stl reingeladen und sind somit keine walls, patches. Muss statt snow, ski, der Name der Stl dort stehen?
[Diese Nachricht wurde von Burnquist am 14. Dez. 2011 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: 14. Dez. 2011 22:34 <-- editieren / zitieren --> Unities abgeben: Nur für Burnquist
|
Burnquist Mitglied
Beiträge: 27 Registriert: 12.12.2011
|
erstellt am: 15. Dez. 2011 12:17 <-- editieren / zitieren --> Unities abgeben:
Danke. Noch ein Problem: Meine stl-file heißt: motorBike.stl Wenn ich diese öffne steht an erster Stelle: solid CATIASTL Mein snappyHexMeshDict sieht wie folgt aus: Code: geometry { motorBike.stl { type triSurfaceMesh; name motorBike; }
Code: layers { motorBike.stl { nSurfaceLayers 2; } }
Muss ich im layer-Bereich nun motorBike.stl oder CATIASTL einfügen? Ich sehe nämlich keine layers in ParaView. Laut Boundary heißt dieser Bereich: motorBike_CATIASTL Doch leider verändert sich das Netz nicht wenn ich diesen Name einfüge oder die numbers von 1-3 ändere. Kann es sein dass bei einer glatten Oberfläche üperhaupt keine layers aufgebaut werden? Bei einer Anderen stl mit Erhebungen funktioniert es. [Diese Nachricht wurde von Burnquist am 15. Dez. 2011 editiert.] [Diese Nachricht wurde von Burnquist am 15. Dez. 2011 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. Dez. 2011 14:07 <-- editieren / zitieren --> Unities abgeben: Nur für Burnquist
Wie heißt die Fläche in deiner Boundarydatei? Wenn du den Namen verwendest wirst du zu deinem Ergebnis kommen. Deine motorbike_CATIASTL Benennung müsste richtig sein. Hast du im Header auch die Layergenerierung an? PS: Nein deine Layer können überall generiert werden. Das hat nichts mit der Flächenstruktur zu tun. [Diese Nachricht wurde von Shor-ty am 15. Dez. 2011 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Burnquist Mitglied
Beiträge: 27 Registriert: 12.12.2011
|
erstellt am: 15. Dez. 2011 14:43 <-- editieren / zitieren --> Unities abgeben:
Es werden 2 Layerschichten am Rand generiert. In Richtung Stl-Mitte hört er anscheinend auf. Ich denke es liegt an dem Abstand der Platten von nur 1mm. Ich habe die finalLayerThickness von 0,1 auf 0.00001, geändert. Leider ohne Erfolg. Gibts noch einen Parameter den ich für solch kleine Distanzen verändern muss? [Diese Nachricht wurde von Burnquist am 15. Dez. 2011 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. Dez. 2011 15:51 <-- editieren / zitieren --> Unities abgeben: Nur für Burnquist
|
Burnquist Mitglied
Beiträge: 27 Registriert: 12.12.2011
|
erstellt am: 15. Dez. 2011 16:12 <-- editieren / zitieren --> Unities abgeben:
|
Shor-ty Moderator
Beiträge: 2466 Registriert: 27.08.2010 ESI-OpenCFD OpenFOAM v2312
|
erstellt am: 15. Dez. 2011 16:20 <-- editieren / zitieren --> Unities abgeben: Nur für Burnquist
Passt alles. Liegt definitiv nich an der Einheit mm - warum auch? Deine "angedeuten" Layer an der Außenseite sind wegen dem Snapping, nicht wegen dem Hinzufügen deiner Layer. Es klappt jedenfalls. Vgl. Bild.
Das solltest mal im Auge behalten
Code:
Writing mesh to time 4 Wrote mesh in = 18.6 s. Layers added in = 18.6 s. Finished meshing in = 19.8 s. End
Tobi PS: Wieso umständlich wenns auch einfach geht? BlockMesh - oder noch einfacher Salome! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Shor-ty Moderator
Beiträge: 2466 Registriert: 27.08.2010
|
erstellt am: 15. Dez. 2011 16:22 <-- editieren / zitieren --> Unities abgeben: Nur für Burnquist
Zitat: Original erstellt von Burnquist: Das Rechteck ist 1mm hoch, ja. Ich spiel derzeit an allen Werten im SnappyDict rum; hab jetzt 3 layers hinbekommen und versuche noch ein weiteres Refinementlvl.
perfekt. Gratulation Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Burnquist Mitglied
Beiträge: 27 Registriert: 12.12.2011
|
erstellt am: 15. Dez. 2011 16:36 <-- editieren / zitieren --> Unities abgeben:
Ich soll in meiner BA den Verlgeich blockMesh zu snappy bringen. Auch muss ich später eine komplexe Oberfläche vernetzen, also muss es mit Snappy klappen. Zusätzlich steht eine Netzfeinheitsstudie in Planung. Allerdings komm ich nicht über min-max 2-3 hinaus. Irgendwo versteckt sich noch ein Problem. ------------------- Detected 15217000 illegal faces (concave, zero area or negative cell pyramid volume) Checked initial mesh in = 27.43 s Sollte mich das beunruhigen? CheckMesh sagt am Ende: Mesh ok [Diese Nachricht wurde von Burnquist am 15. Dez. 2011 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. Dez. 2011 19:20 <-- editieren / zitieren --> Unities abgeben: Nur für Burnquist
du kannst dein Netz sukzessive um den Faktor 8 verfeinern (3D) - dafür gibt nen Befehl. Falls du eine Netzunabhängigkeitsstudie machen willst, empfehl ich diese vorgehensweise. Hab ich auch erst gemacht. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Burnquist Mitglied
Beiträge: 27 Registriert: 12.12.2011
|
erstellt am: 16. Dez. 2011 10:54 <-- editieren / zitieren --> Unities abgeben:
Das blockMesh verfeinern oder den Schritt nach snappy? Wenn ich das blockMesh manuell verkleinere kann das snappy keine Layers mehr aufbauen. Das komplette Netz aufbauen dauert auf 1 Processor, 30 mins. (6 Mio Zellen) Das liegt im Rahmen.
[Diese Nachricht wurde von Burnquist am 16. Dez. 2011 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: 16. Dez. 2011 22:37 <-- editieren / zitieren --> Unities abgeben: Nur für Burnquist
Wow 6 Millionen Zellen für diese Untersuchung? Wie groß sind denn deine Geometrien? Du kannst normalerweiße dein Netz mit refineMesh verfeinern. Wenn dein Standardnetz eh scho extrem fein ist, dann brauchst du ja die Grenzschichten gar nich mehr so verfeinern oder? Kontrollierst du auch deinen yPlus-Wert? Zumindest is es in diesem Fall ne gute Option um deine Gültigkeit der Modelle zu bewahren. Wobei OF selbständig switched. Gute Nacht.
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Burnquist Mitglied
Beiträge: 27 Registriert: 12.12.2011
|
erstellt am: 17. Dez. 2011 13:08 <-- editieren / zitieren --> Unities abgeben:
Lediglich 40mm x 10mm x 1mm (l b h). Ich brauch mindestens 10 Zellen in der Höhe, sonst werden keine Wandschichten aufgebaut.Ich hab schon alles versucht das mesh zu verkleinern und die layer zu bilden, ohne Erfolg. Edit: Es sind "nur" 2 Mio Zellen laut logfile. Die 6 Mio sind in paraView angegeben, aber der Wert soll angeblich nicht stimmen. [Diese Nachricht wurde von Burnquist am 17. Dez. 2011 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: 17. Dez. 2011 13:27 <-- editieren / zitieren --> Unities abgeben: Nur für Burnquist
mit CheckMesh kannst du prüfen wie viele Zellen du hast. Da steht das alles sehr genau drin. Für eine solche Simulation würd ich dir echt Salome empfehlen. Nagut aber du meintest ja das du einen Vergleich zwischen blockMesh und sHM machst (warum auch immer).
Diese Tools kann man meiner Meinung nicht direkt vergleichen - wieso auch. BlockMesh ist ein einfaches Tool mit dem man simple Geometrien erstellt. sHM ist ja für komplexe Geometrien da und nicht für ein Rechteck/Quader. Da gibts wesentlich bessere Tools. Ein Vergleich beider müsste für blockMesh sprechen - schneller, simpler, und die Netze sind qualitativ besser, da du kein snapping etc hast. Die Layer kannst ja mit blockMesh sehr gut darstellen oder eben mit Salome. Netzerstellung in Salome, ich tippe mal 5 min Tipp: sollte es mit sHM nich so funktionieren wie du willst, skaliere dein BlockMesh von 40x10x1mm auf 40x10x1 m und lass dann sHM laufen. Nach sHM wieder verkleinern Grüße Tobi Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Burnquist Mitglied
Beiträge: 27 Registriert: 12.12.2011
|
erstellt am: 17. Dez. 2011 13:41 <-- editieren / zitieren --> Unities abgeben:
2 Mio laut checkMesh. Den Vergleich block zu snappy bring ich in zwei Sätzen unter. Das ist keine Studie an sich Mein Ziel ist/war es eine Netzfeinheitsstudie bei 10.000, dann 100.000 und 1.000.000 bis eben der Wert hinreichend mit dem Zielwert überreinstimmt. In dieser Studie wollte ich alles mit Wandschichten durchführen. Wobei mir dies erst ab 1 Mio gelingt. (Wegen den min. 10 Zellen in der Höhe) Hab mich vllt etwas schlecht ausgedrückt. Den Tip werd ich gleich ausprobieren. Danke Noch eine Frage: Ich nutze das snappyDict aus dem motorBike Tut
Code: layers { motorBike_CATIASTL { nSurfaceLayers 8; } } // Expansion factor for layer mesh expansionRatio 1.3;//1.3 //- Wanted thickness of final added cell layer. If multiple layers // is the thickness of the layer furthest away from the wall. // See relativeSizes parameter. finalLayerThickness 0.3;//0.3 //- 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.1; //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;
Wäre es in meinem "Mini-Gebiet" sinnvoll an diesen Zahlen rumzuschrauben? Die OF Anleitung hat mir da nicht viel geholfen. Sind diese Zahlen Längen (m) oder Prozentangaben? [Diese Nachricht wurde von Burnquist am 17. Dez. 2011 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: 17. Dez. 2011 14:06 <-- editieren / zitieren --> Unities abgeben: Nur für Burnquist
zu deiner Netzfeinheitsstudie (Netzunabhänigkeitsstudie - weiß nich ob du das meinst) würde ich dir empfehlen ein blockMesh Netz zu erstellen. und dann die Knotenanzahl immer zu verdoppelt. Da gibts nen Tool für. Hast also wenn du 3D rechnest immer um den Faktor 8 mehr Zellen. Mit Snappy. Kann dir leider nicht sagen ob Meter oder Prozentual. Müsstest halt mal an nem simplen Beispiel testen (würd mich auch interessieren). Und ja "try and error". Ich kenn bspw. schon 20 initialisierungen die nicht funktionieren (in meinem verdampfungscase) Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |