GRIB section 1, the product definition section

KSEC1 must be initialised when encoding; it is filled in by GRIBEX when decoding.

An INTEGER array.

When section 1 contains data for ECMWF local use, KSEC1 must be dimensioned accordingly, see ECMWF local GRIB usage definitions.

Contents of KSEC1

ElementContentsecCodes keys
1Version number of code table 2.

paramId


2Identification of centre (see WMO code table 0), 98 for ECMWF.
centre
3Generating process identification number, allocated by the originating centre. (255 is used at ECMWF as an indicator for dummy surface pressure fields). See ECMWF model identifiers.
generatingProcessIdentifier
4Grid definition. NNN catalogue number of grid used by the originating centre (See Volume B of WMO publication No.9). 255 for a non-catalogued grid, in which case the grid description follows in KSEC2.
5Flag showing whether sections 2 and 3 are present (see WMO code table 1):
  0, Sections 2 and 3 are omitted.
 64, Section 2 is omitted, Section 3 is included.
128, Section 2 is included, Section 3 is omitted.
192, Sections 2 and 3 are included.

gridType

bitmapPresent

6Parameter indicator (see WMO code table 2).

shortName

paramId

7Type of level indicator (see WMO code table 3), or satellite identifier. Satellite usage is as defined by INPE/CPTEC and used by ECMWF pending final definition by WMO.
typeOfLevel
8Height, pressure, etc of level (see WMO code table 3). Single level or top of layer, or satellite spectral band. Satellite usage is as defined by INPE/CPTEC and used by ECMWF pending final definition by WMO.
level
9Height, pressure, etc of level (see WMO code table 3). Bottom of layer if element 7 indicates a layer.

typeOfLevel

10-14Reference time of data. Date and time of start of averaging or accumulation.
dataDate
10Year of century (YY).


dataDate
11Month (MM).
12Day (DD).
13Hour (HH).
dataTime
14Minute (MM).
15Time unit indicator (see WMO code table 4).
stepType = instant | avg | accum | max | min | diff | rms |
sd | cov | ratio

stepUnits = s (seconds) | m (minutes) | h (hours) | 3h | 6h | 12h | D (day) | M (month) | Y (year) | 10Y | 30Y | C (century)

default value for stepUnits is "h"

startStep, endStep

stepRange (= "endStep" | "startStep-endStep" )

step

16P1 - Time period (number of time units) 0 for analyses or initialised analyses.
17P2 - Time period (number of time units). Or time interval between successive analyses, initialised analyses or forecasts undergoing averaging or accumulation. Otherwise set to zero.
18Time range indicator (see WMO code table 5).
19Number of products included in an average, when the time range indicates an average or accumulation. Otherwise set to zero.
20Number of products missing from an average, when the time range indicates an average or accumulation. Otherwise set to zero.
21Century of reference time of data (eg 20 for 1997).
date/1000-1
22Sub-centre identifier.
subCentre
23Decimal scale factor.

decimalScaleFactor

decimalPrecision

24Flag field to indicate local use in Section 1:
0       No local use in section 1.
1 Local use in section 1.
setLocalDefinition
25-36Reserved for WMO reserved fields. Set to 0.
37ECMWF local GRIB use definition identifier. This number determines the contents of elements 38-nn. See ECMWF local GRIB usage definitions. Local definition numbers 192 to 255 inclusive will not be used for ECMWF local extensions. They are free for use by Member States.

class

type

stream

expver

...

Note:
For year 2000, KSEC1(21) = 20 and KSEC1(10) = 100
For year 2001, KSEC1(21) = 21 and KSEC1(10) = 1