SimScale CAE Forum

Turbulent k and omega values for external flows


I am simulating 3D turbulent flow around a circular cylinder using k-omega SST at a Re number of 300000.

I have read a lot about turbulent models however I don’t understand how to calculate the k and omega values for the initial conditions and boundary conditions.

How are the values for the initial conditions and boundary conditions different?

Also I have read this: Defining Turbulent Boundary Conditions however it says that Re=300000 for external flow would be regarded as highly turbulent but usually this Re number is only just about turbulent - why is this?

This is my project:

Thank you


Hi @vyvo!

Before we talk about the boundary conditions may I ask why you decided for a RANS type simulation in this case? You have to keep in mind that statistics has been applied a priori to the equations and you will receive a time-averaged flow field corresponding to a long-time exposure. For a LES approach you might have a look at this project from my colleague Ali: Flow around a cylinder. Problem with k-epsilon and k-omega is that you have to make sure that the dissipation is not too high and that everything at the wall is well resolved (good thing we are using k-omega). However I would go for LES anyway and not use the whole length of the cylinder to observe the vortex shedding phenomenon/Kármán Vortex street (in case someone wants to know the precise name).

Before I forget it: Increase the side of your domain like 20xD from the inlet to the cylinder and maybe 40xD from the cylinder to the outlet and also in spanwise direction around 20-40xD. We can compare your results by using some data from the literature - can be done later on. Also do not use wall functions as the flow will separate from the surface of the cylinder thus wall functions will fail to predict the flow behavior anyway so make sure y^+ is around 1.

\underline{\text{Now talking about the parameters:}}

For omega you can use the formula from Darren in the post you mentioned or a slightly changed formula but still dimensionally consistent. For help take this calculator:

\omega = \frac{k^{1/2}}{C_\mu^{1/4}*l}

And for the intensity you can not just go with the formula given by Darren in his post as this is for a pipe/duct. Last but not least let the solver output you the drag as well as the lift coefficient for reference later on. I am however not sure which intensity can be used in this case. I would definitely go with a highly turbulent behavior and use bigger than 5%.

Please add your two cents here @Get_Barried, @vgon_alves & @Anware if necessary and if you think I forgot something.

All the best and happy SimScaling,



Hello @jousefm, thank you for your response.

I chose RANS simulation because I was lead to believe that LES would make resolving near wall regions difficult. Why would LES be a better choice? When you say ‘not use the whole length of the cylinder’, do you mean make the cylinder a shorter length and increase the meshing dimension in that direction?

Why do you suggest that I increase my domain further rather than use the standard 2-3D upstream and 6-8D downstream recommendation?

Another question is that I am confused how to calculate y+, what method do I use to do this?

Thank you


Hi @vyvo!

It really depends on what you want to achieve. If you are fine with smoothed fields as I previously mentioned you can use RANS and a corresponding turbulence model. If you are interested in “instantaneous snapshots” of your flow LES is the way to go. With “length” I mean the longest direction of the cylinder in this case. You can either perform a “2D” simulation but if you are interested in 3D structures you can go with the model you have that’s fine.

If you think 2-3D and 6-8D is sufficient you can give that a try and see if the boundary conditions affect your solution :slight_smile: For y^+ I can give you two nice resources @Get_Barried and I have put together:

I am also inviting @DaleKramer here who is already an expert I dare say :wink:




Hi @jousefm
I have changed my simulation to LES as I am more interested in the instantaneous solutions rather than averaged.

Since wall functions would not be appropriate for my simulation, how do I know that they have not been used? Do certain models use them and others do not?

I would also like to ask about my boundary conditions and whether they are appropriate for trying to model 3D turbulent flow around the cylinder? Should I increase to a greater velocity to show greater turbulence effects?

Thank you


Hi @vyvo,

you would have to explicitly define the wall functions to be used. You do not have to do that if your y^+ value is at approximately 1 with progressive coarsening towards the core of the flow.

You can choose if you want to use wall functions or full resolution.

Well, what turbulent effects are you looking for?




I have ran my simulation but I can’t get it converge? I think it is something wrong with my BC but I don’t really know what the problem is.


Hi @vyvo,

will have a look at it later on :slight_smile:




Hi @vyvo,

Your boundary conditions are fine as you’ve previously successfully ran a simulation with them. I would probably change the top bottom BC to a slip wall so as to reduce the chances that the domain is interacting and influencing your simulation.

The issue, I believe, is your Courant number for the second simulation being significantly higher than the ideal value of 1. SimScale has a great article here that describes what the Courant number is, how to estimate it and a case study to show what can happen based on what Courant number is used.

For your first simulation, assuming I take the smallest cell length I could find (0.01m), with your timestep, your Courant number turns out to be around 23. The second simulation producing a Courant number of 459.

Now the obvious question, after you read the SimScale resource I linked, is, “In both cases, my Courant number exceeded 1 although the first simulation did converge. What gives?”. The “special sauce” in this case is your usage of the PIMPLE algorithm. As shown here in a discussion, the PIMPLE algorithm allows a Courant number of more than 1. Of course, how much more is hard to tell, but I think 459 is much too large. As for why this is possible, I haven’t read through how the PIMPLE equations work. Maybe my friend, @1318980 Darren can help you on how PIMPLE allows the Courant number to exceed 1, albeit at the cost of possibly reduced information about the flow.

So assuming I guessed correctly, lowering your timestep and keeping the Courant number as low as possible should fix your simulation divergence problem. Maybe start with the timestep you’ve already successfully used (0.05) and work from there.

Do let me know if it works. Cheers.



Hi @Get_Barried and @vyvo

yes it is hard to say what is too high, if a flow is ‘steady’ then it might be ok to push that far, however, the ability can depend upon many things such as turbulence model, and velocity fluctuations particularly present if using LES. Also, In terms of actual speed up form pushing courant number, I haven’t so far seen much due to the increase of outer iterations and reduction in relaxation factors required. Setting the outer iterations to 1 and the relaxation to 1, as well as max courant number to about 0.5 has given me some fast results, but a stable setup would be relaxation around 0.5-0.7 with outer iterations from about 5-50.