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/)
-   -   icoFoam unstable for ahmed body (https://www.cfd-online.com/Forums/openfoam-solving/136848-icofoam-unstable-ahmed-body.html)

rogibear June 5, 2014 08:37

icoFoam unstable for ahmed body
 
Hi, I'm trying to run a very simple ahmed body case with low Reynolds number (100 & 1000) with time steps of 0.001 & 0.0001 for each case. The mesh is pretty course so I'm not expecting to get useable results but I am trying to get the simulation to complete. The problem is the courant number keeps increasing >1 by the timestep doesn't seem to have much effect on it.

see below:
Code:

Courant Number mean: 0.000359148 max: 0.793021
DILUPBiCG:  Solving for Ux, Initial residual = 0.923248, Final residual = 3.32352e-09, No Iterations 2
DILUPBiCG:  Solving for Uy, Initial residual = 0.969197, Final residual = 2.0091e-09, No Iterations 2
DILUPBiCG:  Solving for Uz, Initial residual = 0.930231, Final residual = 9.23342e-10, No Iterations 2
DICPCG:  Solving for p, Initial residual = 0.17526, Final residual = 9.82767e-07, No Iterations 146
time step continuity errors : sum local = 6.91405e-09, global = 4.97837e-12, cumulative = -4.69581e-09
DICPCG:  Solving for p, Initial residual = 0.000412786, Final residual = 8.75322e-07, No Iterations 77
time step continuity errors : sum local = 6.42496e-09, global = 1.81337e-10, cumulative = -4.51448e-09
ExecutionTime = 1028.69 s  ClockTime = 1031 s

Time = 0.0351

Courant Number mean: 0.000366532 max: 0.7604
DILUPBiCG:  Solving for Ux, Initial residual = 0.969019, Final residual = 3.0867e-09, No Iterations 2
DILUPBiCG:  Solving for Uy, Initial residual = 0.969175, Final residual = 1.89008e-09, No Iterations 2
DILUPBiCG:  Solving for Uz, Initial residual = 0.935075, Final residual = 1.67906e-09, No Iterations 2
DICPCG:  Solving for p, Initial residual = 0.174915, Final residual = 9.83657e-07, No Iterations 146
time step continuity errors : sum local = 7.24729e-09, global = -5.65332e-12, cumulative = -4.52013e-09
DICPCG:  Solving for p, Initial residual = 0.000413647, Final residual = 9.5122e-07, No Iterations 35
time step continuity errors : sum local = 7.31108e-09, global = -4.48088e-10, cumulative = -4.96822e-09
ExecutionTime = 1032.19 s  ClockTime = 1034 s

Time = 0.0352

Courant Number mean: 0.000373678 max: 0.872445
DILUPBiCG:  Solving for Ux, Initial residual = 0.925273, Final residual = 4.64637e-09, No Iterations 2
DILUPBiCG:  Solving for Uy, Initial residual = 0.968993, Final residual = 2.77035e-09, No Iterations 2
DILUPBiCG:  Solving for Uz, Initial residual = 0.930175, Final residual = 1.26008e-09, No Iterations 2
DICPCG:  Solving for p, Initial residual = 0.174619, Final residual = 9.7952e-07, No Iterations 146
time step continuity errors : sum local = 7.55802e-09, global = 5.9816e-12, cumulative = -4.96224e-09
DICPCG:  Solving for p, Initial residual = 0.000445268, Final residual = 9.10332e-07, No Iterations 77
time step continuity errors : sum local = 7.3276e-09, global = 2.08616e-10, cumulative = -4.75362e-09
ExecutionTime = 1035.99 s  ClockTime = 1038 s

Time = 0.0353

Courant Number mean: 0.000381645 max: 0.818073
DILUPBiCG:  Solving for Ux, Initial residual = 0.96842, Final residual = 4.16886e-09, No Iterations 2
DILUPBiCG:  Solving for Uy, Initial residual = 0.968974, Final residual = 2.53332e-09, No Iterations 2
DILUPBiCG:  Solving for Uz, Initial residual = 0.935703, Final residual = 2.32248e-09, No Iterations 2
DICPCG:  Solving for p, Initial residual = 0.174293, Final residual = 9.80834e-07, No Iterations 146
time step continuity errors : sum local = 7.92459e-09, global = -6.76192e-12, cumulative = -4.76038e-09
DICPCG:  Solving for p, Initial residual = 0.000447096, Final residual = 9.42898e-07, No Iterations 35
time step continuity errors : sum local = 7.94622e-09, global = -3.75958e-10, cumulative = -5.13634e-09
ExecutionTime = 1039.07 s  ClockTime = 1041 s

Time = 0.0354

Courant Number mean: 0.000389596 max: 0.960098
DILUPBiCG:  Solving for Ux, Initial residual = 0.927154, Final residual = 6.49988e-09, No Iterations 2
DILUPBiCG:  Solving for Uy, Initial residual = 0.968825, Final residual = 3.79038e-09, No Iterations 2
DILUPBiCG:  Solving for Uz, Initial residual = 0.930027, Final residual = 2.14034e-09, No Iterations 2
DICPCG:  Solving for p, Initial residual = 0.174019, Final residual = 9.76577e-07, No Iterations 146
time step continuity errors : sum local = 8.26213e-09, global = 7.12199e-12, cumulative = -5.12922e-09
DICPCG:  Solving for p, Initial residual = 0.000480689, Final residual = 9.48658e-07, No Iterations 77
time step continuity errors : sum local = 8.37163e-09, global = 2.40243e-10, cumulative = -4.88898e-09
ExecutionTime = 1042.65 s  ClockTime = 1045 s

Time = 0.0355

Courant Number mean: 0.000398198 max: 0.877074
DILUPBiCG:  Solving for Ux, Initial residual = 0.967843, Final residual = 5.58373e-09, No Iterations 2
DILUPBiCG:  Solving for Uy, Initial residual = 0.968759, Final residual = 3.34602e-09, No Iterations 2
DILUPBiCG:  Solving for Uz, Initial residual = 0.936349, Final residual = 3.19647e-09, No Iterations 2
DICPCG:  Solving for p, Initial residual = 0.17371, Final residual = 9.78324e-07, No Iterations 146
time step continuity errors : sum local = 8.66548e-09, global = -8.01879e-12, cumulative = -4.897e-09
DICPCG:  Solving for p, Initial residual = 0.000483549, Final residual = 9.38136e-07, No Iterations 35
time step continuity errors : sum local = 8.66638e-09, global = -2.75065e-10, cumulative = -5.17206e-09
ExecutionTime = 1045.74 s  ClockTime = 1048 s

Time = 0.0356

Courant Number mean: 0.000407007 max: 1.06032
DILUPBiCG:  Solving for Ux, Initial residual = 0.928911, Final residual = 9.04348e-09, No Iterations 2
DILUPBiCG:  Solving for Uy, Initial residual = 0.968677, Final residual = 5.06989e-09, No Iterations 2
DILUPBiCG:  Solving for Uz, Initial residual = 0.929783, Final residual = 6.0862e-09, No Iterations 2
DICPCG:  Solving for p, Initial residual = 0.173457, Final residual = 9.73925e-07, No Iterations 146
time step continuity errors : sum local = 9.032e-09, global = 8.40815e-12, cumulative = -5.16365e-09
DICPCG:  Solving for p, Initial residual = 0.000519323, Final residual = 9.90508e-07, No Iterations 77
time step continuity errors : sum local = 9.58036e-09, global = 2.7687e-10, cumulative = -4.88678e-09
ExecutionTime = 1049.41 s  ClockTime = 1051 s


If you need me to upload the full case I'll put a dropbox link up.

Thanks,

Adam

rogibear June 5, 2014 10:15

My checkMesh:

Code:

Create time

Create polyMesh for time = 0

Time = 0

Mesh stats
    points:          425032
    faces:            1047816
    internal faces:  949412
    cells:            312017
    faces per cell:  6.40102
    boundary patches: 7
    point zones:      0
    face zones:      0
    cell zones:      0

Overall number of cells of each type:
    hexahedra:    265788
    prisms:        0
    wedges:        0
    pyramids:      0
    tet wedges:    0
    tetrahedra:    0
    polyhedra:    46229
    Breakdown of polyhedra by number of faces:
        faces  number of cells
            6  9227
            8  442
            9  31959
          10  23
          11  7
          12  4313
          14  1
          15  244
          18  13

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      400      441  ok (non-closed singly connected)
                  outlet      400      441  ok (non-closed singly connected)
                  front    1200    1281  ok (non-closed singly connected)
                    back    1200    1281  ok (non-closed singly connected)
                  floor    1200    1281  ok (non-closed singly connected)
                ceiling    1200    1281  ok (non-closed singly connected)
              ahmedbody    92804    93895      ok (closed singly connected)

Checking geometry...
    Overall domain bounding box (-10 -5 -5) (20 5 5)
    Mesh (non-empty, non-wedge) directions (1 1 1)
    Mesh (non-empty) directions (1 1 1)
    Boundary openness (1.78452e-18 -2.49746e-17 -2.72932e-17) OK.
    Max cell openness = 2.54425e-16 OK.
    Max aspect ratio = 1.00192 OK.
    Minimum face area = 6.09961e-05. Maximum face area = 0.25.  Face area magnitudes OK.
    Min volume = 4.7638e-07. Max volume = 0.125.  Total volume = 2995.38.  Cell volumes OK.
    Mesh non-orthogonality Max: 25.3078 average: 10.4983
    Non-orthogonality check OK.
    Face pyramids OK.
    Max skewness = 1.00128 OK.
    Coupled point location match (average 0) OK.

Mesh OK.

End

I'm guessing it has something to do with the polyhedra cells?

alexeym June 5, 2014 10:47

Hi,

You keep dt constant; as flow develops, velocity in certain regions increases, and so Courant number. You can try to add lines

Code:

adjustTimeStep  yes;

maxCo          0.2;

to controlDict.

bennn June 5, 2014 10:47

Coarse mesh will create instabilities. What's your y+ ? What's your turbulence model ?

Why do you want quick and dirty results ? If you really want it I suggest changing schemes, convergence criterion and relaxation.

max Courant > 1 does not necessarily mean your run is crashed. It can stay stable with courant > 10.

rogibear June 5, 2014 11:19

Quote:

Originally Posted by alexeym (Post 495730)
Hi,

You keep dt constant; as flow develops, velocity in certain regions increases, and so Courant number. You can try to add lines

Code:

adjustTimeStep  yes;

maxCo          0.2;

to controlDict.

Can you do that for transient flow??

Quote:

Originally Posted by bennn (Post 495731)
Coarse mesh will create instabilities. What's your y+ ? What's your turbulence model ?

Why do you want quick and dirty results ? If you really want it I suggest changing schemes, convergence criterion and relaxation.

max Courant > 1 does not necessarily mean your run is crashed. It can stay stable with courant > 10.

I'm not running any turbulence models yet.

I'm not too interested in the results as I just want a base to start from to then continually improve the quality. Thats pretty much all

True but if I can't get it to run at <1 at this stage there is something fundamentally wrong.


Anyway I think I have found the issue now. The surface of the ahmed body was causing the polyhedral cells. I've cleaned it up and they have reduced and the sim is stable

alexeym June 5, 2014 17:33

Quote:

Originally Posted by rogibear (Post 495746)
Can you do that for transient flow??

Why not?

Also not quite get the reason for using icoFoam instead of pisoFoam or pimpleFoam.


All times are GMT -4. The time now is 10:29.