Thank you for your help!
The value you have, time-tagged 03:00 (3h) and labeled as "0-3 hour ave" in GRIB is indeed the average of the forecasts from 0-3 hours ahead, time-tagged interval ending. Or could be understood as the average of what one would typically like to have as three one-hour averages labelled 01:00 (0-1 hour ahead average), 02:00 (1-2 hour ahead average) and 03:00 (2-3 hour ahead average), time-tagged interval ending.
This is as follows for each the different time steps found in GFS data:
To get back to hourly forecasts (or 3-hourly for 3-hourly datasets), you either need to do the math yourself or you can use the wgrib2
option -ncep_norm
. See https://www.cpc.ncep.noaa.gov/products/wesley/wgrib2/ncep_norm.html .
To convert back yourself, you need to use the previous average and substract it with proper weighting. Here is short instructions by Shrinivas Moorthi from this thread http://gradsusr.org/pipermail/gradsusr/2016-November/040397.html :
Let us denote the data from 6 hourly output as C1, C2, C3, C4, C5, C6. To get hourly mean, then for hour 1, the mean is C1, for hour 2, the mean is 2C2-C1 for hour 3, the mean is 3C3-2C2 for hour 4, the mean is 4C4-3C2 for hour 5, the mean is 5C5-4C4 and for hour 6, it is 6C6-5C5 This pattern repeats every six ours.
There also is an NCEP/NOAA paper on the model data, where this is explained somewhere deep down, but I couldn't find it right now. The two links above however give a bit of explanation/guidance as well.
And always a good idea to compare your results to the output of a tool doing the conversion automatically.