|
[Sponsors] |
June 9, 2020, 05:39 |
Flow-induced rotation: unexpected behaviour
|
#1 |
Member
Piotr Ładyński
Join Date: Apr 2017
Posts: 55
Rep Power: 9 |
Hello,
I'm looking for a way of simulating a small flow indicator/flow meter with a rotating part [Picture]. I tried 6DoF rigid body motion library and pimpleFoam (OpenFoam 7), and I based my attempts on [link - VAWT] and [link - Kaplan]. I controlled my residuals in an inner and in an outer loop, and the solver converges in each step, until it reaches certain angular velocity at which it suddenly crashes. This instability and discontinuities build up only within this single timestep. The results saved up this point show some strange behaviour (at least strange to me): angular velocity develops smoothly in the direction oposite to the expected one: *.ogv clips from my Google Drive: [Animation1-velocity] [Animation2-pressure]. The rotating part is very light (~2.3 grams), and of small moment of inertia, so the acceleration might be a bit high in this case. I've also prepared some variations with different rotation axis offsets, but the flow around the turbine seems to be preffered. I know some inaccuracies can come from 2d simplification, but I wanted to prepare a single proof-of-concept case for further investigations (and to convince my co-worker to a certain design idea ). Can I do something to make my sim reach to an approximately steady angular velocity? What is the reason behind this flow pattern, is this physical? ~BCs: walls - noSlip, except for turbine, which is movingWallVelocity, wall functions for turbulence inlet - fixed velocity profile (groovyBC or uniform) outlet - inletOutlet top and bottom - empty AMI1 and AMI2 - cyclicAMI, except for pointDisplacement field pointDisplacement field: fixed for walls, inlet,outlet and master AMI patch calculated for turbine wall and for AMI slave (there is cyclicAMI type for AMI patches in VAWT example, which didn't work in my case, I used BCs from Kaplan turbine example) dynamicMeshDict: Code:
/*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | | \\ / O peration | Version: 7.x | | \\ / A nd | Web: www.OpenFOAM.org | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ FoamFile { version 2.0; format ascii; class dictionary; location "constant"; object dynamicMeshDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // dynamicFvMesh dynamicMotionSolverFvMesh; motionSolverLibs ("libsixDoFRigidBodyMotion.so"); solver sixDoFRigidBodyMotion; sixDoFRigidBodyMotionCoeffs { patches (turbine); innerDistance 0.0034; outerDistance 0.011; rho rhoInf; rhoInf 999.056; mass 0.002247054; momentOfInertia (6.7288E-8 6.7288E-8 4.6323E-8); centreOfMass (0 0 0.0093); orientation ( 1 0 0 0 1 0 0 0 1 ); velocity (0 0 0); acceleration (0 0 0); angularMomentum (0 0 0); torque (0 0 0); report on; accelerationRelaxation 0.8; solver { type Newmark; } constraints { zAxis { sixDoFRigidBodyMotionConstraint axis; axis (0 0 1); } fixedPt { sixDoFRigidBodyMotionConstraint point; point (0 0 0.0025); } } restraints { // none } } // ************************************************************************* // Whole case setup from my Google Drive: [my case setup] [shifted inlet setup] |
|
June 9, 2020, 22:39 |
|
#2 |
Member
Ardalan
Join Date: Jul 2012
Location: Atlanta, USA
Posts: 77
Rep Power: 13 |
If it start working and crashes after some time steps, the problem is your mesh quality and resolution refinement.
Make the mesh better and refine it. see this for example https://www.sciencedirect.com/scienc...42727X16307603 |
|
June 10, 2020, 09:02 |
|
#3 |
Member
Piotr Ładyński
Join Date: Apr 2017
Posts: 55
Rep Power: 9 |
Thank you for your response, I tried your suggestion, but it didn't solve my problem. The mesh I used earlier didn't have any flaws in terms of checkMesh -allGeometry -allTopology criteria, so I also tried more refined mesh. It crashed a bit faster, but this time on turbulence parameters, so I added some turbulent kinetic energy residual control and it acted more stable, unfortunately it crashed later after simulating ~0.5s).
This time some new unexpected behaviour was observed: rotating part swings back-and-forth and doesn't try to make any full rotations. Animations saved on Google Drive: [smaller velocity][increased velocity] What's wrong? |
|
June 10, 2020, 12:00 |
|
#4 |
Member
Ardalan
Join Date: Jul 2012
Location: Atlanta, USA
Posts: 77
Rep Power: 13 |
are you using AMI with pimpleFoam?
|
|
June 11, 2020, 02:24 |
|
#5 |
Member
Piotr Ładyński
Join Date: Apr 2017
Posts: 55
Rep Power: 9 |
Yes, I use pimpleFoam with AMI and sixDoFRigidBodyMotion, as in the training cases from the links provided.
(OpenFOAM-7) |
|
June 11, 2020, 12:52 |
|
#6 |
Senior Member
Jan
Join Date: Jul 2009
Location: Hamburg
Posts: 137
Rep Power: 19 |
Maybe the instabilities come from the coupling. You can try decrease the acceleration relaxation, something like 0.4 and also relax the pressure
|
|
June 11, 2020, 17:17 |
|
#7 |
Member
Ardalan
Join Date: Jul 2012
Location: Atlanta, USA
Posts: 77
Rep Power: 13 |
I assume that you under relaxe *Final values in fvSolution too.
In this case decrease your time step and refine your mesh. It will work. |
|
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
OpenFOAM - Problem on double gears flow induced rotation | foamF | OpenFOAM | 11 | June 17, 2019 21:40 |
Unexpected results for 2D cylinder flow | ddvdc | SU2 | 1 | March 10, 2019 21:12 |
About Some Concepts:Laminar flow, turbulent flow, steady flow and time-dependent flow | Jing | Main CFD Forum | 8 | October 5, 2018 17:02 |
how to discriminate between shear flow and flow with coherent rotation? | huangxianbei | Main CFD Forum | 10 | October 30, 2014 19:35 |
3D Fan:Calculation of induced flow rate by fan rotation at free delivery | Catthan | FLUENT | 3 | November 6, 2013 05:19 |