CFD Online Discussion Forums

CFD Online Discussion Forums (
-   OpenFOAM Running, Solving & CFD (
-   -   Initial Residual for p too high! (

nikesh March 5, 2013 04:58

Initial Residual for p too high!
1 Attachment(s)
Hi all,

I am simulating a simple 2D flat plate flow in OpenFoam using simpleFOAM to validate a new turbulence model that I would like to implement here. This new turbulence model is a slight modification of the kOmegaSST model which includes few new terms into the nut equation.

Results from kOmegaSST model are all OK! However, when I use this new model for the same grid, my initial pressure residuals oscillate around a pretty high value, at around 0.03 while the initial U,k and omega residuals are all at a reasonable convergence criterion, at around 10^-5.

This is not making much sense to me. Because, after some iterations(about 6~7,000) when I extract the results (even without reaching the convergence tolerance) and compare, they don't yet seem so weird or deviating highly from that of the SST's results.

I have checked my code numerous times, doesn't seem to have any problems in there.

Could there be a problem with the solvers I chose?

I am as well wondering how the p-residual is calculated in simpleFOAM.

I would highly appreciate any insights into this!


These are my settings and I've used the same for kOmegaSST (in the pic attached).

immortality March 5, 2013 05:17

Test for one or two order lower p tolernces than U,...
1e-9 or 1e-10

nikesh March 5, 2013 06:23

Tried, yet not much of a difference.

andrei.cimpoeru March 9, 2013 16:51


Basically I am having the same problem.... I just want to ask you if you managed to do it in the end. I am simulating the flow over an aerofoil using k omega sst and simpleFoam with wall functions..........
Have you got any ideas?



nikesh March 10, 2013 01:35

Hii Andrei,
Well, I am still stuck with the same problem. Obviously higher p-residual means mass is not being conserved so well somewhere in the cells. You might want to look into your boundary conditions once more. Basically that is what I am trying to do too. And the schemes and type of mesh you are using for airfoil flow.

andrei.cimpoeru March 10, 2013 07:28


Ok I understand . I am using k omega sst , wall functions and simpleFoam solver ..... I have changed my boundary conditions many times still nothing......for example how you o file looks like and something that I don't understand : how do you calculate
the turbulent kinetic energy K and the rate of dissipation W(omega).......



chegdan March 10, 2013 10:56


There are some strategies that I would try to get these residuals down to something you would like.
  1. Lower your pressure relTol by an order of magnitude compared to U i.e. relTol = 0.001 for P and relTol = 0.01 for U.
  2. Without knowing the mesh you are using you may need to increase the nonorthogonal corrector by 1 or 2. if you are using a tet mesh...then there are many things you can do.
  3. Use first order schemes to start with (you will move to higher order ones later)
  4. Obtain an initital velocity field with potentialFoam
  5. Using simpleFoam, the intial condition from potentialFoam, and first order schemes...turn turbulence OFF and once convergence seems to bottom out, turn turbulence on while the simulation is running
  6. Once a steady-state is obtained, stop the simulation, switch to second order schemes and restart the simulation with turbulence on and see if that helps

There are a lot of other strategies that you can try, but this one might be sufficient. Without knowing more details like divergence schemes; mesh structure and checkmesh results; y+ values; and boundary conditions there is not much to add on my part.

I would look at the thread and then move on to a search of the forum. There are many threads about simpleFoam convergence...but my list of threads is not in front of me right now. good luck.

immortality March 15, 2013 05:17

how can decrease the initial residuals for p in unsteady problems when relaxations are not applicable?

All times are GMT -4. The time now is 13:50.