CFD Online Discussion Forums

CFD Online Discussion Forums (
-   Main CFD Forum (
-   -   Stabilizing turbulence equation in channel flow (

Biga March 20, 2005 08:28

Stabilizing turbulence equation in channel flow

I'm currently trying to solve a developed turbulent channel flow problem with a FV code. I have several turbulence models implemented into it, such as SA, keps, kom, EASM and Reyolds-stress ones.

I solve the turbulence convection by a 1st-order upwind scheme. Turbulence diffusion is solved by a 2nd-order centred scheme.

In the developed channel flow case, however, convection is definitely zero. Therefore, I won't get any type of artificial dissipation coming from it.

What I'm finding with all turbulence models in this channel flow case is an awkward oscillation of turbulence profiles, very much similar to an odd-even decoupling behaviour.

I can somehow reduce this behaviour by introducing an additional artificial dissipation term to the turbult transport. This additional AD terms are based on a 4th-difference-like operator. For the k equation and eps equation, this approach succeeded with very low amounts of artificial dissipation. For the omega equation, as well as the modified eddy viscosity of Spalart-Allmaras, oscillations can only be removed away from the wall, with higher values of the AD constant, but very large oscillation are still found near the wall.

I would like to know if anyone had this kind of problem. How could I successfully avoid oscillations in the turbulent profiles?

Thanx a lot in advance for your help.

Bak_Flow March 20, 2005 09:29

Re: Stabilizing turbulence equation in channel flo

just one point which you may already have considered. Depending upon how accuratly you solve the linearized equation set (and since very few of us can afford a direct solve) there is the possiblity that we get intermediate solutions during iteration which have negative values of k and/or epsilon. This can happen even if we use a bounded advection discretization just because we don't solve it exactly. This can happen locally with a multigrid method as we send-up coarse grid corrections....and sometimes looks like a odd-even coupling depending on the corrections that are injected! If things work against us then the negative values can lead to negative diffusion. So adding a bit of artificial diffusion keeps the solution on the "right side of the tracks".

What are you using for your linear equation solver? Maybe try a sensativity to grinding in a tighter solution to the linear equations. Also some intermediate checks on negative k, eps, etc.

Just an idea............Bak_Flow

Biga March 21, 2005 08:37

Re: Stabilizing turbulence equation in channel flo
I'm already considering the clipping of k, eps and so on. That's REALLY necessary! =)

The oscillations I'm observing nevertheless are far from the lower bounds of such variables. In other words, it's not the clipping that's causing the problem. I've also turned multigrid off and the same behaviour is observed. =\

I'm solving the turbulence equations by a first-order implicit Euler scheme.


Daniel March 21, 2005 15:25

Re: Stabilizing turbulence equation in channel flo
Well, it may be useless what I am saying, but the details you give me makes me think your grid is poor. I wouldn't use any artificial dissipation with turbulent models, and I'd make a try increasing a lot ( but really a lot! ) the number of points.

Biga March 22, 2005 07:29

Re: Stabilizing turbulence equation in channel flo
I got 60 points inside the boundary layer, and y+ is about 0.3. I don't think that's so poor a grid... is it? =\

Bak_Flow March 22, 2005 21:06

Re: Stabilizing turbulence equation in channel flo

well it sounds like you are have already done a lot of trouble-shooting!

Is there some reason for a "shock" in the turbulence quantities? That is what it would appear similar to..and obviously you have a good grid on you say in your last response!

One useful thing is to take away the fact that these are tubulence scalars, fix a uniform velocity field and solve it as a linear scalar-diffusion equation with sources. You can come up with some appropriate problems by passing a known solution through the differential equations to get the source (RHS) and boundary conditins that are consistient. Then put in this source in your code and see what the solution is, if it reduces regularly (1st order) with grid refinement, etc. You can pick out bugs and something inconsistient.

The other thing I might suspect is boundary condition implementation. How did you do this for the turbulence equtions? Is everything consistient?

Just some ideas.........Bak

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