Autor
|
Thema: 6dof Rotation rein strömungsinduziert (1734 / mal gelesen)
|
cfdtobi Mitglied Student
Beiträge: 67 Registriert: 16.07.2015
|
erstellt am: 15. Sep. 2016 09:36 <-- editieren / zitieren --> Unities abgeben:
Morgen Zusammen, ich versuche aktuell eine Propellerrotation rein über die Strömung eingeleitet zu simulieren. 6dof sollte das ja können, allerdings scheitere ich an den richtigen Einstellungen meiner constraints zur Erzeugung der reinen Rotationsbewegung. Case-Setup ist recht simpel gestaltet im Moment. Rohrströmung mit Propeller, unten Inlet oben outlet und die Strömung verläuft in positiver z-Richtung. Hat jemand Erfahrung mit so einem Case und kann mir hier eventuell die passenden Stichpunkte nennen? Es sollen alle Bewegungen blockiert sein, außer der Rotation um die Z-Achse durch den Schwerpunkt des Rotors. Umgekehrtes Setup, also Rotationsbewegung über eine solidBodyMotion funktioniert einwandfrei - AMI-Grenzflächen passen daher und die BC sollten auch hinhauen. Vielen Dank im Voraus und viele 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: 15. Sep. 2016 11:12 <-- editieren / zitieren --> Unities abgeben: Nur für cfdtobi
Hey Tobi, ja das funktioniert auch wenn ich der Meinung bin, dass 6DOF nicht die optimalste Lib dazu ist, da recht komplex. Ich hab das einmal gemacht, allerdings hab ich alles schon wieder vergessen ... das Tutorial hab ich auch nicht gespeichert. Somit kann ich dir nur mitteilen - ja es geht. ------------------ Viele Grüße, Tobias Holzmann Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
cfdtobi Mitglied Student
Beiträge: 67 Registriert: 16.07.2015
|
erstellt am: 15. Sep. 2016 11:19 <-- editieren / zitieren --> Unities abgeben:
Danke für die Rückmeldung. 6DOF macht nur begrenzt Spaß...Doku recht mau und passende Tutorials habe ich bisher keine gefunden... Bin nebenbei am Testen und eventuell habe ich gerade das passende Setup gefunden. Falls das tut, geb ich Bescheid.
[Diese Nachricht wurde von cfdtobi am 15. Sep. 2016 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
cfdtobi Mitglied Student
Beiträge: 67 Registriert: 16.07.2015
|
erstellt am: 21. Sep. 2016 13:06 <-- editieren / zitieren --> Unities abgeben:
Der Vollständigkeit halber: Zur Abbildung einer Rotation um die Z-Achse funktionert für mich folgender Ansatz ganz gut: Code:
dynamicFvMesh dynamicMotionSolverFvMesh;motionSolverLibs ("libsixDoFRigidBodyMotion.so"); solver sixDoFRigidBodyMotion; sixDoFRigidBodyMotionCoeffs { patches (movingWalls); innerDistance 0.3; outerDistance 1; mass 0.001; centreOfMass (0 0 0.058); momentOfInertia (1 1 1); orientation ( 1 0 0 0 1 0 0 0 1 ); velocity (0 0 0) angularMomentum (0 0 0); g (0 0 0); rhoName rhoInf; rhoInf 1000; report on; accelerationRelaxation 0.3; value uniform (0 0 0); constraints { zAxis { sixDoFRigidBodyMotionConstraint axis; axis (0 0 1); } fixedPt { sixDoFRigidBodyMotionConstraint point; point (0 0 0.0515); } } restraints { translationDamper { sixDoFRigidBodyMotionRestraint linearDamper; coeff 0.001; } } }
Muss nicht die ultimative Lösung sein, tut aber so ganz schön. Grüße Tobi [Diese Nachricht wurde von cfdtobi am 21. Sep. 2016 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. Sep. 2016 14:01 <-- editieren / zitieren --> Unities abgeben: Nur für cfdtobi
Danke für die Info Tobi. Kurzum, deine Bewegung des Körpers erfolgt aufgrund der Strömung ? Wie ist dein Zeitschritt und wäre da ein Testcase möglich? ------------------ Viele Grüße, Tobias Holzmann Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
cfdtobi Mitglied Student
Beiträge: 67 Registriert: 16.07.2015
|
erstellt am: 21. Sep. 2016 16:40 <-- editieren / zitieren --> Unities abgeben:
Genau, die Bewegung erfolgt rein durch die Strömung. Habe bei mir zu Testzwecken die ersten Zeitschritte auf meinem Rechner ausgerechnet. Zeitschritte liegen um 2 e-05 und rechnen auf einem Kern recht langsam. Daher läuft über Nacht das ganze mal parallel. Testcase kann ich gerne zu Verfügung stellen, wenn denn die Ergebnisse passen ;-) Morgen weiß ich mehr... Grüße 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: 22. Sep. 2016 09:34 <-- editieren / zitieren --> Unities abgeben: Nur für cfdtobi
- Was für einen Case hast du? 2D oder 3D?
- Welche Dimension hat deine deine kleinste Zelle
- Wie sind die Geschwindigkeiten
Ich frage deshalb, weil 1e-5 schon recht klein ist. Allgemein würde mich noch interessieren wie das gemacht wird. Brauchst du da eine AMI interface, sodass sich da was drehen kann? Möglicherweise ist es auch viel einfacher und besser eine eigene Lib zu erstellen, eine AMI zu generieren und die Druckkräfte auf die Oberflächen zu berechnen und entsprechend die Momente. ------------------ Viele Grüße, Tobias Holzmann Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
cfdtobi Mitglied Student
Beiträge: 67 Registriert: 16.07.2015
|
erstellt am: 22. Sep. 2016 13:20 <-- editieren / zitieren --> Unities abgeben:
Habe einen 3D-Case mit ca 800000 Zellen. Kleinstes Zellvolumen um 2e-11 (also recht klein) InletStrömung mit 5m/s Für die Rotationsbewegung habe ich wie bei aktiven Rotationsbewegungen das AMI-Interface definiert. Danach dann die Freiheitsgrade im dynamicMeshDict und jetzt dreht sich was. Denke das Netz lässt sich hier noch deutlich optimieren und so das ganze auch noch beschleunigen. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
cfdtobi Mitglied Student
Beiträge: 67 Registriert: 16.07.2015
|
erstellt am: 21. Okt. 2016 14:45 <-- editieren / zitieren --> Unities abgeben:
|
Shor-ty Moderator
Beiträge: 2463 Registriert: 27.08.2010 OpenFOAM-dev (Foundation) OpenFOAM-xxxx (ESI)
|
erstellt am: 21. Okt. 2016 14:57 <-- editieren / zitieren --> Unities abgeben: Nur für cfdtobi
Gratuliere! Wäre es möglich wenn du die Einträge in der dynamicDict etwas erklärst? Soweit ich das gerade sehe, benötigt man die Angabe von AngularVelo etc. nicht ... Auch dein rhoInf wird nicht explizit nachgefrage wenn man es auskommentiert. Interessant wäre auch zu wissen was du mit deinem pointDisplacement angestellt hast... wobei du ja kein ACMI verwendest ... hmmm ------------------ Viele Grüße, Tobias Holzmann
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
cfdtobi Mitglied Student
Beiträge: 67 Registriert: 16.07.2015
|
erstellt am: 24. Okt. 2016 08:24 <-- editieren / zitieren --> Unities abgeben:
|
Shor-ty Moderator
Beiträge: 2463 Registriert: 27.08.2010 OpenFOAM-dev (Foundation) OpenFOAM-xxxx (ESI)
|
erstellt am: 26. Okt. 2016 12:06 <-- editieren / zitieren --> Unities abgeben: Nur für cfdtobi
Ein Tutorial muss es für mich gar nicht sein, mich würde eher deine eigene Interpretation diverser Einstellungen interessieren. Bspw. wieso du den linearDamper nimmst und nicht den sphericalAngularDamper oder was der lineare überhaupt bewirkt, dann die ganzen Einstellungen wie (orientation etc....). Da du dich damit schon beschäftigt hast, denke ich, dass du da auch fit bist. ------------------ Viele Grüße, Tobias Holzmann Diverse OpenFOAM Tutorials gibt es auf www.Holzmann-cfd.de Veröffentlichungen und ein Buch gibt es auf www.Holzmann-cfd.de Für Anfänger empfiehlt es sich die neue OpenFOAM Wiki Seite zu betrachten: wiki.openfoam.com Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |