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

"Glitches" in k and omega

Register Blogs Members List Search Today's Posts Mark Forums Read

Reply
 
LinkBack Thread Tools Display Modes
Old   January 20, 2013, 16:54
Default "Glitches" in k and omega
  #1
Member
 
Join Date: Jan 2011
Posts: 45
Rep Power: 7
buffi is on a distinguished road
Hi,

I am simulating the flow in a channel using a modified simpleFoam and the k-omega-SST model. Every now and then, the solver can't solve for k or omega and their values just explode. Sometimes the simulation recovers from that state within a few hundred timesteps, sometimes it doesn't. Here is a sample output for a normal timestep and a problematic one:

Code:
Time = 4180

DILUPBiCG:  Solving for Ux, Initial residual = 0.002454946797335455, Final residual = 2.118201461652769e-08, No Iterations 6
DILUPBiCG:  Solving for Uy, Initial residual = 0.001256415853039685, Final residual = 1.037692770489594e-08, No Iterations 6
DILUPBiCG:  Solving for Uz, Initial residual = 0.003283733002456741, Final residual = 2.981279918575045e-09, No Iterations 7
GAMG:  Solving for p, Initial residual = 0.02201556239585755, Final residual = 1.282423077370965e-07, No Iterations 16
GAMG:  Solving for p, Initial residual = 0.008240116175764454, Final residual = 8.139580885669834e-08, No Iterations 12
time step continuity errors : sum local = 1.531473863748542e-06, global = -7.156743507425181e-15, cumulative = -1.45393053629309e-12
DILUPBiCG:  Solving for omega, Initial residual = 8.626697921486998e-06, Final residual = 8.156673087094997e-11, No Iterations 5
bounding omega, min: -877.5914029924204 max: 9963507.932995282 average: 104575.2141635721
DILUPBiCG:  Solving for k, Initial residual = 0.003874747711704138, Final residual = 5.92104344143439e-09, No Iterations 7
bounding k, min: -0.0001332252168376633 max: 0.05713142005592581 average: 0.003205000635194682
S_PRO= 4.802711559863782e-06W/K
S_PRO,D= 2.028083115231596e-06W/K
S_PRO,D'= 2.774628444632186e-06W/K
S_PRO,C= 0W/K
S_PRO,C'= 0W/K
ExecutionTime = 1411.6 s  ClockTime = 1434 s

Time = 4181

DILUPBiCG:  Solving for Ux, Initial residual = 0.002460388678483852, Final residual = 9.17931475513598e-10, No Iterations 7
DILUPBiCG:  Solving for Uy, Initial residual = 0.001256478971499746, Final residual = 1.16998685088727e-08, No Iterations 6
DILUPBiCG:  Solving for Uz, Initial residual = 0.003284937635407826, Final residual = 2.670988173110144e-08, No Iterations 5
GAMG:  Solving for p, Initial residual = 0.02191503352549878, Final residual = 1.226826542535508e-07, No Iterations 16
GAMG:  Solving for p, Initial residual = 0.008195653865403671, Final residual = 7.521263032788438e-08, No Iterations 12
time step continuity errors : sum local = 1.415562053229773e-06, global = 1.775764236376485e-15, cumulative = -1.452154772056713e-12
DILUPBiCG:  Solving for omega, Initial residual = 8.719510075834142e-06, Final residual = 4808428634545.903, No Iterations 1001
bounding omega, min: -2.164755144508585e+21 max: 3.598949521217116e+21 average: 1.308210762796994e+17
DILUPBiCG:  Solving for k, Initial residual = 0.3147840750606549, Final residual = 1.995451694496316e-16, No Iterations 1
bounding k, min: -4.418770186074049e-05 max: 0.05208677946321078 average: 0.001778830031969948
S_PRO= 1262457298.893128W/K
S_PRO,D= 2.02929169556324e-06W/K
S_PRO,D'= 1262457298.893126W/K
S_PRO,C= 0W/K
S_PRO,C'= 0W/K
ExecutionTime = 1448.59 s  ClockTime = 1471 s
I changed some values in my fvSolution during this simulation, but not when this behavior occured.

My fvSchemes for k and omega:

Code:
ddtSchemes
{
  default steadyState;
}

gradSchemes
{
  default cellLimited Gauss linear 1;
}

divSchemes
{
  default Gauss linear;
  div(phi,U) Gauss limitedLinearV 1;
  div(phi,T) Gauss upwind; 
}

laplacianSchemes
{
  default Gauss linear limited 0.333;
}

interpolationSchemes
{
  default linear;
}

snGradSchemes
{
  default limited 0.333;
}

fluxRequired
{
  default no;
  p;
}
relTol for k and omega is 1e-5, relaxationFactors are 0.7 (I had them as low as 0.3, but glitches occured as well)

Has anyone some advice for me regarding what could be wrong and what I could do about this?

Regards

Christoph
buffi is offline   Reply With Quote

Old   January 21, 2013, 15:08
Default
  #2
Member
 
Eric Robertson
Join Date: Jul 2012
Posts: 95
Rep Power: 6
msuaeronautics is on a distinguished road
Try dropping your relaxation factor for omega and/or k to something less than 0.1, i.e. 0.05 or so.

I have recently run a kOmegaSST sim on a submarine and would have similar issues with the bounding omega exploding. Dropping the relaxation to 0.05 fixed it for me.
msuaeronautics is offline   Reply With Quote

Old   January 21, 2013, 19:00
Default
  #3
Senior Member
 
chegdan's Avatar
 
Daniel P. Combest
Join Date: Mar 2009
Location: St. Louis, USA
Posts: 573
Rep Power: 20
chegdan will become famous soon enoughchegdan will become famous soon enough
Also, you have your default divScheme set to Gauss linear...which is unbounded. You might want to explicitly set the divScheme for your turbulence parameters to something bounded.
chegdan is offline   Reply With Quote

Old   January 22, 2013, 06:31
Default
  #4
Member
 
Join Date: Jan 2011
Posts: 45
Rep Power: 7
buffi is on a distinguished road
Thanks to both of you, I will have to try a number of different things now.

A relaxation factor of 0.1 or even 0.05 sounds really low, but I'll give it a shot if all else fails.

I tried a limited scheme:
Code:
div(phi,omega) Gauss limitedLinear 0 1e9;
which gave me a floating point exception when I restarted the simulation with this scheme enabled, but enabling it afterwards worked (odd!?)

I am currently using a smooth solver, which also seems to run without glithces in k and omega but it's slower than before.
buffi is offline   Reply With Quote

Old   January 22, 2013, 17:08
Default
  #5
Senior Member
 
chegdan's Avatar
 
Daniel P. Combest
Join Date: Mar 2009
Location: St. Louis, USA
Posts: 573
Rep Power: 20
chegdan will become famous soon enoughchegdan will become famous soon enough
I personally have an affinity to the upwind family. For 2.1.x, you could try

Code:
div(phi,omega) Gauss linearUpwind grad(omega);
with
Code:
grad(omega) cellLimited leastSquares 1.0;
and then you can choose from the limiters

Code:
cellMDLimited
cellLimited
faceMDLimited
faceLimited
where these are arranged in order or least diffuse to most diffuse (citation cellMDLimited vs. cellLimited). I like them because they are a little dissipative and help when finding a solution. Also, believe I read in some ANSYS documentation that limiters can lead to stalling of the solution (maybe only in FLUENT?), so be aware of that.
chegdan is offline   Reply With Quote

Old   January 23, 2013, 06:16
Default
  #6
Member
 
Join Date: Jan 2011
Posts: 45
Rep Power: 7
buffi is on a distinguished road
I have OF 2.0.1 here, but I can use your suggestion anyway (at least OF didn't complain). These are my fvSchemes now:

Code:
gradSchemes
{
    default     cellLimited Gauss linear 1;
    grad(omega) cellLimited leastSquares 1.0;
}

divSchemes
{
  default        Gauss linear;
  div(phi,U)     Gauss limitedLinearV 1;
  div(phi,omega) Gauss linearUpwind grad(omega);
}
Let's see if it blows up again!
buffi is offline   Reply With Quote

Old   January 24, 2013, 14:51
Default
  #7
Member
 
Join Date: Jan 2011
Posts: 45
Rep Power: 7
buffi is on a distinguished road
Well, I'm not seeing any problems regarding the glitches I described, but as they only show up occasionally I can't be sure that the schemes you suggested actually did the trick.

One problem though: I have cyclic boundaries and it seems that the suggested schemes have amplified oscillations I already had in my solution.
buffi is offline   Reply With Quote

Old   January 28, 2013, 11:33
Default
  #8
Senior Member
 
chegdan's Avatar
 
Daniel P. Combest
Join Date: Mar 2009
Location: St. Louis, USA
Posts: 573
Rep Power: 20
chegdan will become famous soon enoughchegdan will become famous soon enough
you're still using Gauss linear as a default scheme for some of your variables. This linear scheme may be the source of your errors. I would change your default scheme to none, run your solver and then set each one of the schemes manually in your fvSchemes dictionary.
chegdan is offline   Reply With Quote

Old   January 29, 2013, 04:57
Default
  #9
Member
 
Join Date: Jan 2011
Posts: 45
Rep Power: 7
buffi is on a distinguished road
Quote:
Originally Posted by chegdan View Post
you're still using Gauss linear as a default scheme for some of your variables. This linear scheme may be the source of your errors.
Are you now referring to the glitches I described in the first post or to the oscillations I mentioned in my latest post? However, I now have all schemes set manually, but I have no experience regarding what might be suitable or not.
buffi is offline   Reply With Quote

Reply

Thread Tools
Display Modes

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 On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
Non-physical flow: omega is fixed at inlet aljazari OpenFOAM Running, Solving & CFD 0 November 15, 2012 12:18
overshooting of Omega in SST komega using simpleFoam cm_jubayer OpenFOAM 1 August 26, 2011 13:18
Boundary Conditions for k omega SST dancfd OpenFOAM Pre-Processing 0 June 9, 2011 23:25
Use of k omega turbulence model john_w OpenFOAM Running, Solving & CFD 2 September 22, 2009 05:15
Wall function implementation K Omega SSt cbarry OpenFOAM 3 August 18, 2009 10:09


All times are GMT -4. The time now is 11:28.