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

Duct flow with two fans - SimpleFOAM stops after first iteration

Register Blogs Community New Posts Updated Threads Search

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   September 14, 2021, 04:40
Default Duct flow with two fans - SimpleFOAM stops after first iteration
  #1
New Member
 
Join Date: Sep 2021
Posts: 3
Rep Power: 4
Kryoleiche is on a distinguished road
Dear foamers,

I'm working on a k-epsilon model of a rectangular, horizontal channel with two fans in parallel, an downward-facing inlet and a upward-facing outlet. The geometry was created using blender for the .STL files and snappyHexMesh for meshing and works fine by itself (tested without fans).

I've implented the fans using cyclic boundary conditions, as it is done in the TJunctionFan tutorial. The fan curves used are somewhat generic and not final.

As a mandatory boundary condition, air is streaming from the inlet with fixed velocity. This was realized using flowRateInletVelocity as a BC with a given volumetric flow rate.

However, upon evaluation, SimpleFOAM only does one iteration and then stops without an error (and without having reached conversion). According to the output file, this happens during the evaluation of the pressure field. I can't figure out if this is due to suboptimal BCs, poor numeric stability or suboptimal solver settings. Please see below for the input files, log files as well as screenshots from Paraview after the first iteration. Advice would be kindly appreciated.

0/p
Code:
/*--------------------------------*- C++ -*----------------------------------*\
  =========                 |
  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
   \\    /   O peration     | Website:  https://openfoam.org
    \\  /    A nd           | Version:  9
     \\/     M anipulation  |
\*---------------------------------------------------------------------------*/
FoamFile
{
    format      ascii;
    class       volScalarField;
    location    "0";
    object      p;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

dimensions      [0 2 -2 0 0 0 0];

internalField   uniform 0;

boundaryField
{
    inlet
    {
        type            zeroGradient;
    }
    inletJunction1
    {
        type            zeroGradient;
    }
    inletJunction2
    {
        type            zeroGradient;
    }
    sideFan
    {
        type            zeroGradient;
    }
    sideFanJunction
    {
        type            zeroGradient;
    }
    mainFan
    {
        type            zeroGradient;
    }
    fanJunction
    {
        type            zeroGradient;
    }
    channel
    {
        type            zeroGradient;
    }
    outletJunction1
    {
        type            zeroGradient;
    }
    outletJunction2
    {
        type            zeroGradient;
    }
    outlet
    {
        type            fixedValue;
        value           uniform 0;
    }
    baffleFacesMainFan_master
    {
        type            zeroGradient;
    }
    baffleFacesMainFan_slave
    {
        type            zeroGradient;
    }
    cyclicFacesMainFan_master
    {
        type            fanPressureJump;
        patchType       cyclic;
        patchType       cyclic;
        jump            uniform 0;
        value           uniform 0;
        jumpTable       
        {
            type            polynomial;
            coeffs          
2
(
(0 9620)
(300 0)
)
;
        }
    }
    cyclicFacesMainFan_slave
    {
        type            fanPressureJump;
        patchType       cyclic;
        patchType       cyclic;
        value           uniform 0;
    }
    baffleFacesSideFan_master
    {
        type            zeroGradient;
    }
    baffleFacesSideFan_slave
    {
        type            zeroGradient;
    }
    cyclicFacesSideFan_master
    {
        type            fanPressureJump;
        patchType       cyclic;
        patchType       cyclic;
        jump            uniform 0;
        value           uniform 0;
        jumpTable       
        {
            type            polynomial;
            coeffs          
2
(
(0 9620)
(300 0)
)
;
        }
    }
    cyclicFacesSideFan_slave
    {
        type            fanPressureJump;
        patchType       cyclic;
        patchType       cyclic;
        value           uniform 0;
    }
}


 // ************************************************************************* //
0/U
Code:
/*--------------------------------*- C++ -*----------------------------------*\
  =========                 |
  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
   \\    /   O peration     | Website:  https://openfoam.org
    \\  /    A nd           | Version:  9
     \\/     M anipulation  |
\*---------------------------------------------------------------------------*/
FoamFile
{
    format      ascii;
    class       volVectorField;
    location    "0";
    object      U;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

dimensions      [0 1 -1 0 0 0 0];

internalField   uniform (0 0 0);

boundaryField
{
    inlet
    {
        type            flowRateInletVelocity;
        volumetricFlowRate 
        {
            type            constant;
            value           250;
        }
        extrapolateProfile 0;
        value           uniform (0 0 0);
    }
    inletJunction1
    {
        type            noSlip;
    }
    inletJunction2
    {
        type            noSlip;
    }
    sideFan
    {
        type            noSlip;
    }
    sideFanJunction
    {
        type            noSlip;
    }
    mainFan
    {
        type            noSlip;
    }
    fanJunction
    {
        type            noSlip;
    }
    channel
    {
        type            noSlip;
    }
    outletJunction1
    {
        type            noSlip;
    }
    outletJunction2
    {
        type            noSlip;
    }
    outlet
    {
        type            zeroGradient;
    }
    baffleFacesMainFan_master
    {
        type            fixedValue;
        value           uniform (0 0 0);
    }
    baffleFacesMainFan_slave
    {
        type            fixedValue;
        value           uniform (0 0 0);
    }
    cyclicFacesMainFan_master
    {
        type            cyclic;
    }
    cyclicFacesMainFan_slave
    {
        type            cyclic;
    }
    baffleFacesSideFan_master
    {
        type            fixedValue;
        value           uniform (0 0 0);
    }
    baffleFacesSideFan_slave
    {
        type            fixedValue;
        value           uniform (0 0 0);
    }
    cyclicFacesSideFan_master
    {
        type            cyclic;
    }
    cyclicFacesSideFan_slave
    {
        type            cyclic;
    }
}


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

ddtSchemes
{
    default         steadyState;
}

gradSchemes
{
    default         Gauss linear;
}

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

laplacianSchemes
{
    default         Gauss linear corrected;
}

interpolationSchemes
{
    default         linear;
}

snGradSchemes
{
    default          corrected;
}

wallDist
{
    method meshWave;
}


// ************************************************************************* //
fvSolution

Code:
/*--------------------------------*- C++ -*----------------------------------*\
  =========                 |
  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
   \\    /   O peration     | Website:  https://openfoam.org
    \\  /    A nd           | Version:  9
     \\/     M anipulation  |
\*---------------------------------------------------------------------------*/
FoamFile
{
    format      ascii;
    class       dictionary;
    location    "system";
    object      fvSolution;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

solvers
{
    p
    {
        solver          GAMG;
        tolerance       1e-06;
        relTol          0.1;
        smoother        GaussSeidel;
    }

    "(U|k|epsilon|omega|f|v2)"
    {
        solver          smoothSolver;
        smoother        symGaussSeidel;
        tolerance       1e-05;
        relTol          0.1;
    }
}

SIMPLE
{
    nNonOrthogonalCorrectors 0;
    consistent      yes;

    residualControl  // legt Grenzen (Änderung) für Konvergenz fest, Simulation endet, wenn erfüllt (auch wenn max. TimeSteps noch nicht erreicht)
    {
        p               1e-4; //1e-2;
        U               1e-4; //1e-3;
        "(k|epsilon|omega|f|v2)" 1e-4; //1e-4;
    }
}

relaxationFactors  // nahe 1 für schnelle Konvergenz, kleiner für mehr Stabilität
{
    equations
    {
     // U               0.9; // 0.9 is more stable but 0.95 more convergent
     //   ".*"            0.9; // 0.9 is more stable but 0.95 more convergent
        p               0.3;
        U               0.7;
        k               0.1; // instabil für größere Werte
        epsilon         0.1; //0.5; instabil für größere Werte
        R               0.95;
        nuTilda         0.95;  
    }
}


// ************************************************************************* //
checkMesh
Code:
/*---------------------------------------------------------------------------*\
  =========                 |
  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
   \\    /   O peration     | Website:  https://openfoam.org
    \\  /    A nd           | Version:  9
     \\/     M anipulation  |
\*---------------------------------------------------------------------------*/
Build  : 9-89839ae3b8cd
Exec   : checkMesh
Date   : Sep 14 2021
Time   : 10:27:34
Host   : "NB3391"
PID    : 9979
I/O    : uncollated
Case   : /home/hor/OpenFOAM/hor-9/run/tutorials/incompressible/simpleFoam/Asse/Square/Parallel
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:           63756
    faces:            136973
    internal faces:   111485
    cells:            38066
    faces per cell:   6.52703
    boundary patches: 19
    point zones:      0
    face zones:       4
    cell zones:       0

Overall number of cells of each type:
    hexahedra:     27606
    prisms:        818
    wedges:        0
    pyramids:      0
    tet wedges:    0
    tetrahedra:    0
    polyhedra:     9642
    Breakdown of polyhedra by number of faces:
        faces   number of cells
            4   156
            5   318
            6   3042
            7   68
            9   5110
           11   2
           12   728
           13   114
           15   104

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
                   inlet      436      569  ok (non-closed singly connected)
          inletJunction1     1510     1806  ok (non-closed singly connected)
          inletJunction2     1270     1455  ok (non-closed singly connected)
                 sideFan     2480     2854  ok (non-closed singly connected)
         sideFanJunction     3058     3797  ok (non-closed singly connected)
                 mainFan     3270     3656  ok (non-closed singly connected)
             fanJunction      684      815  ok (non-closed singly connected)
                 channel     9116    10180  ok (non-closed singly connected)
         outletJunction1     1270     1455  ok (non-closed singly connected)
         outletJunction2     1510     1806  ok (non-closed singly connected)
                  outlet      436      569  ok (non-closed singly connected)
    baffleFacesMainFan_master      108      152  ok (non-closed singly connected)
    baffleFacesMainFan_slave      108      152  ok (non-closed singly connected)
    cyclicFacesMainFan_master        4       17  ok (non-closed singly connected)
    cyclicFacesMainFan_slave        4       17  ok (non-closed singly connected)
    baffleFacesSideFan_master      108      152  ok (non-closed singly connected)
    baffleFacesSideFan_slave      108      152  ok (non-closed singly connected)
    cyclicFacesSideFan_master        4       17  ok (non-closed singly connected)
    cyclicFacesSideFan_slave        4       17  ok (non-closed singly connected)

Checking geometry...
    Overall domain bounding box (-2.5 -45 -7.5) (12.5 25 7.5)
    Mesh has 3 geometric (non-empty/wedge) directions (1 1 1)
    Mesh has 3 solution (non-empty) directions (1 1 1)
    Boundary openness (-2.91264e-16 -2.25216e-17 -2.48671e-17) OK.
    Max cell openness = 3.29172e-16 OK.
    Max aspect ratio = 2.67029 OK.
    Minimum face area = 0.00521692. Maximum face area = 1.3035.  Face area magnitudes OK.
    Min volume = 0.000449515. Max volume = 1.33144.  Total volume = 2312.49.  Cell volumes OK.
    Mesh non-orthogonality Max: 46.0156 average: 14.5037
    Non-orthogonality check OK.
    Face pyramids OK.
    Max skewness = 1.38066 OK.
    Coupled point location match (average 0) OK.

Mesh OK.

End
Log File
Code:
/*---------------------------------------------------------------------------*\
  =========                 |
  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
   \\    /   O peration     | Website:  https://openfoam.org
    \\  /    A nd           | Version:  9
     \\/     M anipulation  |
\*---------------------------------------------------------------------------*/
Build  : 9-89839ae3b8cd
Exec   : simpleFoam
Date   : Sep 14 2021
Time   : 10:08:45
Host   : "NB3391"
PID    : 9625
I/O    : uncollated
Case   : /home/hor/OpenFOAM/hor-9/run/tutorials/incompressible/simpleFoam/Asse/Square/Parallel
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 mesh for time = 0


SIMPLE: Convergence criteria found
        p: tolerance 0.0001
        U: tolerance 0.0001
        "(k|epsilon|omega|f|v2)": tolerance 0.0001

Reading field p

Reading field U

Reading/calculating face flux field phi

Selecting incompressible transport model Newtonian
Selecting turbulence model type RAS
Selecting RAS turbulence model kEpsilon
RAS
{
    model           kEpsilon;
    turbulence      on;
    printCoeffs     on;
    Cmu             0.09;
    C1              1.44;
    C2              1.92;
    C3              0;
    sigmak          1;
    sigmaEps        1.3;
}

No MRF models present

No fvModels present
No fvConstraints present

Starting time loop

Time = 1

smoothSolver:  Solving for Ux, Initial residual = 1, Final residual = 0.0264807, No Iterations 1
smoothSolver:  Solving for Uy, Initial residual = 1, Final residual = 0.0291994, No Iterations 1
smoothSolver:  Solving for Uz, Initial residual = 1, Final residual = 0.0326049, No Iterations 2
GAMG:  Solving for p, Initial residual = 0.997383, Final residual = 0.0233767, No Iterations 1
time step continuity errors : sum local = 0.304401, global = -0.0817178, cumulative = -0.0817178
smoothSolver:  Solving for epsilon, Initial residual = 0.00726389, Final residual = 2.33158e-05, No Iterations 1
smoothSolver:  Solving for k, Initial residual = 1, Final residual = 0.00262554, No Iterations 1
ExecutionTime = 0.48 s  ClockTime = 1 s

Time = 2

smoothSolver:  Solving for Ux, Initial residual = 0.445811, Final residual = 0.0293242, No Iterations 1
smoothSolver:  Solving for Uy, Initial residual = 0.273752, Final residual = 0.00789025, No Iterations 2
smoothSolver:  Solving for Uz, Initial residual = 0.334445, Final residual = 0.0262153, No Iterations 1
Attached Images
File Type: jpg 1p.jpg (26.8 KB, 24 views)
File Type: jpg 1v.jpg (27.5 KB, 12 views)
Kryoleiche is offline   Reply With Quote

Reply

Tags
duct, fan, simplefoam


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
Issues on the simulation of high-speed compressible flow within turbomachinery dowlee OpenFOAM Running, Solving & CFD 11 August 6, 2021 06:40
Match Pressure Inlet/Outlet Boundary Condition Mass Flow Rate MSchneid Fluent UDF and Scheme Programming 3 February 23, 2019 06:00
simpleFoam stops without error message during first iteration Illmatic OpenFOAM 1 June 25, 2018 14:57
Review: Reversed flow CRT FLUENT 1 May 7, 2018 05:36
Laminar Isothermal Flow in a duct HectorRedal Main CFD Forum 29 June 2, 2012 07:04


All times are GMT -4. The time now is 20:41.