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 359.75), 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)

  • 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

Specific details which should be encoded in GRIB2 sections 1 and 4:

Section 1
Octets Key nameValueDescriptionComments
6-7centre323*3WMO Centre's codenewly proposed WMO code
8-9subCentreXWMO Sub-Centre's codesee subCentre codes below
10tablesVersion36The latest WMO table*1
11localTablesVersion0Local tables not used
20productionStatusOfProcessedData16

Weather Prediction Model Intercomparison Project*2

use during production phase



17Weather Prediction Model Intercomparison Project test *2use during testing phase
21typeOfProcessedData0Analysis products


1Forecast 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)

*3 New code for the WPMIP  to be approved by WMO in Q4 2025

Section 4
Octets
Value 
8-9productDefinitionTemplateNumber

0/8*1

13backgroundProcess

X*2

14generatingProcessIdentifier

X*2

*1 statistically processed (typeOfStatisticalProcessing is set up)

*2 centre/model version dependent (see table with Centre codes below)

Section 5
Octets
ValueDescription
10-11dataRepresentationTemplateNumber

42

[Grid point data - CCSDS recommended lossless compression (grib2/tables/29/5.0.table) ]


Centre codes and model versions

WMO Centre key for WPMIP together with subCentre defined for each organization is used to identified each data provider

  • it was agreed that a new WMO centre code for WPMIP will be needed 
    • the current deadline for WMO proposals is 3rd October 2025. Proposals made at this meeting will be approved (and new GRIB2/BUFR4 codes available) in May 2026. 
    • it is assumed that centre=323 which is currently free, could be assigned for the project and thus could be used in advance
      • if it changes,  we would have to update the centre code accordingly
        • such changes would be handled by WP-MIP project leads (in the already existing data)

Model name (e.g. ECMWF-AIFS-v1_oic) is identified in ecCodes for given centre, model and model version from following keys:

  • centre=323 (WPMIP)
  • subCentre (unique for each provider)
  • backgroundProcess (unique for each model)
  • generatingProcessIdentifier  (unique for each model version)

For example model=ECMWF-AIFS-v1_oic would be encoded using:

  • centre=323
  • subCentre=98
  • backgroundProcess=1
  • generatingProcessIdentifier=1

Initial conditions

  • own initial conditions (OIC)
  • same initial conditions (SIC)


WMO centre=323 (expected code for WPMIP project in next WMO tables release)

OrganisationsubCentrebackground Processgenerating Process Identifier  modelNamemodelVersionmodelremark
BoM1141AccessGv1_oicBoM-AccessG-v1_oic


142AccessGv1_sicBoM-AccessG-v1_sic


51AIFS_init_AccessGv1_oicBoM-AIFS_init_AccessG-v1_sicAIFS Initialized with Access-G


52AIFS_init_AccessGv1_sicBoM- AIFS_init_AccessG-v1_sic
CMA38251Fengshunv1_oicCMA-Fengshun-v1_oic


252Fengshunv1_sicCMA-Fengshun-v1_sic
CPTEC4661GMv1_oicCPTEC-GM-v1_oic


62GMv1_sicCPTEC-GM-v1_sic
CSIR13771GMv1_oicCSIR-GM-v1_oic


72GMv1_sicCSIR-GM-v1_sic
DWD7831ICONv1_oicDWD-ICON-v1_oic


32ICONv1_sicDWD-ICON-v1_sic


41AICONv1_oicDWD-AICON-v1_oic


42AICONv1_sicDWD-AICON-v1_sic
ECCC53

8

1

GDPS

v1_oic

ECCC-GDPS-v1_oic




8

2

GDPS

v1_sic

ECCC-GDPS-v1_sic




9

1

GDPS_nudge

v1_oic

ECCC-GDPS_nudge-v1_oic

GDPS spectral nudging



9

2

GDPS_nudge

v1_sic

ECCC-GDPS_nudge-v1_sic




10

1

GEML

v1_oic

ECCC-GDPS_nudge-v1_oic

GEML experimantal



10

2

GEML

v1_sic

ECCC-GDPS_nudge-v1_sic


ECMWF98

255

1

IFS

v1_49r1

ECMWF-IFS-v1_49r1

operational IFS, version cy49r1



1

1

AIFS

v1_oic

ECMWF-AIFS-v1_oic

operational AIFS version 1.0



1

2

AIFS

v1_sic

ECMWF-AIFS-v1_sic

operational AIFS version 1.0



2

1

AIFS_nudge_IFS

v1_49r1

ECMWF-AIFS_nudge_IFS-v1_49r1

spectral nudging to IFS

GFDL138111SHiELDv1_oicGFDL-SHiELD-v1_oic


112SHiELDv1_sicGFDL-SHiELD-v1_sic
IMD28121IMDGFSv1_oicIMD-IMDGFS-v1_oic


122IMDGFSv1_sicIMD-IMDGFS-v1_sic


131NCUMv1_oicIMD-NCUM-v1_oic


132NCUMv1_sicIMD-NCUM-v1_sic
JMA34151GSMv1_oicJMA-GSM-v1_oicOperational Global Spectral Model (GSM)


161GraphCast_init_GSMv1_oicJMA-GraphCast_init_GSM-v1_oicGraphCast initialized and fine-tuned by GSM initial conditions
KIAPS/KMA4241KIMv1_oicKIAPS_KMA-KIM-v1_oic


242KIMv1_sicKIAPS_KMA-KIM-v1_sic
UKMO74171UMv1_oicUKMO-UM-v1_oic


172UMv1_sicUKMO-UM-v1_sic
METNO88181AIWPv1_oicMETNO-AIWP-v1_oic


182AIWPv1_sicMETNO-AIWP-v1_sic
NOAA9191GFSv1_oicNOAA-GFS-v1_oic


192GFSv1_sicNOAA-GFS-v1_sic


201MLGFSv1_oicNOAA-MLGFS-v1_oic


202MLGFSv1_sicNOAA-MLGFS-v1_sic
NRL139211NOGAPSv1_oicNRL-NOGAPS-v1_oic


212NOGAPSv1_sicNRL-NOGAPS-v1_sic
RAS4221GMv1_oicRAS-GM-v1_oic


222GMv1_sicRAS-GM-v1_sic
SAWS149231GMv1_oicSAWS-GM-v1_oic


232GMv1_sicSAWS-GM-v1_sic


Examples of  the required GRIB2 files

  • all examples are encoded as the output from ECMWF-IFS-v1_49r1 (test data, steps 0-240h) 
    • productionStatusOfProcessedData=17 (WPMIP test data)
    • centre=323 (WPMIP)
    • subCentre=98 (ECMWF)
    • backgroundProcess=255 (v1_49r1)
    • generatingProcessIdentifier=1 (IFS)
  • the data section is removed from the sample data to reduce the file size (thus only meta data matter here)

parameter

Sample file


GRIB metadata dump*1

mslp (analysis, surface, instantaneous parameter)an.sfc.mslp.grib2an.sfc.mslp.dump
total precipitation (forecast, accumulated parameter)fc.sfc.tp.grib2fc.sfc.tp.dump
temperature (forecast, pressure levels, instantaneous parameter)fc.pl.t.grib2fc.pl.t.dump

*1 using "grib_dump -O" command from ecCodes package