This example represents a daily average valid on 2 January 2012 of a field produced by a real-time forecast started on 20120101 00Z. In this example, where the field is produced 6-hourly, the daily average valid on 20120102 is the average of steps 24, 30, 36 and 42.
- In bold, the values are fixed. They are meant to be used by all partners
- In green, these are the values for the example.
Time ( daily average ) | ||||
---|---|---|---|---|
Start of forecast ( section 1 ) | ||||
Octets | values | meaning of values | Grib_api keys | |
12 | Significance of Reference Time | 1 | Start of forecast | |
13-14 | Year (four digits) | 2012 | year of start of forecast | dataDate=20120101 dataTime=0 |
15 | Month | 01 | month of start of forecast | |
16 | Day | 01 | day of start of forecast | |
17 | Hour | 00 | hour of start of forecast | |
Daily average ( section 4 e.g. template 4.11 ) | ||||
18 | Indicator of unit of time range | 1 | Hour | |
19-22 | Forecast time | 24 | Start of forecast + forecast time = start of average period | startStep=24 |
38-39 | year of end of overall time interval | 2012 |
End of average period |
endStep=-48 |
40 | month of end of overall time interval | 01 | ||
41 | day of end of overall time interval | 03 | ||
42 | hour of end of overall time interval | 00 | ||
45 | number of time ranges | 1 | Only one time statistics applied (average) | |
46-49 | total number of data values missing in statistical process | 0 | ||
50 | Statistical process used to calculate the processed field from the field at each time increment during the time range | 0 | Average | stepType=avg |
51 | Type of time increment between successive fields used in the statistical processing | 2 | Successive times processed have same start time of forecast, forecast time is incremented | |
52 | Indicator of unit of time for time range over which statistical processing is done | 11 | 6-hourly | indicatorOfUnitForTimeRange=11 |
53-56 | Length of the time range over which statistical processing is done, in units defined by the previous octet | 4 | Daily average | lengthOfTimeRange=4 |
57 | Indicator of unit of time for the increment between the successive fields used | 11 | 6-hourly | indicatorOfUnitForTimeIncrement=11 |
58-61 | Time increment between successive fields, in units defined by the previous octet | 1 | Time frequency used to compute the daily mean In the example, 1 means that 6-hourly outputs have been used to compute the average | timeIncrement=1 |
Examples of GRIB2 headers:
Daily averages can be coded in GRIB2
Code Block | ||
---|---|---|
| ||
====================== SECTION_4 ( length=61, padding=0 ) ======================
1-4 section4Length = 61
5 numberOfSection = 4
6-7 NV = 0
8-9 productDefinitionTemplateNumber = 11 [Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval (grib2/tables/11/4.0.table) ]
10 parameterCategory = 7 [Thermodynamic stability indices (grib2/tables/11/4.1.0.table) ]
11 parameterNumber = 6 [Convective available potential energy (J/kg) (grib2/tables/11/4.2.0.7.table) ]
12 typeOfGeneratingProcess = 0 [Analysis (grib2/tables/11/4.3.table) ]
13 backgroundProcess = 255
14 generatingProcessIdentifier = 143
15-16 hoursAfterDataCutoff = MISSING
17 minutesAfterDataCutoff = MISSING
18 indicatorOfUnitOfTimeRange = 1 [Hour (grib2/tables/11/4.4.table) ]
19-22 forecastTime = 0
23 typeOfFirstFixedSurface = 1 [Ground or water surface (grib2/tables/11/4.5.table) ]
24 scaleFactorOfFirstFixedSurface = MISSING
25-28 scaledValueOfFirstFixedSurface = MISSING
29 typeOfSecondFixedSurface = 8 [Nominal top of the atmosphere (grib2/tables/11/4.5.table) ]
30 scaleFactorOfSecondFixedSurface = MISSING
31-34 scaledValueOfSecondFixedSurface = MISSING
35 typeOfEnsembleForecast = 255 [Missing (grib2/tables/11/4.6.table) ]
36 perturbationNumber = 0
37 numberOfForecastsInEnsemble = 51
38-39 yearOfEndOfOverallTimeInterval = 2013
40 monthOfEndOfOverallTimeInterval = 9
41 dayOfEndOfOverallTimeInterval = 25
42 hourOfEndOfOverallTimeInterval = 0
43 minuteOfEndOfOverallTimeInterval = 0
44 secondOfEndOfOverallTimeInterval = 0
45 numberOfTimeRange = 1
46-49 numberOfMissingInStatisticalProcess = 0
50 typeOfStatisticalProcessing = 0 [Average (grib2/tables/11/4.10.table) ]
51 typeOfTimeIncrement = 2 [Successive times processed have same start time of forecast, forecast time is incremented (grib2/tables/11/4.11.table) ]
52 indicatorOfUnitForTimeRange = 11 [6 hours (grib2/tables/11/4.4.table) ]
53-56 lengthOfTimeRange = 4
57 indicatorOfUnitForTimeIncrement = 11 [6 hours (grib2/tables/11/4.4.table) ]
58-61 timeIncrement = 1 |
...