Versions Compared

Key

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


Info

This article relates to GRIB edition 2

The purpose of the Product Definition section is to describe the nature of the data contained in the Data section.

...


DeterministicEnsemble
Instantaneous01
Interval-based811

So for a product definition, we have two dimensions:

...

For examples of instantaneous parameters see: Mean sea level pressure and 2 metre temperature. For an interval-based parameter see: Maximum temperature at 2 metres in the last 24 hours.

To find out more about instantaneous and interval-based parameters, see ERA5 terminology: analysis and forecast; time and steps; instantaneous and accumulated and mean rates and min/max parameters.

Now there are other kinds of product groups which follow this pattern. Let's look at the atmospheric chemical constituents:

ChemicalDeterministicEnsemble
Instantaneous4041
Interval-based4243

For the meaning of the various Product Definition Template numbers see httphttps://appscodes.ecmwf.int/codes/grib/format/grib2/templates/4/.
You can also click on each entry to see the keys (contents) of the particular template e.g. for template 11, see https://appscodes.ecmwf.int/codes/grib/format/grib2/templates/4/11/.

To view these templates in ecCodes, go to the grib2 definitions directory (this can be found via the "codes_info" command) and look for files named: template.4.*.def
Some of these will include other template files. Let's look at one example of the template numbers 8 and 11:

Code Block
languagebash
% codes_info
  ecCodes Version 2.17.0
  Default definition files path is used: /usr/local/apps/eccodes/2.17.0/GNU/7.3.0/share/eccodes/definitions
...
# Go to the definitions directory for GRIB edition 2
% cd /usr/local/apps/eccodes/2.17.0/GNU/7.3.0/share/eccodes/definitions/grib2
% cat template.4.11.def
include "grib2/template.4.parameter.def"
include "grib2/template.4.horizontal.def"
include "grib2/template.4.eps.def"
include "grib2/template.4.statistical.def"

% cat template.4.8.def
include "grib2/template.4.parameter.def"
include "grib2/template.4.horizontal.def"
include "grib2/template.4.statistical.def"

# We see that the only difference is the inclusion of the ensemble file (template.4.eps.def)
# Now look in this file to see what keys are there
% more template.4.eps.def
...
unsigned[1] perturbationNumber  : dump;
...
# This tells us there is a one-octet key called perturbationNumber

It is also instructive to examine the template number 0 (deterministic and instantaneous):

Code Block
languagebash
% cat template.4.0.def
include "grib2/template.4.parameter.def";
include "grib2/template.4.point_in_time.def";
include "grib2/template.4.horizontal.def";

Here you can see the ensemble part is absent and instead of template.4.statistical.def we have template.4.point_in_time.def (since instantaneous means a given point in time)

Content by Label
showLabelsfalse
max5
spacesUDOC
showSpacefalse
sortmodified
reversetrue
typepage
cqllabel in ("eccodes-faqs","grib","kb-information-article") and label = "template" and label = "grib_set" and type = "page" and space = "UDOC"
labelsgrib kb-information-article eccodes-faqs

...