<p>This is not an explicit answer but might give you an idea. The US National Weather Service forecasters use a tool called GFE to create gridded forecasts, largely starting from raw model data. For most models, even those that have TCDC as an output field, the model sky cover grids are computed by GFE using RH at various levels. For a few of the high resolution mesoscale models, the sky grids use the model cloud cover field and the resulting values are either 0% or 100%. Thus a blend of these differing sources can be used to get a more nuanced output forecast.</p>

CC BY-SA 3.0
2017-08-14T23:55:42.437Z
2017-08-14T23:55:42.437Z
jakewx
<p>I've been looking for the cloud cover estimates provided in the NOAA GFS models.  <a href="http://www.nco.ncep.noaa.gov/pmb/products/gfs/" rel="nofollow noreferrer">This page</a> discusses all their weather products and one of the few I find that includes cloud cover data "Total Cloud Cover [%]" (variable TCDC) is gfs.t00z.pgrb2.0p25.f006 which you can find in <a href="http://www.nco.ncep.noaa.gov/pmb/products/gfs/gfs.t00z.pgrb2.0p25.f006.shtml" rel="nofollow noreferrer">its product description</a>.</p>

<p>Upon extracting that file using the <a href="http://nomads.ncep.noaa.gov/cgi-bin/filter_gfs_0p25.pl?file=gfs.t12z.pgrb2.0p25.f006&amp;lev_10_m_above_ground=on&amp;lev_boundary_layer_cloud_layer=on&amp;lev_convective_cloud_bottom_level=on&amp;lev_convective_cloud_layer=on&amp;lev_convective_cloud_top_level=on&amp;lev_entire_atmosphere=on&amp;lev_entire_atmosphere_%5C%28considered_as_a_single_layer%5C%29=on&amp;lev_high_cloud_bottom_level=on&amp;lev_high_cloud_layer=on&amp;lev_high_cloud_top_level=on&amp;lev_surface=on&amp;all_var=on&amp;leftlon=-160&amp;rightlon=150&amp;toplat=20&amp;bottomlat=30&amp;dir=%2Fgfs.2017041012" rel="nofollow noreferrer">grib filter tool generated URL</a> selecting for the proper layers and variables, this data appears to be just initial values (1 for cloud cover) and 9999 for many of the other values.  I read a lot of <a href="https://www.americanwx.com/bb/topic/38773-gfs-cloud-cover-what-does-it-mean/" rel="nofollow noreferrer">gfs grib &amp; cloud details here</a> that suggest the .fxxx files like "gfs.t00z.pgrb2.0p25.f006" are </p>

<blockquote>
  <p>The cloud % field is probably output from some of the model physics (microphysics I guess) routines, which may not be setup to write out the fields after the very first model time step (the f00 files denote fields after the first model time step, not the actual analysis/initial condition).  We do in fact initialize the cloud condensate field, however</p>
</blockquote>

<p>My question is where are the TCDC cloud data numbers in the GFS grib models?  They don't seem to be in the analysis files (<a href="http://www.nco.ncep.noaa.gov/pmb/products/gfs/gfs.t00z.pgrb2.0p25.anl.shtml" rel="nofollow noreferrer">gfs.t00z.pgrb2.0p25.anl</a>) or the FH000 file.</p>

<p>Note:  I'm using grib_api tools to read these fields (grib_ls and grib_get).  I've used them successfully for currents and winds, but I can't seem to find the right GFS data for TCDC cloud cover.</p>

<hr>

<p>EDIT:  I've been testing the full files from <a href="http://nomads.ncep.noaa.gov/pub/data/nccf/com/gfs/prod/" rel="nofollow noreferrer">http://nomads.ncep.noaa.gov/pub/data/nccf/com/gfs/prod/</a></p>

<p>the gfs.t12z.pgrb2.0p25.anl file didn't contain cloud data, so I tried one of the .fxxx files (gfs.t12z.pgrb2.1p00.f384).  There appeared to be fields set, but they were at initial values according to grib_ls tool.  Here's a snippet:</p>

<blockquote>
<pre><code>[3036] =&gt; 260130      Total ozone  9999
[3037] =&gt; 228164      Total Cloud Cover  9999
[3038] =&gt; 228164      Total Cloud Cover  9999
[3039] =&gt; 228164      Total Cloud Cover  9999
[3040] =&gt; 228164      Total Cloud Cover  9999
[3041] =&gt; 54          Pressure    9999
[3042] =&gt; 54          Pressure    1
[3043] =&gt; 54          Pressure    9999
[3044] =&gt; 54          Pressure    1
[3045] =&gt; 54          Pressure    9999
[3046] =&gt; 54          Pressure    1
[3047] =&gt; 54          Pressure    9999
[3048] =&gt; 54          Pressure    1
[3049] =&gt; 130         Temperature  1
[3050] =&gt; 130         Temperature  9999
[3051] =&gt; 130         Temperature  1
[3052] =&gt; 228164      Total Cloud Cover  1
[3053] =&gt; 228164      Total Cloud Cover  1
</code></pre>
</blockquote>

<p>I'm using a little older version of grib_api on my server: 1.10.0</p>

<p>I get a little different response with grib_api 1.14.4:</p>

<blockquote>
  <p>3054        Precipitable water  34.4<br>
  260102      Cloud water  0<br>
  157         Relative humidity  39<br>
  260130      Total ozone  283.1<br>
  228164      Total Cloud Cover  4<br>
  228164      Total Cloud Cover  0<br>
  228164      Total Cloud Cover  5<br>
  228164      Total Cloud Cover  9<br>
  54          Pressure    9999<br>
  54          Pressure    90670.4<br>
  54          Pressure    9999<br>
  54          Pressure    13200.4<br>
  54          Pressure    9999<br>
  54          Pressure    88060<br>
  54          Pressure    9999<br>
  54          Pressure    11470.4<br>
  130         Temperature  288.9<br>
  130         Temperature  9999<br>
  130         Temperature  198.2<br>
  228164      Total Cloud Cover  0<br>
  228164      Total Cloud Cover  2</p>
</blockquote>

<p>But it still seems a bit odd for the results.  Lots of 9999's and whole percentages like 0 or 2.</p>

<hr>

<p>Edit 2:  It appears that computing the cloud cover has to be done from the GFS layer data however it appears how it is done is unclear based on an old message from 2007:  <a href="http://www.weather-watch.com/smf/index.php/topic,20158.msg216087.html#msg216087" rel="nofollow noreferrer">http://www.weather-watch.com/smf/index.php/topic,20158.msg216087.html#msg216087</a></p>

CC BY-SA 3.0
2017-04-10T18:36:22.823Z
Are you getting the GFS files from NCEP or NCDC?
BarocliniCplusplus
CC BY-SA 3.0
2017-04-10T23:44:58.947Z
@BarocliniCplusplus From NCEP because they dynamically resize the 0.25 degree gribs to something smaller.  I not sure where the 0.25 deg NCDC version is https://www.ncdc.noaa.gov/data-access/model-data/model-datasets/global-forcast-system-gfs  Why do you ask?
user6972
CC BY-SA 3.0
2017-04-11T00:27:01.923Z
Because I know that the NCDC files have cloud cover, with the exception of hour 0.I just checked the fields from NCEP. They do have them, try using wgrib2.
BarocliniCplusplus
CC BY-SA 3.0
2017-04-11T00:52:40.177Z
Good to know.  Can you help point me to the 0.25 deg GFS gribs you're using?  Via ERDDAP api they only have sst, and winds.
user6972
CC BY-SA 3.0
2017-04-11T01:01:54.657Z
http://nomads.ncep.noaa.gov/pub/data/nccf/com/gfs/prod/
BarocliniCplusplus
CC BY-SA 3.0
2017-04-11T10:13:43.310Z
NB: NCDC is now merged into NCEI.
gerrit
CC BY-SA 3.0
2017-04-11T17:12:54.003Z
@BarocliniCplusplus I tried the "gfs.t12z.pgrb2.0p25.anl" from the FTP site but there were no fields for cloud data - specifically TCDC.
user6972
CC BY-SA 3.0
2017-04-11T18:34:24.223Z
Try not using the analysis.
BarocliniCplusplus
CC BY-SA 3.0
2017-04-11T21:07:14.460Z
@BarocliniCplusplus I've made an edit so you can the results.
user6972
<meteorology><measurements><clouds><gfs>
How to find Cloud cover data in GFS grib models
user6972
# How to find Cloud cover data in GFS grib models

(Asked by: username_0 on 2017-04-10)

I've been looking for the cloud cover estimates provided in the NOAA GFS models. [This page](http://www.nco.ncep.noaa.gov/pmb/products/gfs/) discusses all their weather products and one of the few I find that includes cloud cover data "Total Cloud Cover [%]" (variable TCDC) is gfs.t00z.pgrb2.0p25.f006 which you can find in [its product description](http://www.nco.ncep.noaa.gov/pmb/products/gfs/gfs.t00z.pgrb2.0p25.f006.shtml).

Upon extracting that file using the [grib filter tool generated URL](http://nomads.ncep.noaa.gov/cgi-bin/filter_gfs_0p25.pl?file=gfs.t12z.pgrb2.0p25.f006&lev_10_m_above_ground=on&lev_boundary_layer_cloud_layer=on&lev_convective_cloud_bottom_level=on&lev_convective_cloud_layer=on&lev_convective_cloud_top_level=on&lev_entire_atmosphere=on&lev_entire_atmosphere_%5C%28considered_as_a_single_layer%5C%29=on&lev_high_cloud_bottom_level=on&lev_high_cloud_layer=on&lev_high_cloud_top_level=on&lev_surface=on&all_var=on&leftlon=-160&rightlon=150&toplat=20&bottomlat=30&dir=%2Fgfs.2017041012) selecting for the proper layers and variables, this data appears to be just initial values (1 for cloud cover) and 9999 for many of the other values. I read a lot of [gfs grib & cloud details here](https://www.americanwx.com/bb/topic/38773-gfs-cloud-cover-what-does-it-mean/) that suggest the .fxxx files like "gfs.t00z.pgrb2.0p25.f006" are

> The cloud % field is probably output from some of the model physics (microphysics I guess) routines, which may not be setup to write out the fields after the very first model time step (the f00 files denote fields after the first model time step, not the actual analysis/initial condition). We do in fact initialize the cloud condensate field, however

My question is where are the TCDC cloud data numbers in the GFS grib models? They don't seem to be in the analysis files ([gfs.t00z.pgrb2.0p25.anl](http://www.nco.ncep.noaa.gov/pmb/products/gfs/gfs.t00z.pgrb2.0p25.anl.shtml)) or the FH000 file.

Note: I'm using grib\_api tools to read these fields (grib\_ls and grib\_get). I've used them successfully for currents and winds, but I can't seem to find the right GFS data for TCDC cloud cover.

---

EDIT: I've been testing the full files from <http://nomads.ncep.noaa.gov/pub/data/nccf/com/gfs/prod/>

the gfs.t12z.pgrb2.0p25.anl file didn't contain cloud data, so I tried one of the .fxxx files (gfs.t12z.pgrb2.1p00.f384). There appeared to be fields set, but they were at initial values according to grib\_ls tool. Here's a snippet:

> ```
> [3036] => 260130      Total ozone  9999
> [3037] => 228164      Total Cloud Cover  9999
> [3038] => 228164      Total Cloud Cover  9999
> [3039] => 228164      Total Cloud Cover  9999
> [3040] => 228164      Total Cloud Cover  9999
> [3041] => 54          Pressure    9999
> [3042] => 54          Pressure    1
> [3043] => 54          Pressure    9999
> [3044] => 54          Pressure    1
> [3045] => 54          Pressure    9999
> [3046] => 54          Pressure    1
> [3047] => 54          Pressure    9999
> [3048] => 54          Pressure    1
> [3049] => 130         Temperature  1
> [3050] => 130         Temperature  9999
> [3051] => 130         Temperature  1
> [3052] => 228164      Total Cloud Cover  1
> [3053] => 228164      Total Cloud Cover  1
>
> ```

I'm using a little older version of grib\_api on my server: 1.10.0

I get a little different response with grib\_api 1.14.4:

> 3054 Precipitable water 34.4  
> 260102 Cloud water 0  
> 157 Relative humidity 39  
> 260130 Total ozone 283.1  
> 228164 Total Cloud Cover 4  
> 228164 Total Cloud Cover 0  
> 228164 Total Cloud Cover 5  
> 228164 Total Cloud Cover 9  
> 54 Pressure 9999  
> 54 Pressure 90670.4  
> 54 Pressure 9999  
> 54 Pressure 13200.4  
> 54 Pressure 9999  
> 54 Pressure 88060  
> 54 Pressure 9999  
> 54 Pressure 11470.4  
> 130 Temperature 288.9  
> 130 Temperature 9999  
> 130 Temperature 198.2  
> 228164 Total Cloud Cover 0  
> 228164 Total Cloud Cover 2

But it still seems a bit odd for the results. Lots of 9999's and whole percentages like 0 or 2.

---

Edit 2: It appears that computing the cloud cover has to be done from the GFS layer data however it appears how it is done is unclear based on an old message from 2007: <http://www.weather-watch.com/smf/index.php/topic,20158.msg216087.html#msg216087>

**Tags:** meteorology, measurements, clouds, gfs

> **Comments:**
> **username_1**: Are you getting the GFS files from NCEP or NCDC?  
> **username_0**: @username_1 From NCEP because they dynamically resize the 0.25 degree gribs to something smaller.  I not sure where the 0.25 deg NCDC version is https://www.ncdc.noaa.gov/data-access/model-data/model-datasets/global-forcast-system-gfs  Why do you ask?  
> **username_1**: Because I know that the NCDC files have cloud cover, with the exception of hour 0.I just checked the fields from NCEP. They do have them, try using wgrib2.  
> **username_0**: Good to know.  Can you help point me to the 0.25 deg GFS gribs you're using?  Via ERDDAP api they only have sst, and winds.  
> **username_1**: http://nomads.ncep.noaa.gov/pub/data/nccf/com/gfs/prod/  
> **username_2**: NB: NCDC is now merged into NCEI.  
> **username_0**: @username_1 I tried the "gfs.t12z.pgrb2.0p25.anl" from the FTP site but there were no fields for cloud data - specifically TCDC.  
> **username_1**: Try not using the analysis.  
> **username_0**: @username_1 I've made an edit so you can the results.  

---

## 1 answers

### Answer by username_3 on 2017-08-14. Score: 1

This is not an explicit answer but might give you an idea. The US National Weather Service forecasters use a tool called GFE to create gridded forecasts, largely starting from raw model data. For most models, even those that have TCDC as an output field, the model sky cover grids are computed by GFE using RH at various levels. For a few of the high resolution mesoscale models, the sky grids use the model cloud cover field and the resulting values are either 0% or 100%. Thus a blend of these differing sources can be used to get a more nuanced output forecast.


---

