CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > Software User Forums > OpenFOAM > OpenFOAM Running, Solving & CFD

Flow past a 2D cylinder - High Re (1E+05) - Cd too high

Register Blogs Community New Posts Updated Threads Search

Like Tree2Likes
  • 1 Post By tomf
  • 1 Post By Pervispasco

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   April 7, 2016, 11:42
Default Flow past a 2D cylinder - High Re (1E+05) - Cd too high
  #1
New Member
 
Tommaso Pascon
Join Date: Mar 2016
Posts: 18
Rep Power: 10
Pervispasco is on a distinguished road
Hi guys,

I am trying to validate Openfoam simulating a 2D flow past a cylinder at high Reynolds Number (Re=1e05 -07), using komega-sst. At the Reynolds number 1E+05 i got pretty good results in term of Cd =1,23 instead of 1,2 and St = 0,23 instead of 0,2. So now i wanted to run the same case at Re = 5E+05. So I modified the mesh in order to get an accurate y+ value (around 30) and the dt to have the Courant number between 0,5 and 1. The problem is that in this case i get a Cd around 0,75 which is too high cause the reference value is around 0,3. And i don't know what am i doing wrong. I'm running K-w SSt model with PisoFoam solver. Maybe i should try running the simulation with the k-Epsilon model?

Here is my setting

-cylinder diameter:2m
-flow velocity:1m/s
-kinematic viscosity:4e-06
-Re=5e05
-y+ max=31.5
-lRef 2 (The diameter of the cylinder)
-Aref 2 (the front area, my cylinder height is 1)
-timestep 0.005s
-simulation time 200s
-my k inlet is calculated as 1.5(UI)^2 U is the flow velocity. I is the turbulence intensity=3,8% = 0,16*Re^(-1/8)
-my omega inlet is calculated as kinlet^0.5/(l*Cmu^0.25) Cmu=0.09 l is the tubulence length l=0.07D
-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.0012

The flow inlet boundary is located 10D upstream from the centre of the cylinder and the flow outlet boundary is located 30D 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:  3.0.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.00144;

boundaryField
{

    inlet
    {
        type            fixedValue;
        value           uniform 0.00144;
    }

    outlet
    {
        type            zeroGradient;
    }

    top
    {
        type            symmetryPlane;
    }

    bottom
    {
        type            symmetryPlane;
    }

    cylinder
    {
        type            kqRWallFunction;
        value           uniform 0.0;
    }

    sides
    {
        type            empty;
    }
}


// ************************************************************************* //
nut:
Code:
/*--------------------------------*- C++ -*----------------------------------*\
| =========                 |                                                 |
| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
|  \\    /   O peration     | Version:  3.0.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;

boundaryField
{
    inlet
    {
        type            calculated;
        value           uniform 0;
    }
    outlet
    {
        type            calculated;
        value           uniform 0;
    }

    top
    {
        type            symmetryPlane; 
        value           uniform 0;
    }

    bottom
    {
        type            symmetryPlane; 
        value           uniform 0;
    }

    cylinder
    {
        type            nutUSpaldingWallFunction; 
        value           uniform 0;
    }

    sides
    {
        type            empty;
    }
}


// ************************************************************************* //
Omega:
Code:
/*--------------------------------*- C++ -*----------------------------------*\
| =========                 |                                                 |
| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
|  \\    /   O peration     | Version:  3.0.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.496;

boundaryField
{
    inlet
    {
        type            fixedValue;
        value           uniform 0.496;
    }

    outlet
    {
        type            zeroGradient;

    }

    top
    {
        type            symmetryPlane;
    }

    bottom
    {
        type            symmetryPlane;
    }

    cylinder
    {
        type            omegaWallFunction;
        value           uniform 4.39e02;
    }

    sides
    {
        type            empty; 
    }
}


// ************************************************************************* //
p:
Code:
/*--------------------------------*- C++ -*----------------------------------*\
| =========                 |                                                 |
| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
|  \\    /   O peration     | Version:  3.0.x                                 |
|   \\  /    A nd           | Web:      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
{
    inlet
    {
        type           zeroGradient;
    }

    outlet
    {
        type           fixedValue;
	value		       uniform 0;
    }
    
    top
    {
    type               symmetryPlane;
    }

    bottom
    {
	type		       symmetryPlane;
    }
    
    cylinder
    {
	type		       zeroGradient;
    }
    
    sides
    {
        type            empty;
    }
}

// ************************************************************************* //
U:
Code:
/*--------------------------------*- C++ -*----------------------------------*\
| =========                 |                                                 |
| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
|  \\    /   O peration     | Version:  3.0.x                                 |
|   \\  /    A nd           | Web:      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 (0 0 0);

boundaryField

{
    inlet
    {
        type            fixedValue;
        value           uniform (1 0 0);
    }

    outlet
    {
        type            zeroGradient;
    }
    
    top
    {
    type               symmetryPlane;
    }

    bottom
    {
	type               symmetryPlane;
    }
    
    cylinder
    {
	type	           fixedValue;
	value	       	   uniform (0 0 0);
    }
    
    sides
    {
        type           empty;
    }
}

// ************************************************************************* //
fvSchemes:
Code:
/*--------------------------------*- C++ -*----------------------------------*\
| =========                 |                                                 |
| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
|  \\    /   O peration     | Version:  3.0.x                                 |
|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
|    \\/     M anipulation  |                                                 |
\*---------------------------------------------------------------------------*/
FoamFile
{
    version     2.0;
    format      ascii;
    class       dictionary;
    location    "system";
    object      fvSchemes;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

ddtSchemes
{
    default         Euler;
}

gradSchemes
{
    default         Gauss linear;
    grad(p)         Gauss linear;
    grad(U)         Gauss linear;
}

divSchemes
{
    default         none;
    div(phi,U)      Gauss limitedLinearV 1;
    div(phi,k)      Gauss limitedLinear 1;
    div(phi,omega)      Gauss limitedLinear 1;
    div(phi,epsilon) Gauss limitedLinear 1;
    div(phi,R)      Gauss limitedLinear 1;
    div(R)          Gauss linear;
    div(phi,nuTilda) Gauss limitedLinear 1;
    div((nuEff*dev2(T(grad(U))))) Gauss linear;
}

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(DepsilonEff,epsilon) Gauss linear corrected;
    laplacian(DREff,R) Gauss linear corrected;
    laplacian(DnuTildaEff,nuTilda) Gauss linear corrected;
}

interpolationSchemes
{
    default         linear;
    interpolate(U)  linear;
}

snGradSchemes
{
    default         corrected;
}

fluxRequired
{
    default         no;
    p               ;
}

wallDist
{
    method meshWave;
}

// ************************************************************************* //
fvSolution:
Code:
/*--------------------------------*- C++ -*----------------------------------*\
| =========                 |                                                 |
| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
|  \\    /   O peration     | Version:  3.0.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          0;
    }

    pFinal
    {
        solver          PCG;
        preconditioner  DIC;
        tolerance       1e-06;
        relTol          0;
    }

    U
    {
        solver          PBiCG;
        preconditioner  DILU;
        tolerance       1e-08;
        relTol          0;
    }

    k
    {
        solver          PBiCG;
        preconditioner  DILU;
        tolerance       1e-08;
        relTol          0;
    }
    omega
    {
        solver          PBiCG;
        preconditioner  DILU;
        tolerance       1e-08;
        relTol          0;
    }

    epsilon
    {
        solver          PBiCG;
        preconditioner  DILU;
        tolerance       1e-08;
        relTol          0;
    }

    R
    {
        solver          PBiCG;
        preconditioner  DILU;
        tolerance       1e-08;
        relTol          0;
    }

    nuTilda
    {
        solver          PBiCG;
        preconditioner  DILU;
        tolerance       1e-08;
        relTol          0;
    }
}

PISO
{
    nCorrectors     2;
    nNonOrthogonalCorrectors 3;
    pRefCell        0;
    pRefValue       0;
}

// ************************************************************************* //
And here is a picture of the mesh:

Schermata 2016-04-07 alle 16.18.16.jpg
Pervispasco is offline   Reply With Quote

Old   April 8, 2016, 05:44
Default
  #2
Senior Member
 
Tom Fahner
Join Date: Mar 2009
Location: Breda, Netherlands
Posts: 647
Rep Power: 32
tomf will become famous soon enoughtomf will become famous soon enough
Send a message via MSN to tomf Send a message via Skype™ to tomf
Hi,

The Re=500 000 case is rather challenging to get right. In this case you will have transition of the laminar boundary layer to turbulence on the cylinder surface. If you use the k-omega-SST or another two-equation model without transition modelling you will not capture this effect and therefore you are unable to model this particular case. At higher Reynolds numbers (almost) the entire boundary layer is turbulent and you do not have this problem. So I would say that you should consider the k-kl-omega model if you plan to stay with RANS.

For 1e+5 there may be laminar boundary layer separation still, which may explain why the k-omega-SST model can still achieve a reasonable result for that case.

Regards,
Tom
ishfaqkhanniazi likes this.
tomf is offline   Reply With Quote

Old   April 12, 2016, 04:53
Default
  #3
New Member
 
Tommaso Pascon
Join Date: Mar 2016
Posts: 18
Rep Power: 10
Pervispasco is on a distinguished road
Thanks for the answer.
In this days I've read some papers on the k-kl omega but i have some questions about it: can I use the wall function with this turbulence model or i should i model my geometry to get y+ <1? I'd prefer to use the wall function to save some computational time.

In the meantime i ran the same case with the realizable k-Epsilon and the k-epsilon turbulence models and i get better results (Cd = 0.5 and St = 0,31 for the Rk-eps and Cd = 0,36 and St = 0,3 for the standard k-esp). I'm not sure about the accuracy of these models cause i think they are fully turbulent if I recall correctly. And I've some doubts about the k-epsilon model cause the drag coefficient doesn't have an oscillating behavior like in the other cases, instead it has an asymptotic behavior to 0,36 and I cannot find a reason for that.
Qinxu likes this.
Pervispasco is offline   Reply With Quote

Old   April 15, 2016, 09:29
Default
  #4
Senior Member
 
Tom Fahner
Join Date: Mar 2009
Location: Breda, Netherlands
Posts: 647
Rep Power: 32
tomf will become famous soon enoughtomf will become famous soon enough
Send a message via MSN to tomf Send a message via Skype™ to tomf
Unfortunately k-kl-omega requires y+<1.
tomf is offline   Reply With Quote

Old   March 14, 2022, 03:19
Default
  #5
New Member
 
秦旭
Join Date: Mar 2022
Posts: 1
Rep Power: 0
Qinxu is on a distinguished road
HELLO,can you provide this relevent cases ?(realizable k-Epsilon and the k-epsilon turbulence models to simulate flow around cylinder)
Thank you very much!!
Qinxu is offline   Reply With Quote

Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
Flow past a cylinder, Reynolds No: 100, Tracking strouhal Number. Karan FLUENT 11 November 14, 2016 05:49
Flow past an oscillating cylinder (Strouhal number) o_mars_2010 Main CFD Forum 8 May 23, 2014 05:25
Flow past rotating cylinder sam.ho OpenFOAM Running, Solving & CFD 4 October 10, 2013 08:49
The resistance force of flow around vertical cylinder is high hpkidmr FLOW-3D 1 August 28, 2013 00:46
Flow past a cylinder. Help needed Lurapa Main CFD Forum 1 August 18, 2013 12:25


All times are GMT -4. The time now is 14:08.