CFD Online Discussion Forums

CFD Online Discussion Forums (https://www.cfd-online.com/Forums/)
-   OpenFOAM Running, Solving & CFD (https://www.cfd-online.com/Forums/openfoam-solving/)
-   -   Axial flow fan incorrect pressure rise (https://www.cfd-online.com/Forums/openfoam-solving/212889-axial-flow-fan-incorrect-pressure-rise.html)

yambanshee December 11, 2018 03:43

Axial flow fan incorrect pressure rise
 
Good day!


I am trying to model an axial flow fan using simpleFoam and a frozen rotor based simulation. I am considering a 1/8th section of the 8 bladed fan and making use of MRF modelling.
I have tried 3 different domains, namely a pure annular one, an annular inlet with an expanded outlet (which I'll be describing further here) and an expanded inlet with a round bellmouth connected to the shroud and an expanded outlet. In all cases, I am neglecting tip clearance as my study is on the effects of different hub geometry.


I am still attempting validation, where experimental (as well as a older numerical study by someone else in ansys) state a static pressure rise of ~200 Pa at 16 m^3/s (or 2m^3/s * 8). Where static pressure rise is the difference between the static pressure at the outlet and total pressure at the inlet.

Mesh

The mesh is constructed in blockMesh (and did that take me long :eek: to build) and the checkmesh log is attached below (can't upload files, so attached in code blocks). The main outtakes as far as I can tell is skewness at ~1.47 and max non-orthog at ~54 deg. Here are some images of the mesh and domain:
https://imgur.com/aa3nHrmhttps://i.imgur.com/w7JJ6A6.pnghttps://i.imgur.com/f3XgjWP.png
https://i.imgur.com/xJ1heWK.png
https://imgur.com/f3XgjWP
https://imgur.com/xJ1heWK

Boundary Conditions
Names correlate with above image of domain. I am making use of the k-omega turb model
U
inlet flowRateInletVelocity -> 2;
outlet: zeroGradient
blade: noSlip
hub: noSlip
shroud: noSlip
inlet wall slip
expansion wall slip
expansion outlet: zeroGradient

p
inlet zeroGradient
outlet: fixed -> 0
blade: zeroGradient
hub: zeroGradient
shroud: zeroGradient
inlet wall zeroGradient
expansion wall zeroGradient
expansion outlet: fixed 0> 0

k
inlet turbulentIntensityKineticEnergyInlet -> 0.01 (1%)
outlet: inletOutlet -> intenalField
blade: fixedValue ->1E-12
hub: kqRWallFunction
shroud: kqRWallFunction
inlet wall zeroGradient
expansion wall zeroGradient
expansion outlet: inletOutlet -> intenalField

omega
inlet turbulentMixingLengthDissipationRateInlet -> 0.23 (half the anular height)
outlet: inletOutlet -> intenalField
blade: omegaWallFunction
hub: omegaWallFunction
shroud: omegaWallFunction
inlet wall zeroGradient
expansion wall zeroGradient
expansion outlet: fixed 0> 0

Rest of setup
MRF properties:
The entire domain is an MRFSource, with all patches except the blade and hub being set up as a nonRotatingPatch.
omega = 78.54 for 750 rpm

transport properties:
nu = 1.802e-05 for air at 15*density (ie dynamic viscosity)

fvSchemes:
Code:

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

ddtSchemes
{
    default        steadyState;
}

gradSchemes
{
    default        Gauss linear corrected 1;
}

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

laplacianSchemes
{
    default        Gauss linear corrected 1;
}

interpolationSchemes
{
    default        linear;
}

snGradSchemes
{
    default        corrected;
}

wallDist
{
    method meshWave;
}

// ************************************************************************* //

fvSolution:
Code:

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

solvers
{
    "(p|Phi)"
    {
        solver          GAMG;
        tolerance        1e-8;
        relTol          0.0001;
        smoother        DIC;
        nPreSweeps      1;
        nPostSweeps      2;
        cacheAgglomeration on;
        agglomerator    faceAreaPair;
        nCellsInCoarsestLevel 800;
        mergeLevels      1;
        maxIter      200; 
    }
   

    "(U|k|epsilon|omega)"
    {
        solver          smoothSolver;
        smoother        symGaussSeidel;
        tolerance      1e-10;
        relTol          0.0001;
    }

    "(U|k|epsilon|omega)Final"
    {
        $U;
        tolerance      1e-10;
        relTol          0;
    }
}

SIMPLE
{
    nNonOrthogonalCorrectors 1;
}

relaxationFactors
{
    fields
    {
        p              0.4; //0.2
    }
    equations
    {
        U              0.7;//0.4
        k              0.6;//0.4
        "(epsilon|omega)" 0.6;//0.4
    }
}

cache
{
    grad(U);
}

potentialFlow
{
    nNonOrthogonalCorrectors 3;
}


// ************************************************************************* //


checkMesh

Code:

/*---------------------------------------------------------------------------*\
 | =========                |                                                |
| \\      /  F ield        | OpenFOAM: The Open Source CFD Toolbox          |
|  \\    /  O peration    | Version:  5.x                                  |
|  \\  /    A nd          | Web:      www.OpenFOAM.org                      |
|    \\/    M anipulation  |                                                |
\*---------------------------------------------------------------------------*/
Build  : 5.x-197d9d3bf20a
Exec  : checkMesh
Date  : Dec 11 2018
Time  : 10:13:44
Host  : "zander-ubuntu"
PID    : 5165
I/O    : uncollated
Case  : /home/zander/OpenFOAM/zander-5.0/run/2018-12/expansion-mid-thruBL
nProcs : 1
sigFpe : Enabling floating point exception trapping (FOAM_SIGFPE).
fileModificationChecking : Monitoring run-time modified files using timeStampMaster (fileModificationSkew 10)
allowSystemOperations : Allowing user-supplied system call operations

// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
Create time

Create polyMesh for time = 0

Time = 0

Mesh stats
    points:          1328871
    faces:            3894222
    internal faces:  3803058
    cells:            1282880
    faces per cell:  6
    boundary patches: 10
    point zones:      0
    face zones:      0
    cell zones:      1

Overall number of cells of each type:
    hexahedra:    1282880
    prisms:        0
    wedges:        0
    pyramids:      0
    tet wedges:    0
    tetrahedra:    0
    polyhedra:    0

Checking topology...
    Boundary definition OK.
    Cell to face addressing OK.
    Point usage OK.
    Upper triangular ordering OK.
    Face vertices OK.
    Number of regions: 1 (OK).

Checking patch topology for multiply connected surfaces...
    Patch              Faces    Points  Surface topology                 
    outlet              10800    10984    ok (non-closed singly connected) 
    inlet              8300    8459    ok (non-closed singly connected) 
    side1              14974    15346    ok (non-closed singly connected) 
    side2              14918    15288    ok (non-closed singly connected) 
    shroud              6960    7174    ok (non-closed singly connected) 
    bellMouth          4000    4141    ok (non-closed singly connected) 
    hub                17960    18234    ok (non-closed singly connected) 
    blade              3752    3886    ok (non-closed singly connected) 
    expansionOutlet    7000    7171    ok (non-closed singly connected) 
    expansionWall      2500    2626    ok (non-closed singly connected) 

Checking geometry...
    Overall domain bounding box (-0.765367 -4.11 0) (0.765367 2.1 2)
    Mesh has 3 geometric (non-empty/wedge) directions (1 1 1)
    Mesh has 3 solution (non-empty) directions (1 1 1)
    Boundary openness (-4.67917e-15 -1.81618e-16 -2.51773e-15) OK.
    Max cell openness = 1.3381e-15 OK.
    Max aspect ratio = 376.17 OK.
    Minimum face area = 5.68714e-09. Maximum face area = 0.0426733.  Face area magnitudes OK.
    Min volume = 5.65573e-12. Max volume = 0.000866993.  Total volume = 6.78618.  Cell volumes OK.
    Mesh non-orthogonality Max: 54.3416 average: 15.4495
    Non-orthogonality check OK.
    Face pyramids OK.
    Max skewness = 1.46607 OK.
    Coupled point location match (average 0) OK.

Mesh OK.

End

y+ values:

Code:

    patch shroud y+ : min = 0.253191, max = 101.353, average = 35.5284
    patch inletWall y+ : min = 0.162738, max = 49.7783, average = 27.6695
    patch hub y+ : min = 0.025898, max = 66.0722, average = 33.0663
    patch blade y+ : min = 0.00177306, max = 4.72209, average = 0.798809
    patch expansionWall y+ : min = 0.243394, max = 48.2709, average = 9.18704

I'm using the patchAverage utility to find pressure at the inlet, and I'm getting -146 Pa, implying a static to static pressure rise of 146. The inlet velocity is 8.64 m/s, so the static pressure rise is only 109 Pa, which is out by a factor of nearly 2. I can't tell what could be incorrect with my setup?

I get similar results with a pure annular as well as expansion inlet & outlet with bellmouth. Is there something wrong with my setup? is my mesh bad? am I neglecting something big? any help would be greatly appreciated!

yambanshee January 15, 2019 03:11

anyone able to lend a hand?

vizvaz June 25, 2020 14:05

Did you find any solution to your issue?


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