Versions Compared

Key

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

...

Excerpt
hiddentrue

Local definitions are required when one needs to store information which is not part of the standard GRIB header. This would typically be a mars key (like class, stream, type and version number or experiment identifier, expver) or information that the data producer wants to have in each GRIB for conveniencemight be local parameters or local definitions.


Warning

Please note:
According to the WMO, the use of local tables in messages intended for non-local or international exchange is strongly discouraged.

First of all ask the data provider for any local tables/definitions which they used in their GRIB messages.

Step-by-step guide

Local tables for parameters

...

Code Block
languagebash
/usr/local/share/eccodes/definitions/grib[edition]/localConcepts/[centre:s]

So for example the GRIB edition 2 local parameters for DWD (centre=edzw) are defined in definitions/grib2/localConcepts/edzw and GRIB edition 1 local parameters for SMHI (centre=eswi) are in definitions/grib1/localConcepts/eswi.

The following are examples in an example of the contents for the above files in order to handle ECMWF parameter Geopotential in GRIB edition 1:

Code Block
languagebash
title/usr/local/share/eccodes/definitions/grib1/localConcepts/ecmf/name.def
#Geopotential
'Geopotential' = {
         table2Version = 128 ;
         indicatorOfParameter = 129 ;
        }


Code Block
languagebash
title/usr/local/share/eccodes/definitions/grib1/localConcepts/ecmf/paramId.def
 #Geopotential#Geopotential
'129' = {
         table2Version = 128 ;
         indicatorOfParameter = 129 ;
        }


Code Block
languagebash
title/usr/local/share/eccodes/definitions/grib1/localConcepts/ecmf/shortName.def
#Geopotential
'z' = {
         table2Version = 128 ;
         indicatorOfParameter = 129 ;
        } 


Code Block
languagebash
title/usr/local/share/eccodes/definitions/grib1/localConcepts/ecmf/units.def
#Geopotential
'm**2 s**-2' = {
         table2Version = 128 ;
         indicatorOfParameter = 129 ;
        }


In And for GRIB edition 2, the contents of the same files for parameter Geopotential Potential temperature gradient are:

Code Block
languagebash
title/usr/local/share/eccodes/definitions/grib2/localConcepts/ecmf/name.def
#Geopotential#Potential temperature gradient
'GeopotentialPotential temperature gradient' = {
         discipline = 0192 ;
         parameterCategory = 3129 ;
         parameterNumber = 43 ;
        }


Code Block
languagebash
title/usr/local/share/eccodes/definitions/grib2/localConcepts/ecmf/paramId.def
 #Geopotential#Potential temperature gradient
'129129003' = {
         discipline = 0192 ;
         parameterCategory = 3129 ;
         parameterNumber = 43 ;
        }


Code Block
languagebash
title/usr/local/share/eccodes/definitions/grib2/localConcepts/ecmf/shortName.def
#Geopotential#Potential temperature gradient
'zptgrd' = {
         discipline = 0192 ;
         parameterCategory = 3129 ;
         parameterNumber = 43 ;
        }


Code Block
languagebash
title/usr/local/share/eccodes/definitions/grib2/localConcepts/ecmf/units.def
#Geopotential
'm**2 s**-2#Potential temperature gradient
'K' = {
         discipline = 0192 ;
         parameterCategory = 3129 ;
         parameterNumber = 43 ;
        }


Local Definitions (Local Use section)

...

Also please study the slides here:  Training course presentation.
And the How-To Article GRIB: Converting edition 1 to 2 (The "Local configuration" section)

...