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

sonicFoam Wedge, Max. Iterations Exceeded, hConstThermo,

Register Blogs Community New Posts Updated Threads Search

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   November 1, 2015, 09:24
Default sonicFoam Wedge, Max. Iterations Exceeded, hConstThermo,
  #1
New Member
 
Join Date: Oct 2015
Location: Trondheim
Posts: 6
Rep Power: 11
v199ah is on a distinguished road
Hi,

I am trying to solve a case where air flows over a wedge at Mach 2.85. The simulation crashes during the first couple of iterations, saying:

Time = 1.5e-06

Code:
Courant Number mean: 0.0158707 max: 0.183703
diagonal:  Solving for rho, Initial residual = 0, Final residual = 0, No Iterations 0
PIMPLE: iteration 1
smoothSolver:  Solving for Ux, Initial residual = 0.652886, Final residual = 0.0641842, No Iterations 2
smoothSolver:  Solving for Uy, Initial residual = 0.81699, Final residual = 0.0816278, No Iterations 87
smoothSolver:  Solving for e, Initial residual = 0.753075, Final residual = 0.0674277, No Iterations 4
smoothSolver:  Solving for p, Initial residual = 0.240634, Final residual = 0.000356542, No Iterations 1
diagonal:  Solving for rho, Initial residual = 0, Final residual = 0, No Iterations 0
time step continuity errors : sum local = 5.44403e-06, global = -3.16265e-06, cumulative = -2.98209e-06
PIMPLE: iteration 2
smoothSolver:  Solving for Ux, Initial residual = 0.279161, Final residual = 0.0277844, No Iterations 131
smoothSolver:  Solving for Uy, Initial residual = 0.181144, Final residual = 0.0181084, No Iterations 673
smoothSolver:  Solving for e, Initial residual = 0.179579, Final residual = 0.0208547, No Iterations 1000
[4] 
[0] 
[0] 
[0] --> FOAM FATAL ERROR: 
[0] Maximum number of iterations exceeded
[0] 
[0]     From function thermo<Thermo, Type>::T(scalar f, scalar T0, scalar (thermo<Thermo, Type>::*F)(const scalar) const, scalar (thermo<Thermo, Type>::*dFdT)(const scalar) const, scalar (thermo<Thermo, Type>::*limit)(const scalar) const) const
[0]     in file /home/openfoam/OpenFOAM/OpenFOAM-2.4.0/src/thermophysicalModels/specie/lnInclude/thermoI.H at line 76.
[0] 
FOAM parallel run aborting
[0] 
[0] #0  Foam::error::printStack(Foam::Ostream&)[4] 
[4] --> FOAM FATAL ERROR: 
[4] Maximum number of iterations exceeded
[4] 
[4]     From function thermo<Thermo, Type>::T(scalar f, scalar T0, scalar (thermo<Thermo, Type>::*F)(const scalar) const, scalar (thermo<Thermo, Type>::*dFdT)(const scalar) const, scalar (thermo<Thermo, Type>::*limit)(const scalar) const) const
[4]     in file /home/openfoam/OpenFOAM/OpenFOAM-2.4.0/src/thermophysicalModels/specie/lnInclude/thermoI.H at line 76.
[4] 
FOAM parallel run aborting
[4] 
[4] #0  Foam::error::printStack(Foam::Ostream&) at ??:?
[0] #1  Foam::error::abort() at ??:?
[4] #1  Foam::error::abort() at ??:?
[0] #2  Foam::species::thermo<Foam::hConstThermo<Foam::perfectGas<Foam::specie> >, Foam::sensibleInternalEnergy>::TEs(double, double, double) const at ??:?
[4] #2  Foam::species::thermo<Foam::hConstThermo<Foam::perfectGas<Foam::specie> >, Foam::sensibleInternalEnergy>::TEs(double, double, double) const at ??:?
[0] #3  Foam::hePsiThermo<Foam::psiThermo, Foam::pureMixture<Foam::constTransport<Foam::species::thermo<Foam::hConstThermo<Foam::perfectGas<Foam::specie> >, Foam::sensibleInternalEnergy> > > >::calculate() at ??:?
[0] #4  Foam::hePsiThermo<Foam::psiThermo, Foam::pureMixture<Foam::constTransport<Foam::species::thermo<Foam::hConstThermo<Foam::perfectGas<Foam::specie> >, Foam::sensibleInternalEnergy> > > >::correct() at ??:?
[4] #3  Foam::hePsiThermo<Foam::psiThermo, Foam::pureMixture<Foam::constTransport<Foam::species::thermo<Foam::hConstThermo<Foam::perfectGas<Foam::specie> >, Foam::sensibleInternalEnergy> > > >::calculate() at ??:?
[4] #4  Foam::hePsiThermo<Foam::psiThermo, Foam::pureMixture<Foam::constTransport<Foam::species::thermo<Foam::hConstThermo<Foam::perfectGas<Foam::specie> >, Foam::sensibleInternalEnergy> > > >::correct() at ??:?
 at ??:?
I have tried running the simulation with the kEpsilon model turned off, it runs perfectly then. Following this discovery i tried different initial conditions for the turbulence vaiables with no success.

Then I suspected the problem to be related with the prism layers, but I have tried varying the distance of the first cell node between 0.25 and 2.5 mm from the wall, also with no success.

Code:
/*---------------------------------------------------------------------------*\
| =========                 |                                                 |
| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
|  \\    /   O peration     | Version:  2.4.0                                 |
|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
|    \\/     M anipulation  |                                                 |
\*---------------------------------------------------------------------------*/
Build  : 2.4.0-f0842aea0e77
Exec   : checkMesh
Date   : Nov 01 2015
Time   : 13:10:19
Host   : "R2-D2"
PID    : 8415
Case   : /home/vegar/OpenFOAM/vegar-2.4.0/run/ComprRamp
nProcs : 1
sigFpe : Enabling floating point exception trapping (FOAM_SIGFPE).
fileModificationChecking : Monitoring run-time modified files using timeStampMaster
allowSystemOperations : Allowing user-supplied system call operations

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

Create polyMesh for time = 0

Time = 0

Mesh stats
    points:           33150
    faces:            82626
    internal faces:   68392
    cells:            24915
    faces per cell:   6.06133
    boundary patches: 11
    point zones:      0
    face zones:       0
    cell zones:       0

Overall number of cells of each type:
    hexahedra:     24163
    prisms:        144
    wedges:        0
    pyramids:      0
    tet wedges:    0
    tetrahedra:    0
    polyhedra:     608
    Breakdown of polyhedra by number of faces:
        faces   number of cells
            6   103
            7   55
            9   361
           12   89

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       23       48  ok (non-closed singly connected)
                  outlet       18       38  ok (non-closed singly connected)
              bottomWall      156      208  ok (non-closed singly connected)
        bottomWallPTrans       92      114  ok (non-closed singly connected)
           bottomWallnoP      153      286  ok (non-closed singly connected)
                 topWall      160      322  ok (non-closed singly connected)
                   front     6332     6678  ok (non-closed singly connected)
                    back     6332     6678  ok (non-closed singly connected)
               prismWall      528      603  ok (non-closed singly connected)
                    midt      144      171  ok (non-closed singly connected)
                   bakre      296      342  ok (non-closed singly connected)

Checking geometry...
    Overall domain bounding box (-0.5 -1.19262e-18 -0.005) (3 0.4 0.005)
    Mesh (non-empty, non-wedge) directions (1 1 1)
    Mesh (non-empty) directions (1 1 1)
    Boundary openness (3.76057e-19 1.27759e-18 4.47521e-15) OK.
    Max cell openness = 3.10974e-16 OK.
    Max aspect ratio = 42.5291 OK.
    Minimum face area = 6.30276e-07. Maximum face area = 0.000570069.  Face area magnitudes OK.
    Min volume = 1.19094e-09. Max volume = 5.50049e-06.  Total volume = 0.0139519.  Cell volumes OK.
    Mesh non-orthogonality Max: 45.8244 average: 4.21381
    Non-orthogonality check OK.
    Face pyramids OK.
    Max skewness = 0.977243 OK.
    Coupled point location match (average 0) OK.

Mesh OK.

End
I also tried lowering the relaxation factors, it still crashes, but it runs a bit longer and gives a different error message, indicating bad boundary conditions. I've tried a lot of different BC's, but none have worked. The case is very similar to the prism tutorial in sonicFoam, I've only added a wall in front of the wedge, and a floor with slip behind it.

Here is the error message with relaxation:

Code:
Courant Number mean: 0.0157718 max: 0.318495
diagonal:  Solving for rho, Initial residual = 0, Final residual = 0, No Iterations 0
PIMPLE: iteration 1
smoothSolver:  Solving for Ux, Initial residual = 0.106831, Final residual = 0.00556157, No Iterations 2
smoothSolver:  Solving for Uy, Initial residual = 0.13155, Final residual = 0.00839035, No Iterations 2
smoothSolver:  Solving for e, Initial residual = 0.39884, Final residual = 0.0391414, No Iterations 18
[4] 
[4] 
[0] 
[0] 
[0] --> FOAM FATAL ERROR: 
[0] Maximum number of iterations exceeded
[0] 
[0]     From function thermo<Thermo, Type>::T(scalar f, scalar T0, scalar (thermo<Thermo, Type>::*F)(const scalar) const, scalar (thermo<Thermo, Type>::*dFdT)(const scalar) const, scalar (thermo<Thermo, Type>::*limit)(const scalar) const) const
[0]     in file /home/openfoam/OpenFOAM/OpenFOAM-2.4.0/src/thermophysicalModels/specie/lnInclude/thermoI.H at line 76.
[0] 
FOAM parallel run aborting
[0] 
[4] --> FOAM FATAL ERROR: 
[4] Maximum number of iterations exceeded
[4] 
[0] #0  Foam::error::printStack(Foam::Ostream&)[4]     From function thermo<Thermo, Type>::T(scalar f, scalar T0, scalar (thermo<Thermo, Type>::*F)(const scalar) const, scalar (thermo<Thermo, Type>::*dFdT)(const scalar) const, scalar (thermo<Thermo, Type>::*limit)(const scalar) const) const
[4]     in file /home/openfoam/OpenFOAM/OpenFOAM-2.4.0/src/thermophysicalModels/specie/lnInclude/thermoI.H at line 76.
[4] 
FOAM parallel run aborting
[4] 
[4] #0  Foam::error::printStack(Foam::Ostream&) at ??:?
[4] #1  Foam::error::abort() at ??:?
[0] #1  Foam::error::abort() at ??:?
[0] #2  Foam::species::thermo<Foam::hConstThermo<Foam::perfectGas<Foam::specie> >, Foam::sensibleInternalEnergy>::TEs(double, double, double) const at ??:?
[4] #2  Foam::species::thermo<Foam::hConstThermo<Foam::perfectGas<Foam::specie> >, Foam::sensibleInternalEnergy>::TEs(double, double, double) const at ??:?
[0] #3  Foam::hePsiThermo<Foam::psiThermo, Foam::pureMixture<Foam::constTransport<Foam::species::thermo<Foam::hConstThermo<Foam::perfectGas<Foam::specie> >, Foam::sensibleInternalEnergy> > > >::calculate() at ??:?
[4] #3  Foam::hePsiThermo<Foam::psiThermo, Foam::pureMixture<Foam::constTransport<Foam::species::thermo<Foam::hConstThermo<Foam::perfectGas<Foam::specie> >, Foam::sensibleInternalEnergy> > > >::calculate() at ??:?
[4] #4  Foam::hePsiThermo<Foam::psiThermo, Foam::pureMixture<Foam::constTransport<Foam::species::thermo<Foam::hConstThermo<Foam::perfectGas<Foam::specie> >, Foam::sensibleInternalEnergy> > > >::correct() at ??:?
[0] #4  Foam::hePsiThermo<Foam::psiThermo, Foam::pureMixture<Foam::constTransport<Foam::species::thermo<Foam::hConstThermo<Foam::perfectGas<Foam::specie> >, Foam::sensibleInternalEnergy> > > >::correct() at ??:?
[4] #5  ? at ??:?
[0] #5   at ??:?
[4] #6  __libc_start_main? in "/lib/x86_64-linux-gnu/libc.so.6"
[4] #7  ? at ??:?
[0] #6  __libc_start_main in "/lib/x86_64-linux-gnu/libc.so.6"
[0] #7   at ??:?
--------------------------------------------------------------------------
MPI_ABORT was invoked on rank 4 in communicator MPI_COMM_WORLD 
with errorcode 1.

NOTE: invoking MPI_ABORT causes Open MPI to kill all MPI processes.
You may or may not see output from other processes, depending on
exactly when Open MPI kills them.
--------------------------------------------------------------------------
?--------------------------------------------------------------------------
mpirun has exited due to process rank 4 with PID 9037 on
node R2-D2 exiting improperly. There are two reasons this could occur:

1. this process did not call "init" before exiting, but others in
the job did. This can cause a job to hang indefinitely while it waits
for all processes to call "init". By rule, if one process calls "init",
then ALL processes must call "init" prior to termination.

2. this process called "init", but exited without calling "finalize".
By rule, all processes that call "init" MUST call "finalize" prior to
exiting or it will be considered an "abnormal termination"

This may have caused other processes in the application to be
terminated by signals sent by mpirun (as reported here).

I've spend a week on trying to get this simple case working, and I'm all out of ideas. All input is welcomed!

Image of the mesh:


Image of Boundaries:


Dropbox Folder with Initial Conditions, fvSchemes, fvSolutions and images.
https://www.dropbox.com/sh/gfxbbzisg...UF6vaplUa?dl=0
v199ah is offline   Reply With Quote

Old   March 14, 2016, 16:48
Default
  #2
Member
 
Join Date: Oct 2015
Posts: 48
Rep Power: 11
masoudsh is on a distinguished road
hi v199ah

i have your problem too.
i tried any way to solve it but no success.
if you solve it comment in this page.

thank you.
masoudsh is offline   Reply With Quote

Old   March 15, 2016, 09:08
Default
  #3
New Member
 
Join Date: Oct 2015
Location: Trondheim
Posts: 6
Rep Power: 11
v199ah is on a distinguished road
I think the problem was that my mesh was simply too coarse. I didn't realize how small the cell sizes and time-steps had to be, but this is of course given by the CFL-condition.
v199ah is offline   Reply With Quote

Old   March 15, 2016, 10:02
Default
  #4
Member
 
Join Date: Oct 2015
Posts: 48
Rep Power: 11
masoudsh is on a distinguished road
you changed the mesh and solved it?
masoudsh is offline   Reply With Quote

Old   March 15, 2016, 10:39
Default
  #5
New Member
 
Join Date: Oct 2015
Location: Trondheim
Posts: 6
Rep Power: 11
v199ah is on a distinguished road
Yes. However, if you already have a fine mesh, try lowering the time-step first. At Mach 3 I think I had a dt in the range of: 5*10^-8 < dt < 10^-6. I changed it manually during the simulation if it was converging and the Courant number was less than 1 to speed up the simulation. You can calculate the maximum stable dt from your minimum cell size and velocity by using the CFL-condition.
v199ah is offline   Reply With Quote

Reply

Tags
hconstthermo, max iterations exceeded, sonicfoam


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
y+ and u+ values with low-Re RANS turbulence models: utility + testcase florian_krause OpenFOAM 114 August 23, 2023 06:37
Moving mesh Niklas Wikstrom (Wikstrom) OpenFOAM Running, Solving & CFD 122 June 15, 2014 07:20
calculation stops after few time steps sivakumar OpenFOAM Running, Solving & CFD 7 March 17, 2013 07:37
Upgraded from Karmic Koala 9.10 to Lucid Lynx10.04.3 bookie56 OpenFOAM Installation 8 August 13, 2011 05:03
Could anybody help me see this error and give help liugx212 OpenFOAM Running, Solving & CFD 3 January 4, 2006 19:07


All times are GMT -4. The time now is 16:18.