CFD Online Discussion Forums

CFD Online Discussion Forums (
-   OpenFOAM (
-   -   k-omega SST OpenFOAM 1.7 (

paka October 12, 2010 20:05

k-omega SST OpenFOAM 1.7
Good day to everyone!

I'm having a little trouble setting up the case in OpenFOAM 1.7 using k-omega SST turbulence model.

My question is, could anyone of you post/send a sample, simple test case with all the initial files set up for the run.

Whatever I'm and was trying to do, it is not running and I'm not getting any meaningful results.

Thank you very much in advance and I hope someone can help.

All the best!

paka October 12, 2010 20:07

I should have mentioned I'm planing to use interFoam for two-phase flow simulation.


val46 October 13, 2010 02:19


what problems exactly do you have?

Have you tried the dambreak tutorial yet?
It uses the k-epsilon model but I think it is a good start. You can also modify this case for the k-omega modell.



paka October 13, 2010 03:15

Hi there,

I'm well familiar with damBreak problem, I managed to run it without trouble and I'm aware and able to set up k-epsilon model without trouble.

I tried to repeat my results with k-omega SST model, however, I cannot succeed. That's why I'm asking if anyone, for example damBreak problem, could set up just a very initial state with the boundary conditions suitable to run the same case with k-omega SST model. I cannot succeed with my case.

Thanks a lot,

paka October 13, 2010 17:28

OK. Problem solved, I guess..

There is tutorial case using omega... incompressible/simpleFoam/motorBike.

Lots of web browsing to get there.


ziad October 13, 2010 19:26

Is the k-omega model even available with the multiphase solvers? The twoPhaseEulerFoam model has its own k-epsilon model and does not allow using the other RAS models as far as I know. I haven't used them all but I think the multiphase models might be like that.

The motorbike problem uses simpleFoam, a steady-state single-phase RAS model which allows loading the RAS turbulence models that come with Foam.

paka October 13, 2010 20:22

interFoam uses RASProperties library, I assume it is possible to use different turbulence models. VoF works with k-epsilon, I think it should also work with k-omega and k-omega SST.

At the moment, I'm running some tests and I'm getting "some" output. Gamma field doesn't look very pretty, but it is understandable since at that point I'm using very coarse mesh and time-step and just want to see if I can run different models.

Can anyone comment on that? I'm still at the learning stage of OpenFOAM, just testing its capability.


ziad October 13, 2010 22:19

simpleFoam.dep has the following header files in it:

simpleFoam.dep: $(WM_PROJECT_DIR)/src/turbulenceModels/incompressible/RAS/RASModel/RASModel.H
simpleFoam.dep: $(WM_PROJECT_DIR)/src/turbulenceModels/incompressible/turbulenceModel/turbulenceModel.H

and interFoam only has the second header file just like bubbleFoam and co. I think it is the first header file which is required for the various RAS turbulence models in openFOAM (see its *.C source files). The second one is merely the turbulenceModel class and namespace definition. It is a must for all models (RAS, laminar and LES). If you look in it you won't find any mention of epsilon or omega, only the kinetic energy which is common to all models turbulent or not.

The multiphase models in openFOAM are mostly based on Henrik Rusche's PhD thesis and he uses the Gosman k-epsilon model which is hard-coded with bubbleFoam and co. I am not even aware of any applications of k-omega in multiphase flow solvers yet. Of course I hope I am wrong cause I would love to use SST in multiphase. In Fluent 6 you are restricted to the various flavours of k-epsilon offered (standard, RNG, realizable). Don't know how it is in 12 but I'd be very surprised if it was any different. Redefining the RAS model constants for multiphase is not a simple task and most people have only looked at k-epsilon so far.

paka October 13, 2010 22:40


Thanks a lot for you reply.

Regarding the Fluent package, I'm pretty sure you can also run two-phase flow simulations using VoF using k-omega and k-omega SST models. The question is how reliable is their application. I heard many people not trusting Fluent, on the other hand it still provides "some" results.

Actually, I try to compare numerical results to the experimental data. Right now I was unsuccessful getting some good measures using Fluent's k-epsilon model. On the other hand k-omega SST gives some possibly acceptable results.

Now I would like to get some results using OpenFOAM.


ziad October 13, 2010 23:38

Right, VoF not Eulerian model! You're right VoF does allow use of k-omega in Fluent. Guess you don't have to redefine the constants then cause the fluids are not inter-penetrating. Would be curious to see where they load the turbulence model in interFoam cause it looks very similar to bubbleFoam.

Did a quick search on VoF and k-omega and it seems to be give better results than k-epsilon in most hits. K-omega was originally developed for enclosed flows anyway and works better with boundaries.

Did you try your SST test-case with Fluent or OpenFoam?

paka October 14, 2010 03:13

I don't understand something. "interFoam" solver incorporates VoF. How come otherwise would you want to solve multiphase (two phase) problem?

I'm a little bit confused. Eulerian, generally means incompressible model, right? So incompressible solver would be still called Eulerian, is it right? What you mean by Eulerian vs. VoF?

Sorry, but I'm not fluids specialist, just a civil engineer :)

Yes, I ran some tests. First using Fluent. k-epsilon for some reason brings some not very good looking results. k-omega SST gave some more expected results. I don't care much about accurate result at that point, I just want to verify those results with OpenFOAM.

Now I'm testing k-epsilon with OpenFOAM. I also wanted to test k-omega SST for two-phase flow. However, now I hear from you it is not possible to use it with interFoam solver for multiphase flows. If it is not possible, how come I am able to set up the model and define it in the OpenFOAM dictionary... and yes... I'm getting some results. Again, so far my mesh is very coarse, but the whole simulation works.

Can anyone provide some input on that?

ziad October 14, 2010 10:22

Anything more than one fluid is multiphase. VoF is a multiphase approach used when the different fluids are completely separated (immiscible) so you solve one set of equations for one fluid in the region where it flows and the other set for the other fluid where it flows. The interface cells are the only ones where you can have both fluids and this is tracked with the volume fraction alpha1 having values between 0 and 1. Everywhere else in the domain it is either 0 or 1 since you only have one of the fluids at a time.

The Eulerian solver in Fluent is a dispersed flow multiphase solver and the equivalent of bubbleFoam and twoPhaseEulerFoam. The word Eulerian refers to the formulation of the equations, in that it uses an Eulerian frame of reference which is fixed in space as opposed the Lagrangian formulation which uses a Lagrangian frame of reference which moves with the individual particle being tracked.

To make things simple, the Navier-Stokes equations as you usually solve them in most CFD codes are in Eulerian form. Solvers like icoFoam, simpleFoam, pisoFoam etc. all use the Eulerian formulation. Actually even interFoam uses the Eulerian formulation because it does not track individual particles, and yes it is multiphase.

You say you already set up interFoam with SST. Can you run just one iteration and redirect the output in a log file and post it? Just do

interFoam > output.log
and post the output.log file. Don't forget to set printCoeffs to "on" in the RASProperties file.

paka October 14, 2010 16:17

I thought bubbleFoam and twoPhaseEulerFoam also use VoF (btw. what's the difference between them and interFoam? I tried to search for it, but so far I didn't find much information).

Here the code comes:

    alphaK1        0.85034;
    alphaK2        1;
    alphaOmega1    0.5;
    alphaOmega2    0.85616;
    gamma1          0.5532;
    gamma2          0.4403;
    beta1          0.075;
    beta2          0.0828;
    betaStar        0.09;
    a1              0.31;
    c1              10;

Reading g
Calculating field g.h

time step continuity errors : sum local = 2.73224e-06, global = -2.73224e-06, cumulative = -2.73224e-06
DICPCG:  Solving for pcorr, Initial residual = 1, Final residual = 9.39572e-11, No Iterations 285
time step continuity errors : sum local = 2.56822e-16, global = 1.91542e-18, cumulative = -2.73224e-06
Courant Number mean: 4.46994e-05 max: 0.0593157

Starting time loop

Courant Number mean: 4.46994e-05 max: 0.0593157
Interface Courant Number mean: 0 max: 0
Time = 0.0001

MULES: Solving for alpha1
Liquid phase volume fraction = 6.8306e-07  Min(alpha1) = 0  Max(alpha1) = 1
MULES: Solving for alpha1
Liquid phase volume fraction = 1.36612e-06  Min(alpha1) = 0  Max(alpha1) = 1
MULES: Solving for alpha1
Liquid phase volume fraction = 2.04918e-06  Min(alpha1) = 0  Max(alpha1) = 1
MULES: Solving for alpha1
Liquid phase volume fraction = 2.73222e-06  Min(alpha1) = 0  Max(alpha1) = 1
DICPCG:  Solving for p_rgh, Initial residual = 1, Final residual = 0.0487633, No Iterations 93
time step continuity errors : sum local = 1.33644e-07, global = -1.24748e-08, cumulative = -2.74472e-06
DICPCG:  Solving for p_rgh, Initial residual = 0.0264555, Final residual = 0.00130094, No Iterations 68
time step continuity errors : sum local = 1.06971e-07, global = 8.80192e-09, cumulative = -2.73591e-06
DICPCG:  Solving for p_rgh, Initial residual = 0.00530873, Final residual = 9.45304e-08, No Iterations 185
time step continuity errors : sum local = 5.89045e-12, global = 1.4112e-13, cumulative = -2.73591e-06
DILUPBiCG:  Solving for omega, Initial residual = 1, Final residual = 1.34868e-10, No Iterations 5
DILUPBiCG:  Solving for k, Initial residual = 1, Final residual = 1.37486e-09, No Iterations 5
ExecutionTime = 2.98 s  ClockTime = 3 s

ziad October 15, 2010 09:12


Originally Posted by paka (Post 279263)
I thought bubbleFoam and twoPhaseEulerFoam also use VoF (btw. what's the difference between them and interFoam? I tried to search for it, but so far I didn't find much information).

Yeah we could use more documentation. Henrik Rusche's thesis provides most of the info on bubbleFoam and twoPhaseEulerFoam but there's nothing else. bubbleFoam and twoPhaseEulerFoam use a full two-fluid formulation so they solve 2 sets of N-S equations, one for each fluid with momentum and mass coupling terms. They do not do interface tracking.

The inter*Foam family of multiphase solvers relies instead on a one-fluid mixture formulation and solves only only one set of N-S equations with a variable alpha. This is probably why it is possible to use k-omega with them since you are still solving for one fluid, the mixture. The interface is tracked based on alpha with the additional VoF equation.

Not sure about the rest of the multiphase solvers.

paka October 15, 2010 09:35

Yeah, that's what it seems for me.

So bubbleFoam seems like it is Euler-Euler type equation. Hmm... It's not what I need, I don't really care about bubble dispersion etc. Now I remember my past reading, VoF should make a trick.

Coming back to interFoam, that's what it seems. I don't feel confident saying what interFoam does exactly, but as much as I learned and I can see, I think, any of the turbulence models should work with it, since all is coupled through VoF, which is kind of a weighting function.

Anyways, thanks for your time and reply.

ziad October 15, 2010 09:46

Actually they are all Eulerian formulations. They just treat the additional fluid differently. I usually use twoPhaseEulerFoam but soon I will need to compute film formation and this will require interFoam.


paka October 15, 2010 15:29

Yes, yes, in Eulerian frame.

Film? Can you elaborate more about it? I would gladly hear why for that kind of case you would need interFoam and not twoPhase... solver.


ziad October 23, 2010 14:10


Originally Posted by paka (Post 279415)
Yes, yes, in Eulerian frame.

Film? Can you elaborate more about it? I would gladly hear why for that kind of case you would need interFoam and not twoPhase... solver.


Hi Kristian,

Sorry for the late reply. I use twoPhaseEulerFoam to compute dispersed flows of solid particles in air and interFoam for a fully segregated film transport on pipe walls.


LamiaOF2.1 June 12, 2014 09:01

kwsst model
hello everybody
I am having a problem with boundary conditions of the model KW SST
for turbulent Intensity KineticEnergy Inlet "k" = 0.05 or 5% and velocity U reference = 4.15, and Y reference 0.35 mm so what would be the value of Omega?
please I need help
I dont know what to put in:
internalField uniform ??
value uniform??

All times are GMT -4. The time now is 00:33.