In progress. All details still to be updated..
General requirements
Encoding format
- WMO GRIB2 data format.
Missing values
- Bitmaps shall be used to indicate missing values.
Grid and resolution
- Each partner will provide their eps data on a 0.25/0.25 regular lat-lon grid (1440x721 grid points, including poles).
- First grid point is 90N 0E. The data will be archived first from west to east (OE to 358.5), and then from north to south (90N to 90S).
- The related GRIB 2 meta data called scanning mode should equal to 0.
Scanning mode 0
- i scans positively (west to east)
- i points are consecutive
- j scans negatively (north to south)
- i scans positively (west to east)
- The fields have to be provided on...
- Grids are defined in GRIB2 using an accuracy of 1/1000000 (one millionth) of a degree.
Data compression
CCSDS compression should be used
GRIB2 encoding
All data must be encoded following the required rules described below to achieve fully compliant WPMIP format from all centres.
Encoding software
ECMWF makes available a GRIB decoding library (ecCodes) for the benefit of the WMO community. ecCodes can be freely downloaded from here and the documentation can be found here.
For more general information about GRIB2 format please refer to WMO Manual on Codes .
Encoding details
General encoding (TBA)
Specific details which should be encoded in GRIB2 sections 1 and 4:
Section 1 | ||||
---|---|---|---|---|
Octets | Key name | Value | Description | Comments |
6-7 | centre | X | WMO Centre's code (table below) | |
8-9 | subCentre | 0 | WMO Sub-Centre's code if needed (table below) | only if needed |
10 | tablesVersion | 36 | The latest WMO table*1 | |
11 | localTablesVersion | 0 | Local tables not used | |
20 | productionStatusOfProcessedData | 16 | Weather Prediction Model Intercomparison Project *2 | use during production phase |
17 | Weather Prediction Model Intercomparison Project *2 | use during testing phase | ||
21 | typeOfProcessedData | 0 | Analysis products | |
1 | Forecast products |
*1 New WMO tables version 36 (containing also new WPMIP keys) will be officialy released by WMO later in 2025 (November)
*2 New codes for the WPMIP (part of GRIB 2 tables version 36) to be approved by WMO by August 2025 (Manual on Codes (WMO-No. 306), Volume I.2, GRIB code table 1.3)
Section 4 | |||
---|---|---|---|
Octets | Value (Example perturbed) | Value (Example control) | |
8-9 | productDefinitionTemplateNumber | 1/11*1 | 1/11*1 |
13 | backgroundProcess | 1 | 1 |
14 | generatingProcessIdentifier | X*2 | X*2 |
35 | typeOfEnsembleForecast | 255 (missing) | 255 (missing) |
36 | perturbationNumber | 7 | 0 |
37 | numberOfForecastsInEnsemble | 51 | 51 |
*1 statistically processed (typeOfStatisticalProcessing is set up)
*2 centre/model version dependent (see below)
Section 5 | |||
---|---|---|---|
Octets | Value | Description | |
10-11 | dataRepresentationTemplateNumber | 42 | [Grid point data - CCSDS recommended lossless compression (grib2/tables/29/5.0.table) ] |
WMO Centre codes and model versions
WMO code key is used to identified each organisation.
If it is necessary to distinguish among more organizations (e.g. from the same country) using the same WMO code, the Sub-Centre key should be also deifned.
Model version for given centre is derived from following keys:
- centre (unique for each provider)
- backgroundProcess=1
- generatingProcessIdentifier (unique for each centre key)
Organisation | Acronym | WMO Centre code | ecCodes Centre acronym*1 | model version | ecCodes model version acronym*1 | generatingProcessIdentifier value |
---|---|---|---|---|---|---|
China Meteorological Administration, China | CMA | babj | ||||
European Centre for Medium-Range Weather, UK | ECMWF | 98 | ecmf | 1 | v1 | 1 |
2 | v2 | 2 | ||||
Japan Meteorological Agency, Japan | JMA | 34 | rjtd | |||
National Centres for Environmental Prediction, USA | NCEP | 7 | kwbc | |||
National Aeronautics and Space Administration | NASA | nasa |
Remarks:
*1 in ECMWF's ecCodes package
Examples of the required GRIB2 files
parameter | Sample file | GRIB metadata dump*1 |
---|---|---|
*1 using "grib_dump -O" command from ecCodes package