Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

There are no new or discontinued parameters in the disseminated data compared to 47r3.

Change to GRIB encoding

...

The GRIB model identifiers (generating process identification number) for cycle 48r1 will be changed as follows:

GRIB 1

Section 1

Octets

GRIB 2

Section 4

Octets

ecCodes key 

Model identifier

47r3

48r1

6

 14  

generatingProcessIdentifier

153

154

6

 14  

generatingProcessIdentifier

118

119


Info

By default all gridded 48r1 direct model output in GRIB 2 will be encoded using a CCSDS defined compression method (Data representation template 5.42) and any gridded GRIB2 data derived from such fields will inherit the CCSDS compression. This affects e.g. fields produced on Gaussian grids, like specific humidity on model levels, or surface fields like most-unstable CAPE. See below on how to override the default behaviour. 

ecCodes, our encoding/decoding package, uses libaec (Adaptive Entropy Coding Library) which implements a Golomb-Rice coding as defined in the CCSDS recommended standard 121.0-B-3.  

Users are strongly advised to test that their software applications and data processing chain can handle this new compression method. 

To handle CCSDS compressed fields from 48r1 with ecCodes, version 2.28.0 or newer is recommended. 

For a discussion of available GRIB packing methods and the use of compression algorithms see the Technical Memo Impact of GRIB compression on weather forecast data and data-handling applications


For gridded 48r1 model output in GRIB 2 format the packing type will change as follows: 

GRIB 2
Section 5
Octets

ecCodes key 

47r3


48r1

10-11

dataRepresentationTemplateNumber

(GRIB2 only)

0

(simple packing)

42

(CCSDS compression)


packingType

(edition independent) 

grid_simple

grid_ccsds

With the introduction of the new CCSDS packing type the default behaviour in dissemination and MARS (from 14 March) will be as follows: 

Input field 

Output packing type 
(with keyword grid=... )

GRIB1/GRIB2 griddedinherited from input
GRIB1/GRIB2 SHsimple

This implies that by default only fields derived from gridded GRIB2 fields from 48r1 onwards will use packing type CCSDS. The default behaviour can be overridden by specifying the packing explicitly, e.g.  

  grid    = 0.1/0.1, 
  packing = CCSDS 

will deliver fields with CCSDS packing for any GRIB2 input field. It will however not be possible to get CCSDS packed fields from GRIB1 input fields. Similarly, if CCSDS compression is not desired when retrieving gridded GRIB 2 fields from MARS or dissemination, simple packing can be requested with keyword 

  packing = simple 

Using ecCodes, already retrieved CCSDS compressed fields can be converted to other packing types. This is how to convert all messages in file ccsds.grib with grid_ccsds as their packingType, and only those, to use simple packing, i.e. what we used before 48r1: 

  grib_set -r -w packingType=grid_ccsds -s packingType=grid_simple ccsds.grib grid_simple.grib

To compare the statistics of the fields before and after the conversion, the following command could be used:

  grib_ls -n statistics ccsds.grib grid_simple.grib


Software

TBC


Availability of test data from the cycle 47r3 test suites

...