Versions Compared

Key

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

...

Excerpt
hiddentrue

Some older GRIB decoders used to work on a number-based table to retrieve all the information from the message.  This approach forced the user either to learn a code table or to use the documentation intensively. With ecCodes a key name based access is provided so that all the information contained in the GRIB message is retrieved through alphanumeric names.

GRIB Keys

Some older GRIB decoders used to work on a number-based table to retrieve all the information from the message.  This approach forced the user either to learn a code table or to use the documentation intensively. With ecCodes a key name based access is provided so that all the information contained in the GRIB message is retrieved through alphanumeric names.

...

Some short names (aliases) are also provided, e.g. "centre" is an alias for identificationOfOriginatingGeneratingCentre. The names are always easily related to the meaning of their value.
A different set of keys is available for each message because the content is different. It is easy to find the keys available in a message by using the GRIB tools (grib_dump) or the library (keys_iterator.c).

Coded and Computed keys

There are two different types of keys: coded and computed.
The coded keys are directly linked to octets of the GRIB message and their value is obtained by only decoding the octets. A list of all the coded keys in a message can be obtained using grib_dump without any option (use the -a option to obtain also their aliases).
The computed keys are obtained by combining other keys (coded or computed) and when their value is set all the related keys are set in a cascade process.
These keys provide a synthesis of the information contained in the GRIB message and are a safe way to set complex attributes such as the type of grid or the type of packing. They are also helpful in the interpretation of some octets such as the scanning mode whose bits are related to the way of scanning the grid. In this case the computed keys:

...

For the computed keys we provide the following preliminary documentation that will be extended soon.

MARS keywords.

All MARS keywords are available. Some examples are:

  • date
  • param
  • levtype
  • levelist
  • step
  • stream

Angles in degrees.

All the angle variables are provided in two versions, a native one with the units coded into the GRIB file and an edition independent one in degrees. It is always better to work with the "in degrees" version that is always provided through the key which has the same name of the native version with the suffix InDegrees: 

...

  • For both editions:
    • regular_ll
    • reduced_ll
    • mercator
    • lambert
    • polar_stereographic
    • UTM
    • simple_polyconic
    • albers
    • miller
    • rotated_ll
    • stretched_ll
    • stretched_rotated_ll
    • regular_gg
    • rotated_gg
    • stretched_gg
    • stretched_rotated_gg
    • reduced_gg
    • sh
    • rotated_sh
    • stretched_sh
    • stretched_rotated_sh
    • space_view
  • For edition 2 only:
    • triangular_grid
    • equatorial_azimuthal_equidistant
    • azimuth_range
    • cross_section
    • Hovmoller
    • time_section

packingType

The algorithm used to pack data into the GRIB message.

  • For GRIB edition 1:
    • grid_simple
    • grid_simple_matrix
    • grid_simple_matrix_bitmap
    • grid_second_order
    • spectral_complex
    • spectral_simple
  • For GRIB edition 2:
    • grid_simple
    • grid_simple_matrix
    • grid_simple_matrix_bitmap
    • grid_complex
    • grid_complex_spatial_differencing
    • grid_jpeg
    • grid_ccsds
    • grid_second_order
    • grid_png
    • grid_ieee
    • spectral_simple
    • spectral_complex
    • grid_simple_log_preprocessing

setDecimalPrecision

is a function key used to set the decimal precision see the grib_set page for usage.

getNumberOfValues

The number of values coded into the data section of the GRIB message


Content by Label
showLabelsfalse
max5
spaces~usa
showSpacefalse
sortmodified
reversetrue
typepage
cqllabel = "kb-how-to-article" and type = "page" and space = "UDOC"
labelskb-how-to-article

...