Description
For the projects TIGGE, S2S and UERRA the exact data format, WMO compliant GRIB2, is required to allow easy data processing and intercomparison. Read in Data encoding checking tools more information about tigge_check and grib_check.py tools. Apart from encoding verification, theses tools can do also some basic quality control by checking the allowed value ranges, if they were defined, for each parameter.
Please be aware that some previously allowed valid ranges can become obsolete at some point e.g. due to model upgrade to higher resolution meaning in general different values of some parameters. Because of that a continuous set up updates are needed so it is important to use the latest versions of the tools. Also for some parameters the allowed ranges must not be defined due to various reasons. In some cases the allowed limits for different data sets or data origins might also exist because of known special features or deficiencies of some related model's outputs.
Examples of tigge_check usage
Checking TIGGE data
module load eccodes |
Examples of grib_check.py usage
grib_check options
usage: grib_check.py [-h] [-v VERBOSITY] [-w] [-f] [-his] [-l [LISTING]] [inp_file [inp_file ...]] positional arguments: inp_file enter input file name(s) optional arguments: -h, --help show this help message and exit -v VERBOSITY, --verbosity VERBOSITY increase output verbosity [0-2] -w, --warning warnings are treated as errors.. -f, --fail force abort for undefined parameters.. -his, --history add value ranges history, if exists, to listing.. -l [LISTING], --listing [LISTING] list defined parameters (search if argument provided!)
Checking LC-WVF data
export BIN=/home/ma/emos/def/s2s/s2s_prod/bin |
Checking parameter set up
List all defined limits
python $BIN/grib_check.py -l |
See allowed limits for parameters with paramId containing 141
python $BIN/grib_check.py -l 141 |
See allowed limits for parameters with paramId containing 141 including past set up history
python $BIN/grib_check.py -l 141 -his |
Installating grib_check.py
The prerequisite is to have eccodes python 3 modules available in the system. The tool itself consist of two python scripts attached to this page:
The set up file contains mostly a python dictionary with the allowed ranges for parameters. These ranges can be easily tuned and can be specific for specific selection of metadata if needed (e.g. MARS class, level type etc).
Please be aware that this tool is not part of any package yet as is still under development. For example some code refactoring or performance optimisation might be needed.