Cloud fraction diagnostic documentation

450 views
Skip to first unread message

Oscar Chimborazo

unread,
Apr 10, 2018, 12:45:51 PM4/10/18
to wrfpython-talk
Hello users,

I am testing the cloud fraction diagnostic for my research, and I would like to know how the calculation of this diagnostic is done. I see in the User API information that wrf.cloudfrac needs relative humidity data, but I would like to know how cloud fraction is calculated at each level (low, mid, high).

Thank you for your help,

Oscar

Bill Ladwig

unread,
Apr 10, 2018, 1:26:52 PM4/10/18
to Oscar Chimborazo, wrfpython-talk
Hi Oscar,

The source code is in the Fortran directory with the file being named wrf_cloud_fracf.f90, with the function being DCLOUDFRAC2 in the latest wrf-python release.


The algorithm is fairly simple. The short version is:

For each cloud type range (low, mid, or high), find the max RH for that cloud range, then apply the following to get the cloud fraction:
 
lowc(i,j) = 4.0*low_max_rh(i,j)/100. - 3.0
midc(i,j) = 4.0*mid_max_rh(i,j)/100. - 3.0
highc(i,j) = 2.5*high_max_rh(i,j)/100. - 1.5

Hope this helps,

Bill



--
You received this message because you are subscribed to the Google Groups "wrfpython-talk" group.
To unsubscribe from this group and stop receiving emails from it, send an email to wrfpython-talk+unsubscribe@ucar.edu.
To post to this group, send email to wrfpyth...@ucar.edu.
Visit this group at https://groups.google.com/a/ucar.edu/group/wrfpython-talk/.

Oscar Chimborazo

unread,
Apr 10, 2018, 2:36:21 PM4/10/18
to Bill Ladwig, wrfpython-talk
Thank you very much for the answer Bill,

I saw the source code, however  I have two more questions, could you please clarify this:

First question: are the ranges of the cloud types defined as:

low -> from low_threshold to mid_threshold
mid -> from mid_threshold to high_threshold
high -> from high_threshold to model top?

Second question: what is the purpose of the values 4.0 and 3.0 in the algorithm and why  are they different for the high clouds (2.5 and 1.5)?

Best regards,

Oscar  

Bill Ladwig

unread,
Apr 10, 2018, 5:01:11 PM4/10/18
to Oscar Chimborazo, wrfpython-talk
Hi Oscar,

The thresholds are:

low_thresh <= low_clouds < mid_thresh
mid_thesh <= mid_clouds < high_thresh
high_thresh <= high_clouds

The code came from the WRF group and the developer that wrote the algorithm has moved on from NCAR, so I'm not sure where she got the equations from. But I suspect they are from a simplification of several empirical papers on the subject, or pulled directly from the WRF source code. For the 4.0 and 3.0 case, cloud fraction numbers start be be non-zero after 75% relative humidity is found for a grid volume. For the high clouds, this number drops to 60%. 

In both cases, this algorithm is trying to estimate the cloud fraction based on one number for RH that represents a decent sized volume. If you have a 3.3km x 3.3km x 1 km, that's a pretty large volume. If you have 50% of that volume that is 100% RH (i.e. a cloud), surrounded by 50% RH, the entire volume will have an RH value less than 100% (in this case 75%). To an observer from the ground, how much of the sky does this one cloud cover? Probably not very much if that volume is high up. The developer used 75% at lower levels to begin indicating that cloud fractions appear above this threshold. At higher levels, the size of the grid volume gets larger because the vertical spacing increases, so that's my best guess as to why the lower numbers (2.5 and 1.5) are used. 

In reality, this product should be used more qualitatively, because you're trying to create information where there isn't any (at sub-grid level). As another option, WRF has several radiation schemes that will produce cloud fractions, but most of the time the values are either 0 or 1. 

So, the cloud fraction product is a good product to determine where there are probably clouds, but if you compare against a total sky imager, I have no idea how well the results match up. 

(Also, if anything I've typed above is wildly incorrect, and you know the citation for this equation, feel free to chime in and correct me.)

Hope this helps,

Bill 

Oscar Chimborazo

unread,
Apr 10, 2018, 5:22:23 PM4/10/18
to Bill Ladwig, wrfpython-talk
Thanks for the clarification Bill.

Regards,

Oscar
Reply all
Reply to author
Forward
0 new messages