Bulk Richardson number issues


As part of my PhD I am comparing a number of parameterisations for the Obukhov stability parameter (z/L) which rely on the bulk Richardson number (Rib) as an input. My problem is that the values I am seeing for Rib are lower than those for the gradient (Rig) and flux (Rif) numbers by a factor of around 5 - 10. I have checked my working and the values I am using as input, but I can see no reason for the discrepancy. The formula I am using for Rib is

Rib = g * (theta - theta_0) * z / (theta_0 * u^2)

g = acceleration due to gravity
theta = potential virtual temperature at height z
theta_0 = potential virtual temperature at the surface
u = scalar wind speed

Can anyone suggest where I might be going wrong? I feel that there must be an error but I just can’t find it.


Hello Brian,
I think the bulk Richardson number is given by:
Rib = g * (theta - theta_0) * (z-z_0) / (theta_0 * (u-u_0)^2)
If you are calculating for surface-layer Richardson number then wind speed at the surface is to be assumed zero, then:
Rib = g * (theta - theta_0) * (z-z_0) / (theta_0 * u^2).
The parameters here have the usual meaning with z_0 being the roughness length. Kindly check this and let me know.

I referred: The dependence of the bulk Richardson number on stability in the surface layer, N. M. ZOUMAKIS et. al. 1991.

Thanks Anurag

I am also using Zoumakis, but for the purposes of this calculation, the correction for roughness length makes negligible difference. My main concern is with the difference in the values of the bulk Richardson number compared to the flux and gradient forms, both of which are higher and which agree well with each other. Can you think of any error I might have made that would account for that difference?


Hello Brian,
Apologies for late reply. I can see that change in roughness length negligibly affect the Rib, which based on the literature is true.
It may happen that the surface roughness is different and you may have to account for the terrain ruggedness factors to get the real surface roughness.
The temperature flux at the site would be affected by the obstacles and terrain unevenness so Refer EN:1991-1-4-2005 Wind Actions and see if this works. I can’t think of any other possibility unless all other parameters are one-on-one correlated.

Hi Anurag

Thanks for the follow-up.

Since my last post, I have done some more background work where I have compared my figures with the ones in Mohan & Siddiqui (1998). They also show the bulk Richardson number with lower values than the bulk and flux variations (see the figure below). So, I am almost convinced that my calculation is OK. My problem now is that the parameterisations that I am using agree well with 1/L, but not with z/L as expected. I am using Pleim (2006) and Wouters (2012), both of which estimate z/L from the bulk Richardson number. If you have any further ideas, I’d be glad to hear them!


Essa, K. S. M., Embaby, M. M., Kozae, A. M., Mubarak, F., & Kamel, I. (2016). Estimation of Seasonal Atmospheric Stability and Mixing Height by Using Different Schemes. Proc. Radiation Phys. & Protection Conf., VIII.
Mohan, M., & Siddiqui, T. A. (1998). Analysis of various schemes for the estimation of atmospheric stability classification. Atmospheric Environment, 32(21), 3775—3781.
Pleim, J. (2006). A Simple, Efficient Solution of Flux–Profile Relationships in the Atmospheric Surface Layer. Journal of Applied Meteorology and Climatology, 45(2), 341–347. doi.org/10.1175/JAM2339.1
Wouters, H., de Ridder, K., & van Lipzig, N. P. M. (2012). Comprehensive Parametrization of Surface-Layer Transfer Coefficients for Use in Atmospheric Numerical Models. Boundary-Layer Meteorology, 145(3), 539–550. doi.org/10.1007/s10546-012-9744-3
Richardson number v zeta.png

Hello Brian,
During my work I found that:
if Rib is greater then equal to 0 then z/L equals 10Rib/(1-5Rib) else z/L equals 10*Rib rest all other relations gave me biased (not proper) values. I don’t recall the source that gave me the constants but I think you can find it. I also recall that different relations are accurate for different regions some being more, I would advise going through all the relations you can find and check them one-by-one.
Only logical thing that is left is to check ‘z’, does terrain roughness helped you?-this might increase the ‘z’ you are using.