|
[Sponsors] |
Drag force coefficient too high for a flow past a cylinder using komega sst |
|
LinkBack | Thread Tools | Search this Thread | Display Modes |
September 23, 2014, 09:19 |
Drag force coefficient too high for a flow past a cylinder using komega sst
|
#1 |
Member
Join Date: Dec 2013
Location: Newcastle
Posts: 54
Rep Power: 13 |
Hi guys,
I am just start working with Openfoam simulating a 2D flow past a cylinder at Re=1e04, using komega-sst. But after several simulation my drag force coefficient is too high, it should be around 1.2, but I got 1.65 Here is my setting cylinder diameter: 1m flow velocity:1m/s kinematic viscosity:1e-04 Re=1e04 y+ max=1.3 y+ min=0.03 y+average=0.6 Max aspect ratio=15.45 non-orthogonality max=40.76 average=12 lRef 1 (The diameter of the cylinder) Aref 3.14 (the front area, my cylinder height is 3.14) timestep 0.0005s simulation time 200s my k inlet is calculated as 1.5(UI)^2 U is the flow velocity. I is the turbulence intensity=2% my omega inlet is calculated as kinlet^0.5/(l*Cmu^0.25) Cmu=0.09 l is the tubulence length l=0.07D=0.07 and my initial omega at wall is calculated as omega=10*6v/(beta*deltay^2) v is the kinematic viscosity beta=0.075 deltay is the first boundary layer thickness=0.0015 The flow inlet boundary is located 10D upstream from the centre of the cylinder and the flow outlet boundary is located 25D downstream from the center of the cylinder. The top and bottom boundaries are located at a distance of 10D from the center of the cylinder. K Code:
/*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | | \\ / O peration | Version: 2.3.x | | \\ / A nd | Web: www.OpenFOAM.org | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ FoamFile { version 2.0; format ascii; class volScalarField; location "0"; object k; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // dimensions [0 2 -2 0 0 0 0]; internalField uniform 0.0006; boundaryField { INLET { type fixedValue; value uniform 0.0006; } OUTLET { type zeroGradient; } CYLINDER { type kqRWallFunction; value uniform 0; } SYM1 { type symmetry; } SYM2 { type symmetry; } BACK { type empty; } FRONT { type empty; } } // ************************************************************************* // Code:
/*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | | \\ / O peration | Version: 2.3.x | | \\ / A nd | Web: www.OpenFOAM.org | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ FoamFile { version 2.0; format ascii; class volScalarField; location "0"; object omega; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // dimensions [0 0 -1 0 0 0 0]; internalField uniform 0.6388; boundaryField { INLET { type fixedValue; value uniform 0.6388; } OUTLET { type zeroGradient; } CYLINDER { type omegaWallFunction; value uniform 35555.56; } SYM1 { type symmetry; } SYM2 { type symmetry; } BACK { type empty; } FRONT { type empty; } } // ************************************************************************* // Code:
/*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | | \\ / O peration | Version: 2.3.x | | \\ / A nd | Web: www.OpenFOAM.org | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ FoamFile { version 2.0; format ascii; class volScalarField; location "0"; object nut; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // dimensions [0 2 -1 0 0 0 0]; internalField uniform 0.0; boundaryField { INLET { type calculated; value uniform 0; } OUTLET { type calculated; value uniform 0; } CYLINDER { type nutUSpaldingWallFunction; value uniform 0; } SYM1 { type symmetry; } SYM2 { type symmetry; } BACK { type empty; } FRONT { type empty; } } // ************************************************************************* // Code:
/*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | | \\ / O peration | Version: 2.3.x | | \\ / A nd | Web: http://www.OpenFOAM.org | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ FoamFile { version 2.0; format ascii; class volScalarField; object p; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // dimensions [0 2 -2 0 0 0 0]; internalField uniform 0; boundaryField { CYLINDER { type zeroGradient; } SYM1 { type symmetry; } SYM2 { type symmetry; } BACK { type empty; } FRONT { type empty; } OUTLET { type fixedValue; value uniform 0; } INLET { type zeroGradient; } } // ************************************************************************* // Code:
/*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | | \\ / O peration | Version: 2.3.x | | \\ / A nd | Web: http://www.OpenFOAM.org | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ FoamFile { version 2.0; format ascii; class volVectorField; object U; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // dimensions [0 1 -1 0 0 0 0]; internalField uniform (1 0 0); boundaryField { SYM1 { type symmetry; } SYM2 { type symmetry; } BACK { type empty; } FRONT { type empty; } CYLINDER { type fixedValue; value uniform (0 0 0); } OUTLET { type zeroGradient; } INLET { type fixedValue; value uniform (1 0 0); } } // ************************************************************************* // Code:
/*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | | \\ / O peration | Version: 2.3.x | | \\ / A nd | Web: www.OpenFOAM.org | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ FoamFile { version 2.0; format ascii; class dictionary; location "system"; object fvSchemes; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // ddtSchemes { default CrankNicolson 0.5; } gradSchemes { default Gauss linear; grad(p) Gauss linear; grad(U) Gauss linear; } divSchemes { default none; div(phi,U) Gauss limitedLinearV 1; div((nuEff*dev(T(grad(U))))) Gauss linear; div(phi,k) Gauss limitedLinear 1; div(phi,omega) Gauss limitedLinear 1; } laplacianSchemes { default none; laplacian(nuEff,U) Gauss linear corrected; laplacian((1|A(U)),p) Gauss linear corrected; laplacian(DkEff,k) Gauss linear corrected; laplacian(DomegaEff,omega) Gauss linear corrected; laplacian(DkEff,k) Gauss linear corrected; } laplacianSchemes { default Gauss linear corrected; } interpolationSchemes { default linear; interpolate(U) linear; } snGradSchemes { default corrected; } fluxRequired { default no; p; } // ************************************************************************* // Code:
/*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | | \\ / O peration | Version: 2.3.x | | \\ / A nd | Web: www.OpenFOAM.org | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ FoamFile { version 2.0; format ascii; class dictionary; location "system"; object fvSolution; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // solvers { p { solver PCG; preconditioner DIC; tolerance 1e-06; relTol 1e-02; } pFinal { solver PCG; preconditioner DIC; tolerance 1e-06; relTol 0; } U { solver PBiCG; preconditioner DILU; tolerance 1e-05; relTol 0; } nuTilda { solver PBiCG; preconditioner DILU; tolerance 1e-06; relTol 0; } UFinal { solver PBiCG; preconditioner DILU; tolerance 1e-05; relTol 0; } omega { solver PBiCG; preconditioner DILU; tolerance 1e-08; relTol 0; } omegaFinal { solver PBiCG; preconditioner DILU; tolerance 1e-08; relTol 0; } k { solver PBiCG; preconditioner DILU; tolerance 1e-08; relTol 0; } kFinal { solver PBiCG; preconditioner DILU; tolerance 1e-08; relTol 0; } } PIMPLE { nOuterCorrectors 1; nCorrectors 2; nNonOrthogonalCorrectors 1; residualControl { "(U|p)" { tolerance 1e-04; relTol 0; } } } // ************************************************************************* // and I have try 30,000 and 60,000 elements mesh, both of them get the result Cd around 1.65. my 30,000mesh is in attacehd Also I have try the k at wall is CYLINDER { type kqRWallFunction; value uniform 1e-2; } the drag coefficient still around 1.6 Could anyone give me some recommendations how to solve this problem? I saw somebody post this question before. However there is no solution for the problem Thank you all of you. Best regards, Scabbard |
|
September 24, 2014, 07:57 |
|
#2 |
Member
Join Date: Dec 2013
Location: Newcastle
Posts: 54
Rep Power: 13 |
Hi guys,
Could anyone give some recommendations about this problem? I am really sick with this problem. Thank you for your help. Best regards, Scabbard |
|
September 24, 2014, 10:02 |
|
#3 |
Senior Member
joegi
Join Date: Nov 2009
Location: genoa
Posts: 104
Rep Power: 17 |
I will put my two cents.
If you are reporting correctly the y+, you shouldn't use wall functions. Set k and omega to fixedValue and use a small number (1e-8) or 0. In my personal experience, using the k-o for these values of y+ if quite difficult to get good results, you better use a lowRe model. You can try the spalart-allmaras as well. You can also tight the tolerance of U and UFinal to 1e-8, it doesn't cost anything. jg |
|
September 24, 2014, 10:54 |
|
#4 | |
Member
Join Date: Dec 2013
Location: Newcastle
Posts: 54
Rep Power: 13 |
Quote:
Thank you for your kindly help. I will have try with your recommendation. Best regards, Scabbard |
||
September 26, 2014, 13:36 |
|
#5 |
New Member
Saravana Kumar Lakshmanan
Join Date: Feb 2013
Posts: 11
Rep Power: 13 |
Hi Scabbard,
I am also having similar problem.My Re is 45000 almost all the settings are similar to you. I got good drag value but shedding frequency is very high. What about your case? are you getting correct shedding frequency. |
|
September 26, 2014, 15:16 |
|
#6 | |
Member
Join Date: Dec 2013
Location: Newcastle
Posts: 54
Rep Power: 13 |
Quote:
My shedding frequency is better than the drag coefficient. Tomorrow i will post on my case. I am really sick with this problem. Could you upload your case on the forum? Many thx with your help Best wishes, Scabbard |
||
September 27, 2014, 07:28 |
|
#7 |
Member
Join Date: Dec 2013
Location: Newcastle
Posts: 54
Rep Power: 13 |
Dear Foamers,
I am really sick with this problem, I tried both Spalart-Allmaras and k omega-sst, both of them the drag coefficient are too high. Could anyone give me some recommendation about how to solve this? Thank you so much. The two cases are in the link, k omega sst https://drive.google.com/file/d/0B1v...it?usp=sharing Spalart-Allmaras https://drive.google.com/file/d/0B1v...it?usp=sharing Best regards, Scabbard |
|
September 27, 2014, 10:18 |
|
#8 |
New Member
Saravana Kumar Lakshmanan
Join Date: Feb 2013
Posts: 11
Rep Power: 13 |
Hi Scabbard,
I don't have any recommendations.But after looking your case I found that you are using createPatchDict. Is that required for your case.You are defining symmetry on top and bottom right.Then try to use simple decomposition instead of scotch(To be honest I don't know about this influence but I am using simple and It's easy to decompose also).Otherwise every thing seems right.Today also I simulated my case with 65K cells for Re 45000.I got reasonable drag value of 1.19 the actual value is 1.17. But strouhal number is high which comes around 0.25, the actual one is 0.2. |
|
September 27, 2014, 10:23 |
|
#9 |
New Member
Saravana Kumar Lakshmanan
Join Date: Feb 2013
Posts: 11
Rep Power: 13 |
Hi Scabbard,
As you asked. I am sharing my case. Hope It will help you. https://drive.google.com/file/d/0B8S...it?usp=sharing |
|
September 27, 2014, 10:31 |
|
#10 | |
Member
Join Date: Dec 2013
Location: Newcastle
Posts: 54
Rep Power: 13 |
Quote:
Thank you so much for your help. I will have a try to use simple not scotch. the create PatchDict is not used in this case. Sometimes I want to use the cyclic bc then I use this. By the way, how did you calculate the omega at the inlet? I found in your case your inlet omega even larger than the omega at the wall of cylinder? http://www.cfd-online.com/Forums/ope...omega-sst.html I found 3 way to calculate the omega at inlet. Which method is your choice? Best wishes, Scabbard |
||
September 27, 2014, 11:33 |
|
#11 | |
Member
Join Date: Dec 2013
Location: Newcastle
Posts: 54
Rep Power: 13 |
Quote:
I saw your thread, we use the same method. I think if your drag force is accurate, the strouhal number should be accurate. Because the strouhal number is easier stable than Cd. Best wishes, Yibo |
||
September 27, 2014, 12:09 |
|
#12 | |
New Member
Saravana Kumar Lakshmanan
Join Date: Feb 2013
Posts: 11
Rep Power: 13 |
Hi,
I took the equation from one journal paper.The equations are given below.This is exclusively for kOmegaSST model For freestream: k=(3/2)*(uinf*I)^2 where uinf-freestream velocity I-Turbulent Intensity(1% in my case) omega=((k)^(3/2))/(k*cmu*l) where cmu=0.09 l=0.07D (D=dia of cylinder) For wall k=0 omega=(60*nu)/(beta*(dely)^2) nu=kinematic viscosity beta=0.075 (constant) dely=first grid point value in m from wall. Hope this will help for other newbie also... No, the omega at wall is large check again. Quote:
|
||
September 27, 2014, 12:12 |
|
#13 |
New Member
Saravana Kumar Lakshmanan
Join Date: Feb 2013
Posts: 11
Rep Power: 13 |
Hi yibo,
No I am not getting the correct strouhal number.You can check the postprocessing folder in my case.The force coefficients are there.If possible you plot and check and even you can calculate the Cd also. |
|
September 28, 2014, 07:02 |
|
#14 | |
Member
Join Date: Dec 2013
Location: Newcastle
Posts: 54
Rep Power: 13 |
Quote:
I try to use your settings on my case, still cd=1.6, I am wondering is it my domain too high (H=3.14D) and not wide enough, width =20D? Best wishes, Scabbard |
||
September 28, 2014, 07:37 |
|
#15 |
New Member
Saravana Kumar Lakshmanan
Join Date: Feb 2013
Posts: 11
Rep Power: 13 |
Hi Scabbard,
Your domain size is fine.You used 25D downstream and 10D in upstream,Top & Bottom.This is reasonable value for cylinder analysis.But I don't have any answer for your drag value.Have you tried in other meshes/other Re.Because I tried to simulate for Re 1000, that time I got high drag value and correct strouhal number with the same settings.Some openfoam guru only can clear our doubts.Looking for your help foamers. |
|
September 28, 2014, 08:02 |
|
#16 | |
Member
Join Date: Dec 2013
Location: Newcastle
Posts: 54
Rep Power: 13 |
Quote:
Re=1000 i think is laminar flow, so cannot use turbulence model to simulate it. Have you try 3900 re? I try either, but both of them give a high Cd value Best wishes, Scabbard |
||
September 29, 2014, 05:28 |
|
#17 |
Member
Julian Langowski
Join Date: May 2011
Location: Bremen, Germany
Posts: 91
Rep Power: 15 |
Hi guys,
some considerations from my side: - If you use RANS, you assume FULL turbulence. This is not necessarily the case at RE = 5 * 10^5. Try something like RE = 5 * 10^6 for validation and after that test lower Reynolds number. - As you assume full turbulence, transition might not be predicted correctly. As far as I know, transition point is shifted in flow direction by RANS => You have less separation => The simulated CD should be too low. - How is your Courant number? - Concerning mesh dimensions: To be on the safe side, perform a mesh study => Systematically increasse wall distances until reference values are changing no more. Just some guesses, good luck! Julian
__________________
πάντα ῥεῖ - Heraclitus |
|
September 29, 2014, 21:14 |
|
#18 |
New Member
Join Date: Jun 2014
Posts: 10
Rep Power: 12 |
Hi all,
I haven't read the entire details/results posted here but here is some information regarding the physics of the problem (flow over a smooth cylinder) and its problem with CFD: 1) Simulation of flow over bluff bodies have certain problems with RANS models. Flow regime for 1×10^3- 2×10^3 < Re < 2×10^4- 4×10^4 is called TRSL2 (Transition in Shear Layers, 2nd regime). This regime has a characteristic feature of formation of transition vortices in free shear layers. For smooth cylinders, separation point becomes oscillatory and there are important problems regarding the resolution of capturing this oscillatory movement of the separation point with RANS models. Since this plays a dominant role in the formation of vortices, low accuracy is usually the case. 2) I would dismiss the idea of using wall functions altogether for CFD of flow over bluff bodies. Avoiding details, it can be said that there are two types of vortex formation mechanisms seen in flow over circular cylinders: "D-scale" vortices that are on the scale of cylinder diameter and big number of very small vortices that are fed into the wake by the boundary layer. Even though transition to turbulence in boundary layers for flow past circular cylinders occurs around Re ~ 1-2 X 10^5, wall functions might fail to accurately approximate the vortex formation behavior. The problem of correctly capturing the separation point is the biggest issue with RANS simulation of flow past smooth cylinders. I'd recommend doing some literature search regarding the problem before trying to adjust your parameters. Even though my research focus is on the fluid induced motions of oscillating cylinders, my opinion is that such an attempt might be completely futile if the physics of the problem cannot be modeled properly with the way you are numerically trying to discretize. |
|
September 30, 2014, 07:13 |
|
#19 | |
Member
Join Date: Dec 2013
Location: Newcastle
Posts: 54
Rep Power: 13 |
Quote:
Thank you for your reply. I have read some papers doing URANS for a square cylinder on Re=21400, however both cylinder and square cylinder I can not get satisfied result. I am also doing work on vortex induced motion. I think sometimes using URANS is a easy way to validated the rigid body motion solver. Also I am still confusing why other people can get a cd very close to the experiment result but mine is far away from the result. Best regards, Scabbard |
||
September 30, 2014, 07:42 |
|
#20 |
New Member
Saravana Kumar Lakshmanan
Join Date: Feb 2013
Posts: 11
Rep Power: 13 |
Hi Scabbard,
I tried to simulate for Re 3900 with low reynolds model(LaunderSharmakepsilon). This time I got reasonable strouhal Number but high drag value.It's confusing me lot. Then for your last post same thing happening for me.I got few papers on circular cylinder analysis in OpenFOAM for wide range of Re.And they got reasonable values like CD, strouhal number with komegaSST model. |
|
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
Modelling flow around a Smooth Cylinder - Drag coefficient HELP | Asatorae | STAR-CCM+ | 17 | November 14, 2014 11:45 |
Flow over 2D Cylinder, Laminar and Turbulent | Tsr63 | FLUENT | 5 | November 13, 2014 13:13 |
Flow past rotating cylinder: Problem with ForeCoeffs | raf1111 | OpenFOAM | 1 | December 16, 2013 10:45 |
interFoam solver for free surface flow past a circular cylinder | tfuwa | OpenFOAM Running, Solving & CFD | 6 | June 12, 2013 09:55 |
plotting drag coefficient in low reynolds number flow past cylinder | atmcfd | FLUENT | 0 | January 2, 2010 09:34 |