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/)
-   -   No convergence issue (https://www.cfd-online.com/Forums/openfoam-solving/160395-no-convergence-issue.html)

kurdt89 October 7, 2015 05:46

No convergence issue
 
Hello everybody

I am trying to run a simulation of a reactor with the sst k omega, however I have some problems with convergence. I use the simpleFoam solver with 12 processors.


fvSolution

Code:

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

solvers
{
p
{
solver GAMG;
tolerance 1e-7;
relTol 0.0;
smoother GaussSeidel;
nPreSweeps 0;
nPostSweeps 2;
cacheAgglomeration on;
agglomerator faceAreaPair;
nCellsInCoarsestLevel 1000;
mergeLevels 1;
}
    pFinal
    {
        $p;
        tolerance        1e-7;
        relTol          0;
    }

    "(U|k|omega|epsilon)"
    {
        solver          PBiCG;
        preconditioner  DILU;
        tolerance      1e-8;
        relTol          0.0;
    }

    "(U|k|omega|epsilon)Final"
    {
        $U;
        relTol          0;
    }
   
 
}

SIMPLE
{
    nNonOrthogonalCorrectors 1;
    residualControl
    {
        p              1e-5;
        U              1e-5;
    }

 
}

relaxationFactors
{
    fields
    {
        p              0.1;
    }
    equations
    {
        U              0.1;
        k              0.05;
        omega          0.05;
    epsilon        0.1;
    }
}

cache
{
    grad(U);
}

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





//

fvSchemes

Code:

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

gradSchemes
{
    default cellMDLimited Gauss linear 0.5;
    grad(U) cellMDLimited Gauss linear 0.5;
    grad(omega) cellLimited leastSquares 1.0;
    grad(epsilon) cellLimited leastSquares 1.0;

}
/*divSchemes
{
    div(phi,U) bounded Gauss linearUpwind grad(U); //bounded Gauss upwind; //
    div(phi,omega) bounded Gauss linearUpwind default; //bounded Gauss upwind; //
    div(phi,epsilon) bounded Gauss linearUpwind default; // bounded Gauss upwind; //
    div(phi,k) bounded Gauss linearUpwind default; //bounded Gauss upwind; //
    div((nuEff*dev(T(grad(U))))) Gauss linear; //Gauss linear; //
}*/
divSchemes
{
    div(phi,U)      bounded Gauss linearUpwindV grad(U); //
    div(phi,omega) bounded Gauss upwind; //bounded Gauss linearUpwind default; //
    div(phi,epsilon) bounded Gauss upwind; //bounded Gauss linearUpwind default; //
    div(phi,k) bounded Gauss upwind; //bounded Gauss linearUpwind default; //
    div((nuEff*dev(T(grad(U))))) Gauss linear; //Gauss linear; //
}

laplacianSchemes
{
    default Gauss linear limited 1;
}
snGradSchemes
{
    default limited 0.777;
}
interpolationSchemes
{
    default        linear;
}

fluxRequired
{
    default        no;
    p;
}

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


kurdt89 October 7, 2015 05:59

1 Attachment(s)
U

Code:

  outlet
    {
        type            inletOutlet;
        inletValue      uniform (0 0 0);
        value          uniform (0 0 0);
    }

    volume_CFD
    {
        type            fixedValue;
        value          uniform (0 0 0);
    }

    inlet1
    {
        type            fixedValue;
        value          uniform ( -3.1337499 0 -7.3826288);
    }

    inlet2
    {
        type            fixedValue;
        value          uniform (0 0 0); //(  3.1337499 0 -7.3826288);
    }

k

Code:

boundaryField
{
    //- Set patchGroups for constraint patches
 

    outlet
    {
        type            inletOutlet;
        inletValue      uniform 0;
        value          uniform 0;
    }

    volume_CFD
    {
        type            kqRWallFunction;
    value        uniform 0;
    }

    inlet1
    {
        type            turbulentIntensityKineticEnergyInlet;
        intensity    0.038;
    value          uniform 1;
    }

    inlet2
    {
        type            turbulentIntensityKineticEnergyInlet;
    intensity    0.038;
        value          uniform 1;
    }


}

nut

Code:

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


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

internalField  uniform 0.11;

boundaryField
{
 
    inlet1
    {
        type            calculated;
    value        uniform 0;
    }

    inlet2
    {
        type            calculated;
    value        uniform 0;
    }

    outlet
    {
        type            calculated;
        value          uniform 0;
    }

    volume_CFD
    {
        type            nutUSpaldingWallFunction;
    value        uniform 0;
    }

 
}

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

and checkMesh logFile
Code:

CMA: no RDMA devices found
CMA: no RDMA devices found
CMA: no RDMA devices found
CMA: no RDMA devices found
CMA: no RDMA devices found
CMA: no RDMA devices found
--------------------------------------------------------------------------
[[30462,1],5]: A high-performance Open MPI point-to-point messaging module
was unable to find any relevant network interfaces:

Module: OpenFabrics (openib)
  Host: node045

Another transport will be used instead, although this may result in
lower performance.
--------------------------------------------------------------------------
CMA: no RDMA devices found
CMA: no RDMA devices found
CMA: no RDMA devices found
CMA: no RDMA devices found
CMA: no RDMA devices found
CMA: no RDMA devices found
/*---------------------------------------------------------------------------*\
| =========                |                                                |
| \\      /  F ield        | OpenFOAM: The Open Source CFD Toolbox          |
|  \\    /  O peration    | Version:  2.2.x                                |
|  \\  /    A nd          | Web:      www.OpenFOAM.org                      |
|    \\/    M anipulation  |                                                |
\*---------------------------------------------------------------------------*/
Build  : 2.2.x-61b850bc107b
Exec  : checkMesh -parallel
Date  : Oct 07 2015
Time  : 11:44:56
Host  : "node045"
PID    : 11530
Case  : /CALCULS/maione1/CFDEM/tutorials/cfdemSolverIB/MeshMedia
nProcs : 12
Slaves :
11
(
"node045.11531"
"node045.11532"
"node045.11533"
"node045.11534"
"node045.11535"
"node037.14144"
"node037.14145"
"node037.14146"
"node037.14147"
"node037.14148"
"node037.14149"
)

Pstream initialized with:
    floatTransfer      : 0
    nProcsSimpleSum    : 0
    commsType          : nonBlocking
    polling iterations : 0
sigFpe : Enabling floating point exception trapping (FOAM_SIGFPE).
fileModificationChecking : Monitoring run-time modified files using timeStampMaster
allowSystemOperations : Disallowing user-supplied system call operations

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

Create polyMesh for time = 0

[node045:11519] 11 more processes have sent help message help-mpi-btl-base.txt / btl:no-nics
[node045:11519] Set MCA parameter "orte_base_help_aggregate" to 0 to see all help / error messages
Time = 0

Mesh stats
    points:          3454052
    faces:            7085734
    internal faces:  4910183
    cells:            1891053
    faces per cell:  6.3435
    boundary patches: 5
    point zones:      0
    face zones:      0
    cell zones:      0

Overall number of cells of each type:
    hexahedra:    1534837
    prisms:        51297
    wedges:        0
    pyramids:      0
    tet wedges:    1871
    tetrahedra:    69
    polyhedra:    302979
    Breakdown of polyhedra by number of faces:
        faces  number of cells
            4  17986
            5  21538
            6  65018
            7  13858
            8  947
            9  137048
          10  596
          11  242
          12  29823
          13  917
          14  28
          15  11336
          16  194
          17  15
          18  3148
          19  4
          20  5
          21  260
          24  16

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 basic patch addressing...
                  Patch    Faces  Points
                  inlet1    4140    5053
                  inlet2    4122    5031
              volume_CFD  703841  852716
                  outlet    4338    4956

Checking geometry...
    Overall domain bounding box (-0.18 -0.18 -0.010004) (0.18 0.18 2.5)
    Mesh (non-empty, non-wedge) directions (1 1 1)
    Mesh (non-empty) directions (1 1 1)
    Boundary openness (1.1211e-15 4.3906e-18 -7.4201e-18) OK.
    Max cell openness = 1.6134e-15 OK.
    Max aspect ratio = 32.143 OK.
    Minimum face area = 4.0523e-09. Maximum face area = 0.00031261.  Face area magnitudes OK.
    Min volume = 9.7672e-12. Max volume = 5.0375e-06.  Total volume = 0.22924.  Cell volumes OK.
    Mesh non-orthogonality Max: 65.006 average: 12.563
    Non-orthogonality check OK.
    Face pyramids OK.
 ***Max skewness = 19.309, 917 highly skew faces detected which may impair the quality of the results
  <<Writing 917 skew faces to set skewFaces
    Coupled point location match (average 0) OK.

Failed 1 mesh checks.

End

Finalising parallel run

attached there are also the residual.

the geometry consist on a pipe with many holes on its wall, releasing air in the main core of the reactor which is cylindrical

can somebody help me on that?

thank you all

kurdt89 October 7, 2015 06:06

2 Attachment(s)
I attach also some slice where you can see the main pipe on the left and the differents holes of injection

RodriguezFatz October 8, 2015 03:05

Hi,
1) Can you make a better mesh without these skewed cells?
2) I don't really understand the geometry. Maybe it is not important, but could you try to post a picture of the whole thing, with highlighted inlets and outlets?
3) Can you post some log output?
4) In your residual plot you see some convergence finally at the end. Why did you stop calculating and what did you change at it=12000?

RodriguezFatz October 8, 2015 03:37

As I understand it your solver settings are not very good. If there is no special reason you should not deactivate the relTol in SIMPLE. In SIMPLE it is not needed that every single linear equation is solved to a very low residual (what you do by just using the "tolerance"). This is, because you do the outer (SIMPLE-) iterations anyway and you just need the inner interations solved in a way that the outer algorithm remains stable. Thus, I usually use relTol=0.1 and set the tolerance to some very low value, such as 1e-18.
Secondly, you set the laplacian scheme to "limited 1", which means you use the corrected scheme. This is not the most stable one. Begin with "limited 0", this is the uncorrected scheme and if that works you can start to increase the numer to 0.3, 0.5, ...

kurdt89 October 8, 2015 05:58

thank you very much I will try your suggestions, i noticed there was something not right about the solvers. I will post here my results.
The problem is I do this mesh with snappy because is a really complicated mesh. Sorry I cannot post the entire mesh however the inlet is on the pipe on the left. Sorry I don't really remember what I've changed. I will post the log output when I go back to my office tomorrow. however thank you very much for your help, is really appreciated

sharonyue October 10, 2015 17:00

Hello, Kurdt89,

Im not very familar with the your simulation. But looks like you are simulating a reactor(is there bubbles of droplets?). As we know SST k-omega is highly appropriate for strong adverse pressure gradient. In my simulations, such as stirred tanks, bubble columns, I just use k-epsilon.

Could you please share some experience with SST k-omega model in your reactor simulaiton?

Thanks.

kurdt89 October 12, 2015 02:36

In my case the problem is that I cannot control the global value of y+ inside the whole thing and also that different regimes exhist, there are laminar regions in which the k-epsilon family would certainly crush (already tested).
So i use k omega sst with scalable functions, which is fine but highly unstable, I still have problems with convergence.


All times are GMT -4. The time now is 00:33.