y+ value for k-e wall function with high roughness

Questions and remarks about code_saturne usage
Forum rules
Please read the forum usage recommendations before posting.
Post Reply
Cyril_B
Posts: 1
Joined: Tue Jun 03, 2025 5:45 pm

y+ value for k-e wall function with high roughness

Post by Cyril_B »

Hello everyone,

I am conducting some simulations on atmospheric boundary layer cases (with typical domain dimensions of 2 km in length and 150 m in height). Thus, I am working with the atmospheric module, the k-epsilon linear production turbulence model, and a two-scale logarithmic law as the wall function.
The wall function is especially usefull to specify a rougness on my 'ground' boundary condition in order to modelize the land usage (ground asperities, foliage ...).

In some situations i am facing a dilema : i want to set a relatively high rougness value on the ground (e.g., 0.4 m) but also a fine vertical resolution in my mesh (e.g. 1m cell height). This leads to very low y+ values (<10) which is outside the range described in the guidelines (recommandation states "y+ >20, preferabbly around 30"; see documentation/BPG/Cell size at the wall).

I tried, on an empty domain, to see the impact on the velocity of those low y+ values. And it turned out suprinsignly well. The average error on my velocity profile is marginally higher than with a correct y+ value (about 1% of average velocity error increase on a vertical profile by switching my y+ from 30 to 4)

So my question is simple : is the y+ recommandation (>20) really mandatory, or do you think I can proceed (in the case of atmospheric boundary layer simulations) with the 'ground' y+ values as they are?
Or is there any workaround that allows to consider high ground roughness with fine vertical mesh resolution ?

Best regards,

Cyril
Yvan Fournier
Posts: 4224
Joined: Mon Feb 20, 2012 3:25 pm

Re: y+ value for k-e wall function with high roughness

Post by Yvan Fournier »

Hello,

The guidelines are a good starting point, but need updating, and do not take into account some newer options such as the all-y+ law (in k-omega) or low-Reynolds models.

I do not think they were written with the rough law model in mind, as the roughness adds an amount of user modeling, and these options are rarely used outside of atmospheric flows, which were not in the scope of the guidelines at the time they were written. I'll let turbulence experts correct me on this if needed.

So going back to basics, as long as :
- You know why you are trying this from a logical/theoretical point of view;
- You have checked that this works on a validation test case, or that the impact is very small;

You should be fine. Testing this on a range of y+ values to check the behavior of the code is good practice.

Best regards,

Yvan
Post Reply